Публічний API
Публічний API Blueputto для автентифікованого CRUD-доступу до записів робочого простору з версійованими ендпоінтами, API-ключами, пагінацією, фільтрами та діями робочого процесу.

Публічний API — це автентифікований інтеграційний рівень Blueputto. Він надає доступ до тих самих основних записів, з якими застосунок працює щодня, що дозволяє зовнішнім системам створювати, читати, оновлювати та видаляти операційні дані без запровадження другої моделі контенту поруч з UI.
Цей API працює в межах /v1 і розроблений для використання з API Keys на рівні організації. Саме тому команди використовують цю можливість, коли дані Blueputto потрібно передати на вебсайт, в автоматизацію, скрипт імпорту, внутрішню панель керування або іншу продуктову систему.
Одна версійована API для основних ресурсів робочого простору
Точка входу за адресою /v1 повертає компактне корисне навантаження для виявлення з версією API, форматом автентифікації, URL OpenAPI-документа та списком ресурсів, які наразі доступні.
У поточній реалізації публічна поверхня охоплює:
documents,
items,
collections,
folders,
categories,
statuses,
labels,
and document templates.
Більшість із цих ресурсів підтримують стандартний операційний шлях: list, get, create, update і delete. API також надає дії, специфічні для робочого процесу, там, де вони потрібні в UI, зокрема:
restore і permanent delete для documents та items,
duplicate для documents,
reorder для categories, statuses і labels,
and active-only filtering для document templates.
Саме це робить Публічний API чимось більшим, ніж просто експортний рівень лише для читання. Він тісно відповідає реальному життєвому циклу записів, який уже видно в самому Blueputto.

Автентифікація та форма відповіді залишаються передбачуваними
Публічний API приймає облікові дані організації в одній із двох стандартних форм:
x-api-key,
or Authorization: Bearer <key>.
Це дає командам гнучкість під час підключення Blueputto до різних середовищ виконання, шлюзів і стилів SDK. Сам ключ створюється всередині застосунку на сторінці налаштувань API Keys.
Форма відповіді також навмисно є послідовною. Відповіді з одним ресурсом повертаються всередині оболонки data. Ендпоінти списків повертають data разом із meta, яка містить деталі пагінації, такі як page, limit, total items, total pages, а також стан next або previous page.
У всьому поточному наборі ресурсів API також надає практичні фільтри, що відображають реальні робочі процеси UI, зокрема search, deletedOnly, folderId, withoutFolder і activeOnly.

Побудовано навколо тих самих операційних правил, що й застосунок
Корисність Публічного API Blueputto полягає не лише в тому, що записи доступні ззовні. Вона також у тому, що інтеграційна поверхня дотримується тих самих правил, які продукт уже застосовує в UI.
Наприклад, видалення document та item змодельовано як потік спочатку до кошика, а не як негайне знищення. Деякі операції з document можуть повертати відповідь про заблокований стан, коли запис наразі недоступний для редагування. Обмеження швидкості застосовується для кожного API-ключа, а поточне стандартне обмеження бекенда встановлено на рівні 5 req/s на ключ.
Це зберігає узгодженість API з реальною поведінкою застосунку. Зовнішні інтеграції працюють із фактичною моделлю ресурсів Blueputto, а не зі спрощеним побічним каналом, який поводиться інакше, ніж сам продукт.
