MelioraAPI EN
Ранний доступ. Ключи выдаются по запросу. Как получить ключ

API Meliora v1 отдает данные кабинета в JSON. Все маршруты используют метод GET и только читают данные. Справочник собран из спецификации openapi.json.

#Базовый адрес

Все пути в справочнике указаны от адреса https://api.melioralab.io. Запросы выполняются по HTTPS с вашего сервера.

#Аутентификация

Передавайте ключ организации в заголовке Authorization: Bearer mel_live_.... Права и охват ключа описаны в руководстве Аутентификация и ключи.

#Формат данных

  • JSON в UTF-8, имена полей в snake_case.
  • Идентификаторы в формате UUID. Идентификатор сообщения и курсоры непрозрачные строки.
  • Время в ISO 8601 по UTC с миллисекундами и суффиксом Z: 2026-10-26T07:30:00.000Z.
  • У каждого объекта есть поле object с его типом.
  • Неизвестное значение передается как unknown или null, а не пропуском поля.

#Маршруты

МаршрутЧто возвращаетПраво
GET /v1/meПолучить сведения о ключелюбое
GET /v1/workspacesСписок пространствлюбое
GET /v1/campaignsСписок кампанийcampaigns:read
GET /v1/campaigns/{id}Получить кампаниюcampaigns:read
GET /v1/leadsСписок лидовleads:read
GET /v1/leads/{id}Получить лидаleads:read
GET /v1/leads/{id}/messagesПереписка с лидомmessages:read
GET /v1/eventsЛента событийevents:read

#Заголовки ответа

ЗаголовокОписание
Request-IdUUID запроса. Есть в каждом ответе, включая ошибки.
Cache-ControlВсегда no-store: ответы не кешируются.
RateLimit-Policy, RateLimitОкна лимитов и остатки. См. Лимиты и повторы.
RateLimit-Limit, RateLimit-Remaining, RateLimit-ResetЛимит, остаток и время до сброса ближайшего к исчерпанию окна.
Retry-AfterСекунд до повтора. Только у ответов 429 и 503.

#Списки и ошибки

Списки возвращаются страницами по курсору, см. Пагинация. Ошибки приходят в формате application/problem+json, объект описан ниже, коды в руководстве Ошибки.

Первый запрос
curl https://api.melioralab.io/v1/me \
  -H "Authorization: Bearer $MELIORA_API_KEY"
Базовый адрес

https://api.melioralab.io/v1

#Объект Problem

Ошибка в формате RFC 9457 (application/problem+json).

Поля

  • typestring
    URI типа ошибки: urn:meliora:problem:<code>.
  • titlestring
    Короткое название ошибки на английском.
  • statusinteger
    HTTP-статус.
  • detailstring
    Пояснение на русском или английском, по заголовку Accept-Language. Не разбирайте этот текст в коде.
  • instancestring
    URI запроса: urn:request:<request_id>.
  • codestring
    Машинный код ошибки. Обрабатывайте ошибки по status и code.
  • paramstring или null
    Параметр, к которому относится ошибка, или null.
  • request_idstring (uuid)
    Идентификатор запроса, тот же, что в заголовке Request-Id.
Ответ с ошибкой
HTTP/1.1 400 Bad Request
Content-Type: application/problem+json; charset=utf-8
Request-Id: 0f3c7a95-2e8b-4d16-b9a4-6c5e1d8f7b20
Cache-Control: no-store

{
  "type": "urn:meliora:problem:invalid_parameter",
  "title": "Invalid parameter",
  "status": 400,
  "detail": "Проверьте значение параметра",
  "instance": "urn:request:0f3c7a95-2e8b-4d16-b9a4-6c5e1d8f7b20",
  "code": "invalid_parameter",
  "param": "limit",
  "request_id": "0f3c7a95-2e8b-4d16-b9a4-6c5e1d8f7b20"
}