Розробка внутрішніх інструментів на Baserow (no-code база даних)
Baserow — платформа з відкритим кодом no-code база даних з інтерфейсом, подібним до Airtable. Команди використовують Baserow для ведення даних без знань SQL: CRM-таблиці, контент-плани, реєстри задач, бази поставщиків.
Чим Baserow відрізняється від Airtable
| Baserow | Airtable | |
|---|---|---|
| Self-hosted | Так | Ні |
| Open-source | MIT | Ні |
| API | REST + webhooks | REST |
| Ціна | Безплатно self-hosted | З $20/мес |
| Інтеграції | Через API/Zapier | Вбудовані |
Встановлення
# Найшвидший спосіб
docker run -v baserow_data:/baserow/data \
-p 80:80 -p 443:443 \
baserow/baserow:1.25.0
Структура даних
Baserow — це spreadsheet-подібний інтерфейс поверх PostgreSQL. Кожна "база" — це набір таблиць, кожна таблиця — набір рядків з типізованими колонками.
Типи полів: Text, Long Text, Number, Rating, Boolean, Date, URL, Email, Phone, File, Single Select, Multiple Select, Link to Table (foreign key), Formula, Lookup, Count, Rollup.
REST API
Baserow надає повноцінний REST API:
# Отримати рядки таблиці
curl -X GET \
"https://baserow.example.com/api/database/rows/table/TABLE_ID/?user_field_names=true" \
-H "Authorization: Token YOUR_API_TOKEN"
# Створити рядок
curl -X POST \
"https://baserow.example.com/api/database/rows/table/TABLE_ID/?user_field_names=true" \
-H "Authorization: Token YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"Name": "Іван Петров", "Status": "Новий", "Email": "[email protected]"}'
# Фільтрування
curl "https://baserow.example.com/api/database/rows/table/TABLE_ID/?filter__field_id__equal=active"
Webhooks
// Webhook при створенні рядка (для сповіщень)
{
"url": "https://your-api.com/webhook/baserow",
"events": ["rows.created", "rows.updated"],
"headers": [
{ "name": "X-Webhook-Token", "value": "secret-token" }
]
}
// Обробник webhook на вашому сервері
app.post('/webhook/baserow', (req, res) => {
const { event_type, row_id, values } = req.body;
if (event_type === 'rows.created') {
// Новий ліід — створити задачу в CRM
crmService.createLead({
name: values['Name'],
email: values['Email'],
source: 'Baserow'
});
}
res.sendStatus(200);
});
Типові use cases
- CRM для малого бізнесу — таблиця контактів, пов'язана з таблицею угод
- Контент-план — редакційний календар з полями: стаття, автор, статус, дата публікації
- Реєстр поставщиків — база даних з документами, контактами та історією замовлень
- Bug tracker — таблиця задач з фільтрами за спринтом, статусом, виконавцем
Терміни
Налаштування бази з 3–5 таблицями та зв'язками + інтеграція через API — 1–3 дні.







