◆ Sapport для разработчиков Справочник API Каталог ошибок OpenAPI
Разделы

Стратег

Методов в разделе: 6. Все методы

МетодПутьОписаниеОбластиСтатус
GET/strategist/reportsСписок отчётов стратегаstrategist:readДоступно
GET/strategist/reports/{id}Получить отчёт стратегаstrategist:readДоступно
GET/strategist/topicsОчередь темstrategist:readДоступно
GET/strategist/topics/{id}Получить темуstrategist:readДоступно
GET/strategist/actionsДействия стратега из ваших сессийstrategist:readДоступно
GET/strategist/actions/{id}Получить действие стратегаstrategist:readДоступно
GET /strategist/reports Доступно

#Список отчётов стратега

Шапки ежедневных и недельных отчётов, новые первыми; в каждой есть data_as_of — актуальность данных. Креативные прогоны не возвращаются.

Области
strategist:read
Предел частоты
чтение
Идемпотентность
не требуется
Успешный ответ
200 Страница отчётов.

Параметры

ПолеТипОписание
limitinteger
необязательное
Где: query. Размер страницы: от 1 до 100, по умолчанию 25.
cursorstring
необязательное
Где: query. Значение next_cursor из предыдущего ответа. Живёт 24 часа; при смене фильтров начинайте заново.
report_typestring
необязательное
Где: query. Вид отчёта.

Тело ответа

ПолеТипОписание
dataarray<StrategistReportSummary>
обязательное
next_cursorstring
обязательное, может быть null
Курсор следующей страницы; null — список закончился. Живёт 24 часа.

Примеры

Запрос
curl -X GET 'https://formula-cream.pro/api/public/v1/strategist/reports' \
  -H 'Authorization: Bearer '"$SAPPORT_API_KEY"
Ответ 200
{
  "data": [
    {
      "id": "EXAMPLE_ID",
      "report_date": "string",
      "report_type": "daily",
      "summary_text": "string",
      "actions_count": 0,
      "data_as_of": {},
      "delivered_at": null
    }
  ],
  "next_cursor": "EXAMPLE_CURSOR"
}
Пример ошибки
{
  "type": "https://formula-cream.pro/developers/errors#scope_missing",
  "title": "Scope is missing",
  "status": 403,
  "code": "scope_missing",
  "detail": "EXAMPLE",
  "request_id": "req_EXAMPLE"
}

Примеры иллюстративны: ключ в них условный (EXAMPLE), значения полей выдуманы.

Возможные ошибки

invalid_api_key wrong_cell integration_inactive tenant_inactive ip_not_allowed feature_not_in_plan rate_limited wallet_suspended service_unavailable internal_error scope_missing validation_failed

GET /strategist/reports/{id} Доступно

#Получить отчёт стратега

Отчёт целиком: выводы, действия с обоснованием и доказательства. Названия конкурентов скрыты; снимок аналитики, модель и стоимость не отдаются.

Области
strategist:read
Предел частоты
чтение
Идемпотентность
не требуется
Успешный ответ
200 Отчёт.

Параметры

ПолеТипОписание
idstring
обязательное
Где: path. Идентификатор отчёта.

Тело ответа

ПолеТипОписание
idstring
обязательное
report_datestring
обязательное
report_typestring
обязательное

Значения: daily weekly
summary_textstring
обязательное
data_as_ofobject
обязательное
Актуальность данных: по каждому показателю (ключ) дата последних данных YYYY-MM-DD; ключ snapshot — дата снимка аналитики, на котором построен отчёт. Пусто, если снимка нет.
highlightsarray<object>
обязательное
Что идёт хорошо.
concernsarray<object>
обязательное
Что беспокоит.
actionsarray<StrategistReportAction>
обязательное
evidenceStrategistEvidence
обязательное

Примеры

Запрос
curl -X GET 'https://formula-cream.pro/api/public/v1/strategist/reports/EXAMPLE_ID' \
  -H 'Authorization: Bearer '"$SAPPORT_API_KEY"
Ответ 200
{
  "id": "EXAMPLE_ID",
  "report_date": "string",
  "report_type": "daily",
  "summary_text": "string",
  "data_as_of": {},
  "highlights": [
    {}
  ],
  "concerns": [
    {}
  ],
  "actions": [
    {
      "title": "string",
      "priority": "string",
      "rationale": "string",
      "target_ref": null,
      "expected_effect": null,
      "check_after_days": null,
      "basis": "observed_pattern"
    }
  ],
  "evidence": {
    "actions": [
      {
        "index": null,
        "status": null,
        "basis": null,
        "items": null
      }
    ],
    "validation": {
      "refs_valid": false,
      "excerpts_valid": false,
      "relevance_checked": false,
      "limitations": [
        null
      ]
    }
  }
}
Пример ошибки
{
  "type": "https://formula-cream.pro/developers/errors#scope_missing",
  "title": "Scope is missing",
  "status": 403,
  "code": "scope_missing",
  "detail": "EXAMPLE",
  "request_id": "req_EXAMPLE"
}

Примеры иллюстративны: ключ в них условный (EXAMPLE), значения полей выдуманы.

Возможные ошибки

invalid_api_key wrong_cell integration_inactive tenant_inactive ip_not_allowed feature_not_in_plan rate_limited wallet_suspended service_unavailable internal_error scope_missing not_found

GET /strategist/topics Доступно

#Очередь тем

Темы статей, предложенные стратегом, по убыванию оценки тренда. include_deleted=true даёт 422 not_supported: удалённые темы не хранятся.

Области
strategist:read
Предел частоты
чтение
Идемпотентность
не требуется
Успешный ответ
200 Страница тем.

Параметры

ПолеТипОписание
limitinteger
необязательное
Где: query. Размер страницы: от 1 до 100, по умолчанию 25.
cursorstring
необязательное
Где: query. Значение next_cursor из предыдущего ответа. Живёт 24 часа; при смене фильтров начинайте заново.
statusstring
необязательное
Где: query. Состояние темы.
include_deletedboolean
необязательное
Где: query. true — вернуть также «надгробия» удалённых записей {id, deleted_at} (хранятся 30 суток).

Тело ответа

ПолеТипОписание
dataarray<StrategistTopic>
обязательное
next_cursorstring
обязательное, может быть null
Курсор следующей страницы; null — список закончился. Живёт 24 часа.

Примеры

Запрос
curl -X GET 'https://formula-cream.pro/api/public/v1/strategist/topics' \
  -H 'Authorization: Bearer '"$SAPPORT_API_KEY"
Ответ 200
{
  "data": [
    {
      "id": "EXAMPLE_ID",
      "title": null,
      "rationale": null,
      "trend_score": null,
      "source": "string",
      "status": "proposed",
      "cluster_id": null,
      "generated_article_id": null,
      "proposed_at": null,
      "decided_at": null,
      "expires_at": null
    }
  ],
  "next_cursor": "EXAMPLE_CURSOR"
}
Пример ошибки
{
  "type": "https://formula-cream.pro/developers/errors#scope_missing",
  "title": "Scope is missing",
  "status": 403,
  "code": "scope_missing",
  "detail": "EXAMPLE",
  "request_id": "req_EXAMPLE"
}

Примеры иллюстративны: ключ в них условный (EXAMPLE), значения полей выдуманы.

Возможные ошибки

invalid_api_key wrong_cell integration_inactive tenant_inactive ip_not_allowed feature_not_in_plan rate_limited wallet_suspended service_unavailable internal_error scope_missing validation_failed

GET /strategist/topics/{id} Доступно

#Получить тему

Тема очереди. Если по теме создана статья, её идентификатор в generated_article_id.

Области
strategist:read
Предел частоты
чтение
Идемпотентность
не требуется
Успешный ответ
200 Тема.

Параметры

ПолеТипОписание
idstring
обязательное
Где: path. Идентификатор темы.

Тело ответа

ПолеТипОписание
idstring
обязательное
titlestring
обязательное, может быть null
rationalestring
обязательное, может быть null
Почему тема предложена. Для тем от конкурентов домены скрыты.
trend_scorenumber
обязательное, может быть null
Оценка тренда; null — не оценивалась.
sourcestring
обязательное
Откуда тема: planner, competitors, chat и др.
statusstring
обязательное
proposed — ждёт решения; approved — одобрена; generating — статья создаётся; generated — статья создана; rejected — отклонена; duplicate — дубль; expired — срок вышел.
Значения: proposed approved generating generated rejected duplicate expired
cluster_idstring
обязательное, может быть null
generated_article_idstring
обязательное, может быть null
Идентификатор созданной статьи (GET /articles/{id}).
proposed_atstring
обязательное, может быть null
ISO 8601 UTC.
decided_atstring
обязательное, может быть null
ISO 8601 UTC.
expires_atstring
обязательное, может быть null
ISO 8601 UTC.

Примеры

Запрос
curl -X GET 'https://formula-cream.pro/api/public/v1/strategist/topics/EXAMPLE_ID' \
  -H 'Authorization: Bearer '"$SAPPORT_API_KEY"
Ответ 200
{
  "id": "EXAMPLE_ID",
  "title": "string",
  "rationale": "string",
  "trend_score": 0,
  "source": "string",
  "status": "proposed",
  "cluster_id": "EXAMPLE_ID",
  "generated_article_id": "EXAMPLE_ID",
  "proposed_at": "2026-10-11T09:00:00Z",
  "decided_at": "2026-10-11T09:00:00Z",
  "expires_at": "2026-10-11T09:00:00Z"
}
Пример ошибки
{
  "type": "https://formula-cream.pro/developers/errors#scope_missing",
  "title": "Scope is missing",
  "status": 403,
  "code": "scope_missing",
  "detail": "EXAMPLE",
  "request_id": "req_EXAMPLE"
}

Примеры иллюстративны: ключ в них условный (EXAMPLE), значения полей выдуманы.

Возможные ошибки

invalid_api_key wrong_cell integration_inactive tenant_inactive ip_not_allowed feature_not_in_plan rate_limited wallet_suspended service_unavailable internal_error scope_missing not_found

GET /strategist/actions Доступно

#Действия стратега из ваших сессий

Действия, которые стратег предложил в сессиях ЭТОЙ интеграции, новые первыми. Действия сотрудников в кабинете и других интеграций не видны. Предложение живёт 7 суток, затем получает состояние expired.

Области
strategist:read
Предел частоты
чтение
Идемпотентность
не требуется
Успешный ответ
200 Страница действий.

Параметры

ПолеТипОписание
limitinteger
необязательное
Где: query. Размер страницы: от 1 до 100, по умолчанию 25.
cursorstring
необязательное
Где: query. Значение next_cursor из предыдущего ответа. Живёт 24 часа; при смене фильтров начинайте заново.
statusstring
необязательное
Где: query. Состояние действия.
session_idstring
необязательное
Где: query. Только действия этой сессии (uuid).

Тело ответа

ПолеТипОписание
dataarray<StrategistAction>
обязательное
next_cursorstring
обязательное, может быть null
Курсор следующей страницы; null — список закончился. Живёт 24 часа.

Примеры

Запрос
curl -X GET 'https://formula-cream.pro/api/public/v1/strategist/actions' \
  -H 'Authorization: Bearer '"$SAPPORT_API_KEY"
Ответ 200
{
  "data": [
    {
      "id": "EXAMPLE_ID",
      "session_id": null,
      "type": "string",
      "title": "string",
      "status": "proposed",
      "result": null,
      "error": null,
      "created_at": null,
      "decided_at": null,
      "expires_at": null
    }
  ],
  "next_cursor": "EXAMPLE_CURSOR"
}
Пример ошибки
{
  "type": "https://formula-cream.pro/developers/errors#scope_missing",
  "title": "Scope is missing",
  "status": 403,
  "code": "scope_missing",
  "detail": "EXAMPLE",
  "request_id": "req_EXAMPLE"
}

Примеры иллюстративны: ключ в них условный (EXAMPLE), значения полей выдуманы.

Возможные ошибки

invalid_api_key wrong_cell integration_inactive tenant_inactive ip_not_allowed feature_not_in_plan rate_limited wallet_suspended service_unavailable internal_error scope_missing validation_failed

GET /strategist/actions/{id} Доступно

#Получить действие стратега

Действие из вашей сессии: состояние, результат (созданная тема) или причина сбоя. Чужое действие — 404.

Области
strategist:read
Предел частоты
чтение
Идемпотентность
не требуется
Успешный ответ
200 Действие.

Параметры

ПолеТипОписание
idstring
обязательное
Где: path. Идентификатор действия.

Тело ответа

ПолеТипОписание
idstring
обязательное
session_idstring
обязательное, может быть null
Сессия разговора, в которой предложено действие.
typestring
обязательное
Вид действия. В v1 — только propose_topic.
titlestring
обязательное
Заголовок предлагаемой темы.
statusstring
обязательное
proposed — ждёт подтверждения; confirmed — подтверждено, выполняется; executed — выполнено; failed — не удалось; cancelled — отменено; expired — срок вышел (7 суток).
Значения: proposed confirmed executed failed cancelled expired
resultobject
обязательное, может быть null
Результат выполненного действия: созданная тема.
result.topic_idstring
обязательное
errorobject
обязательное, может быть null
Причина сбоя при status = failed.
error.codestring
обязательное
error.messagestring
обязательное
created_atstring
обязательное, может быть null
ISO 8601 UTC.
decided_atstring
обязательное, может быть null
ISO 8601 UTC.
expires_atstring
обязательное, может быть null
Когда ожидание истекает: создание + 7 суток. ISO 8601 UTC.

Примеры

Запрос
curl -X GET 'https://formula-cream.pro/api/public/v1/strategist/actions/EXAMPLE_ID' \
  -H 'Authorization: Bearer '"$SAPPORT_API_KEY"
Ответ 200
{
  "id": "EXAMPLE_ID",
  "session_id": "EXAMPLE_ID",
  "type": "string",
  "title": "string",
  "status": "proposed",
  "result": {
    "topic_id": "EXAMPLE_ID"
  },
  "error": {
    "code": "string",
    "message": "string"
  },
  "created_at": "2026-10-11T09:00:00Z",
  "decided_at": "2026-10-11T09:00:00Z",
  "expires_at": "2026-10-11T09:00:00Z"
}
Пример ошибки
{
  "type": "https://formula-cream.pro/developers/errors#scope_missing",
  "title": "Scope is missing",
  "status": 403,
  "code": "scope_missing",
  "detail": "EXAMPLE",
  "request_id": "req_EXAMPLE"
}

Примеры иллюстративны: ключ в них условный (EXAMPLE), значения полей выдуманы.

Возможные ошибки

invalid_api_key wrong_cell integration_inactive tenant_inactive ip_not_allowed feature_not_in_plan rate_limited wallet_suspended service_unavailable internal_error scope_missing not_found