Public API

Документация API Flatgen

Подключайте CRM, сайты и внутренние системы к Flatgen: получайте шаблоны и фиды, запускайте генерацию КП и скачивайте готовые PDF, JPEG или ZIP.

Авторизация

API-токен создается в личном кабинете в блоке API. Секрет показывается один раз, поэтому его нужно сразу сохранить в вашей системе.

Заголовки

Authorization: Bearer fgp_xxx_yyy
X-Flatgen-Token: fgp_xxx_yyy

Как получить токен

  • Откройте кабинет Flatgen и выберите workspace.
  • В блоке API нажмите “Создать токен”.
  • Скопируйте секрет и передавайте его из вашего backend или CRM.
GET

Проверить токен

Возвращает workspace, к которому привязан токен.

Endpoint

/api/public/v1/me

Запрос

curl -H "Authorization: Bearer $FLATGEN_TOKEN" \
  https://flatgen.ru/api/public/v1/me

Ответ

{
  "id": "019dff4c-1b2c-7117-805f-a1132548734b",
  "name": "Рабочее пространство 1"
}
GET

Получить шаблоны

Список шаблонов workspace. Значение id используется как templateId при запуске генерации.

Endpoint

/api/public/v1/templates

Запрос

curl -H "Authorization: Bearer $FLATGEN_TOKEN" \
  https://flatgen.ru/api/public/v1/templates
GET

Получить фиды

Список подключенных источников данных. Значение id используется как feedSourceId.

Endpoint

/api/public/v1/feeds

Запрос

curl -H "Authorization: Bearer $FLATGEN_TOKEN" \
  https://flatgen.ru/api/public/v1/feeds
GET

Получить объекты фида

Возвращает объекты фида с внутренним id, внешним id и исходным payloadJson.

Endpoint

/api/public/v1/feeds/{feedSourceId}/items?take=100&search=1003

Запрос

curl -H "Authorization: Bearer $FLATGEN_TOKEN" \
  "https://flatgen.ru/api/public/v1/feeds/{feedSourceId}/items?take=100&search=1003"

Поля объекта

  • id: внутренний id объекта в Flatgen.
  • externalId: id объекта в исходном фиде.
  • title: читаемое название объекта.
  • payloadJson: сырой payload объекта из фида.
POST

Запустить генерацию

Создает задачу генерации. Объекты можно передавать по внутренним feedItemIds или по внешним feedExternalIds из исходного фида.

Endpoint

/api/public/v1/generation-jobs

Запрос

curl -X POST https://flatgen.ru/api/public/v1/generation-jobs \
  -H "Authorization: Bearer $FLATGEN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "templateId": "019dff90-5eae-7cb1-8677-5c3007be5b09",
    "feedSourceId": "019dff59-80eb-7a3d-b8e2-bd9c890cd53a",
    "outputKind": "Pdf",
    "feedExternalIds": ["49420"]
  }'

outputKind

  • Pdf: PDF для выбранного объекта.
  • Jpeg: JPEG для выбранного объекта.
  • Zip: ZIP-архив с PDF для выбранных объектов.

Ответ

{
  "id": "019dff90-5ec5-7108-a8d1-63204d41493e",
  "workspaceId": "019dff4c-1b2c-7117-805f-a1132548734b",
  "templateId": "019dff90-5eae-7cb1-8677-5c3007be5b09",
  "feedSourceId": "019dff59-80eb-7a3d-b8e2-bd9c890cd53a",
  "status": "Queued",
  "outputKind": "Pdf",
  "createdAt": "2026-05-06T23:17:00Z",
  "files": []
}
GET

Проверить статус

Проверяет задачу генерации. Когда статус Completed, в files появятся ссылки на скачивание.

Endpoint

/api/public/v1/generation-jobs/{jobId}

Запрос

curl -H "Authorization: Bearer $FLATGEN_TOKEN" \
  https://flatgen.ru/api/public/v1/generation-jobs/{jobId}

Статусы

  • Queued
  • Running
  • Completed
  • Failed

Файл в завершенной задаче

{
  "status": "Completed",
  "files": [
    {
      "id": "019dff90-6316-7b7b-861c-311db8f0e4fa",
      "kind": "Pdf",
      "fileName": "КП.pdf",
      "contentType": "application/pdf",
      "downloadUrl": "https://flatgen.ru/api/public/v1/generated-files/{fileId}/download"
    }
  ]
}
GET

Скачать файл

Скачивает готовый файл генерации. Токен должен принадлежать тому же workspace.

Endpoint

/api/public/v1/generated-files/{fileId}/download

Запрос

curl -L -o offer.pdf \
  -H "Authorization: Bearer $FLATGEN_TOKEN" \
  https://flatgen.ru/api/public/v1/generated-files/{fileId}/download

Ошибки

Ошибки валидации возвращаются в JSON. Если токен неверный, истек или отозван, API вернет 401 Unauthorized.

Пример

{
  "error": "invalid_template_or_feed",
  "detail": "TemplateId and FeedSourceId must belong to the token workspace."
}