Каталог игр
Dealaro
Избранное
Продать
Чаты
Войти
Dealaro

Подключение

API — ваши вызовы на /api/automation/v1. Webhook — наши вызовы на ваш адрес.

API

Проверка ключа. Каждый запрос к API — заголовок Authorization: Bearer dlr_…. Без него 401. Idempotency-Key на ping не используется.

POSThttps://dealaro.ru/api/automation/v1/ping

Request

  • Authorization

    header

    Bearer dlr_… — ключ из кабинета. Во всех запросах API, кроме подтверждения webhook.

    обязательно

Response

  • pong

    boolean

    true, если ключ действителен.

    обязательно

Webhook

События на ваш адрес. Секрет — Authorization: Bearer. HTTP 200, тело ответа не смотрим. Свои сообщения и свои смены статуса заказа не приходят. Смена адреса или секрета — снова POST /webhook/confirm.

Request

  • Authorization

    header

    Bearer <секрет из панели>. На входящих вебхуках, не ключ dlr_.

    обязательно

Response

Полей нет.

Подтверждение webhook

Ставит сохранённый адрес на линию. Authorization — секрет webhook из Подключения, не ключ dlr_. Тело не нужно.

POSThttps://dealaro.ru/api/automation/v1/webhook/confirm

Request

Полей нет.

Response

Полей нет.

Список

Чаты текущего продавца. Участники и флаги прочтения есть на каждом элементе; заказы — в GET /chat/one.

GEThttps://dealaro.ru/api/automation/v1/chat?unreadOnly=true&sortBy=newest

Request

  • take

    number

    Размер страницы, 1–100. По умолчанию 20.

    опционально

  • skip

    number

    Смещение.

    опционально

  • unreadOnly

    boolean

    Только с непрочитанными входящими.

    опционально

  • sortBy

    newest | oldest

    По updatedAt. По умолчанию newest.

    опционально

Response

  • items

    array

    Страница чатов.

    обязательно

    элемент

    • id

      number

      Идентификатор чата.

      обязательно

    • updatedAt

      string

      ISO-8601.

      обязательно

    • selfId

      number

      Ваш userId. Сообщения с таким userId — ваши.

      обязательно

    • lastMessageAt

      string | null

      Время последнего сообщения.

      обязательно

    • isLastMessageRead

      boolean

      Если последнее сообщение ваше — прочитал ли его хотя бы один собеседник. Иначе — прочитали ли вы чужое.

      обязательно

    • hasUnread

      boolean

      Есть непрочитанное входящее.

      обязательно

    • participants

      array

      Участники чата.

      обязательно

      элемент

      • id

        number

        Идентификатор пользователя.

        обязательно

      • slug

        string

        Публичный slug.

        обязательно

      • name

        string

        Имя.

        обязательно

  • hasMore

    boolean

    true, если за текущей страницей есть ещё записи.

    обязательно

Один

Чат по id: участники, прочитано, непрочитано, связанные незакрытые заказы.

GEThttps://dealaro.ru/api/automation/v1/chat/one?id=88

Request

  • id

    number

    Идентификатор чата.

    обязательно

Response

  • id

    number

    Идентификатор чата.

    обязательно

  • updatedAt

    string

    ISO-8601.

    обязательно

  • selfId

    number

    Ваш userId. Сообщения с таким userId — ваши.

    обязательно

  • lastMessageAt

    string | null

    Время последнего сообщения.

    обязательно

  • isLastMessageRead

    boolean

    Если последнее сообщение ваше — прочитал ли его хотя бы один собеседник. Иначе — прочитали ли вы чужое.

    обязательно

  • hasUnread

    boolean

    Есть непрочитанное входящее.

    обязательно

  • participants

    array

    Участники чата.

    обязательно

    элемент

    • id

      number

      Идентификатор пользователя.

      обязательно

    • slug

      string

      Публичный slug.

      обязательно

    • name

      string

      Имя.

      обязательно

  • orders

    array

    Незакрытые заказы с участниками чата.

    обязательно

    элемент

    • id

      number

      Идентификатор заказа.

      обязательно

    • searchId

      string

      Короткий номер.

      обязательно

    • status

      PAID | COMPLETED | CONFIRMED | CLOSED | REFUNDED

      Статус.

      обязательно

Список

Сообщения чата.

GEThttps://dealaro.ru/api/automation/v1/message?chatId=88

Request

  • chatId

    number

    Идентификатор чата.

    обязательно

  • take

    number

    Размер страницы, 1–100. По умолчанию 20.

    опционально

  • skip

    number

    Смещение.

    опционально

Response

  • items

    array

    Страница сообщений.

    обязательно

    элемент

    • id

      string

      Идентификатор сообщения.

      обязательно

    • createdAt

      string

      ISO-8601.

      обязательно

    • content

      string | null

      Текст. null, если текста нет.

      обязательно

    • userId

      number | null

      Автор. Сравнить с selfId из GET /chat/one. null у бота.

      обязательно

  • hasMore

    boolean

    true, если за текущей страницей есть ещё записи.

    обязательно

Исходящее

Отправка текста в чат. Необязательный заголовок Idempotency-Key, не длиннее 255 символов. Повтор с тем же ключом на этом пути возвращает сохранённый ответ. Пока ответа нет, ключ не сохраняется.

POSThttps://dealaro.ru/api/automation/v1/message

Request

  • chatId

    number

    Идентификатор чата.

    обязательно

  • content

    string

    1–2000 символов после trim.

    обязательно

Response

  • id

    string

    Идентификатор созданного сообщения.

    обязательно

Новое сообщение

Входящее сообщение. Свои исходящие на адрес не уходят. Объект message: id в чате, тип и текст.

Request

  • version

    number

    Версия схемы этого JSON. Для текущих доставок — 1. Следующая ломающая схема публикуется с новым значением; тела с version: 1 не меняются.

    обязательно

  • type

    message

    Дискриминатор. Объект message лежит рядом.

    обязательно

  • id

    string

    Идентификатор записи в журнале вебхука. Повтор доставки того же события приходит с тем же id.

    обязательно

  • createdAt

    string

    ISO-8601.

    обязательно

  • chatId

    number

    Идентификатор чата.

    обязательно

  • message

    object

    Сообщение. id — сообщение в чате, не id события на корне.

    обязательно

    • id

      string

      Идентификатор сообщения в чате.

      обязательно

    • type

      text | image | voice | document

      Для image, voice и document поле content может быть null.

      обязательно

    • content

      string | null

      Текст.

      обязательно

    • userId

      number | null

      Автор. Сравнить с selfId из GET /chat/one.

      обязательно

Список

Продажи текущего продавца. chatId — чат с покупателем, создаётся вместе с заказом.

GEThttps://dealaro.ru/api/automation/v1/order?status=PAID&sortBy=newest

Request

  • take

    number

    Размер страницы, 1–100. По умолчанию 20.

    опционально

  • skip

    number

    Смещение.

    опционально

  • status

    PAID | COMPLETED | CONFIRMED | CLOSED | REFUNDED

    Фильтр по статусу.

    опционально

  • sortBy

    newest | oldest | price_asc | price_desc

    newest/oldest — по оплате. По умолчанию newest.

    опционально

Response

  • items

    array

    Страница заказов.

    обязательно

    элемент

    • id

      number

      Идентификатор заказа.

      обязательно

    • searchId

      string

      Короткий номер.

      обязательно

    • status

      PAID | COMPLETED | CONFIRMED | CLOSED | REFUNDED

      Статус заказа.

      обязательно

    • offerName

      string

      Название оффера.

      обязательно

    • totalPrice

      number

      Сумма в копейках.

      обязательно

    • quantity

      number

      Количество.

      обязательно

    • offerId

      number | null

      Идентификатор оффера.

      обязательно

    • chatId

      number

      Чат с покупателем. Создаётся вместе с заказом, если его ещё не было.

      обязательно

    • consumerId

      number

      Покупатель. Есть в participants чата.

      обязательно

  • hasMore

    boolean

    true, если за текущей страницей есть ещё записи.

    обязательно

Один

Заказ по id. Тот же объект, что элемент списка: chatId и offerId.

GEThttps://dealaro.ru/api/automation/v1/order/one?id=501

Request

  • id

    number

    Идентификатор заказа.

    обязательно

Response

  • id

    number

    Идентификатор заказа.

    обязательно

  • searchId

    string

    Короткий номер.

    обязательно

  • status

    PAID | COMPLETED | CONFIRMED | CLOSED | REFUNDED

    Статус заказа.

    обязательно

  • offerName

    string

    Название оффера.

    обязательно

  • totalPrice

    number

    Сумма в копейках.

    обязательно

  • quantity

    number

    Количество.

    обязательно

  • offerId

    number | null

    Идентификатор оффера.

    обязательно

  • chatId

    number

    Чат с покупателем. Создаётся вместе с заказом, если его ещё не было.

    обязательно

  • consumerId

    number

    Покупатель. Есть в participants чата.

    обязательно

Выполнен

Перевести оплаченный заказ в COMPLETED. Эта смена статуса на webhook не уходит. Необязательный заголовок Idempotency-Key, не длиннее 255 символов. Повтор с тем же ключом на этом пути возвращает сохранённый ответ. Пока ответа нет, ключ не сохраняется.

POSThttps://dealaro.ru/api/automation/v1/order/complete

Request

  • id

    number

    Идентификатор заказа.

    обязательно

Response

Полей нет.

Статус

Смена статуса заказа, которую сделали не вы: оплата покупателем, сотрудник, система. Ваш complete и прочие свои статусы на адрес не уходят.

Request

  • version

    number

    Версия схемы этого JSON. Для текущих доставок — 1. Следующая ломающая схема публикуется с новым значением; тела с version: 1 не меняются.

    обязательно

  • type

    order

    Дискриминатор. Объект order лежит рядом.

    обязательно

  • id

    string

    Идентификатор записи в журнале вебхука. Повтор доставки того же события приходит с тем же id.

    обязательно

  • createdAt

    string

    ISO-8601.

    обязательно

  • chatId

    number

    Идентификатор чата.

    обязательно

  • order

    object

    Заказ.

    обязательно

    • id

      number

      Идентификатор заказа.

      обязательно

    • searchId

      string

      Короткий номер.

      обязательно

    • status

      PAID | COMPLETED | CONFIRMED | CLOSED | REFUNDED

      Статус заказа.

      обязательно

    • chatId

      number

      Тот же чат, что на корне события. GET /chat/one?id=.

      обязательно

    • offerId

      number | null

      Идентификатор оффера. Заполняется при PAID.

      обязательно

    • offerName

      string | null

      Название оффера.

      обязательно

    • totalPrice

      number | null

      Сумма в копейках. Заполняется при PAID.

      обязательно

    • quantity

      number | null

      Количество. Заполняется при PAID.

      обязательно

    • offerAttributes

      array

      Атрибуты оффера на момент оплаты.

      обязательно

      элемент

      • name

        string

        Имя атрибута.

        обязательно

      • value

        string

        Значение.

        обязательно

    • orderInputFields

      array

      Ответы покупателя.

      обязательно

      элемент

      • name

        string

        Подпись поля.

        обязательно

      • key

        string

        Внешний ключ (Nexus deliveryData.id), если задан на оффере.

        опционально

      • type

        STRING | NUMBER

        Тип поля оффера.

        обязательно

      • value

        string

        Значение.

        обязательно

События

История событий, отправленных на вебхук.

GEThttps://dealaro.ru/api/automation/v1/webhook-event?status=FAILED

Request

  • status

    PENDING | RETRY | DELIVERED | FAILED

    Фильтр по статусу доставки.

    опционально

  • from

    string

    Нижняя граница, ISO-8601.

    опционально

  • to

    string

    Верхняя граница, ISO-8601.

    опционально

Response

  • элемент

    object

    Ответ — массив. Может быть пустым.

    обязательно

    • id

      string

      Идентификатор события. Совпадает с id в теле вебхука.

      обязательно

    • chatId

      number

      Идентификатор чата.

      обязательно

    • status

      PENDING | RETRY | DELIVERED | FAILED

      Статус доставки.

      обязательно

    • attempt

      number

      Номер попытки доставки.

      обязательно

    • httpStatus

      number | null

      HTTP-код ответа адреса.

      обязательно

    • errorText

      string | null

      Текст ошибки.

      обязательно

    • createdAt

      string

      ISO-8601.

      обязательно