Teletype Public API (1.1.8)

Download OpenAPI specification:Download

Общая информация

Вы можете использовать данную документацию для ознакомления с методами API. Описание произведено в формате Swagger 3.0. Для генерации базового кода для работы с API на удобном для вас языке программирования воспользуйтесь утилитой Swagger Codegen или online сервисом Swagger Editor.

По всем вопросам работы с API обращайтесь к нам по email: p@teletype.app

Авторизация

Для работы с API необходимо получить токен авторизации — отдельный для каждого проекта в панели Teletype.

  1. Подключаем Public API в настройках проекта в панели Teletype и получаем API Token для авторизации
  2. Выполняем запросы к API с заголовком X-Auth-Token: <ACCESS_TOKEN>
    или передаем его в качестве GET-параметра ?token=<ACCESS_TOKEN>

Время действия токена неограничено. Сгенерировать новый токен вы в любой момент можете в настройках панели Teletype. При этом старый токен прекратит свое действие.

Сообщения

Методы API для работы с сообщениями в диалогах

Получение списка сообщений

Возвращает список сообщений отсортированый в порядке убывания даты отправки сообщения с группировкой по диалогам

query Parameters
token
required
string

Токен для авторизации

page
integer

Текущая страница

pageSize
integer

Количество данных на странице

dialogId
string

Идентификатор диалога

channelId
string

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

clientId
string

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

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Отправка сообщения

Позволяет отправить сообщение с опциональным вложением медиафайла в диалог с клиентом по ID диалога.

Важно! Если речь идёт об асинхронном канале, таком как WhatsApp или Telegram по номеру, то метод возвращает статус "заявки" на отправку сообщения. Сам статус успешной или не успешной отправки вернётся через вебхук message status change

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Request Body schema: multipart/form-data
dialogId
required
string

Идентификатор диалога

text
required
string

Текст сообщения

file
string <binary>

Файл аттачмента

url
string

Ссылка на файл аттачмента. Используется если не передан file

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Клиенты

Методы API для работы с клиентами

Получение списка клиентов

Возврашает список клиентов, с которыми присутствуют диалоги в данном проекте

query Parameters
token
required
string

Токен для авторизации

page
integer

Текущая страница

pageSize
integer

Количество данных на странице

clientId
string

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

clientPhone
string
Example: clientPhone=+79161234567

Номер телефона клиента

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Получение последнего диалога клиента

Возвращает диалог с клиентом полученный по дате последнего сообщения по убыванию

query Parameters
token
required
string

Токен для авторизации

clientId
required
string

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

channelId
string

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

channelType
string
Example: channelType=whatsapp

Тип канала

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Получение подробных данных клиента

Возвращает подробную информацию о клиенте

path Parameters
clientId
required
string

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

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Обновление данных клиента

Возвращает подробную информацию о клиенте

path Parameters
clientId
required
string

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

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Request Body schema: application/x-www-form-urlencoded
name
string

Имя клиента

phone
string

Телефон клиента

email
string

E-mail клиента

additional_payload
string

Закодированный в json массив содержащий дополнительную информацию о персоне

force_additional_payload
boolean

Признак необходимости перезаписать имеющиеся в массиве дополнительной информации данные

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Диалоги

Методы API для работы с диалогами

Получение списка диалогов

Возвращает список диалогов отсортированный по дате отправки последнего сообщения

query Parameters
token
required
string

Токен для авторизации

page
integer

Текущая страница

pageSize
integer

Количество данных на странице

status
string
Default: "all"
Enum: "all" "open" "close"
Example: status=open

Статус диалога

channelId
string

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

channelType
string
Example: channelType=whatsapp

Тип канала

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Информация о диалоге с клиентом

Получение подробной информации о диалоге

path Parameters
dialogId
required
string

Идентификатор диалога

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Закрытие диалога с клиентом

Переводит диалог с клиентом в статус закрытого

path Parameters
dialogId
required
string

Идентификатор диалога

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
true

Пометить диалог прочитанным

Переводит все сообщения в диалоге в статус прочитанных

path Parameters
dialogId
required
string

Идентификатор диалога

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
true

Назначить оператора на диалог

Переводит все сообщения в диалоге в статус прочитанных

path Parameters
dialogId
required
string

Идентификатор диалога

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Request Body schema: application/x-www-form-urlencoded
operator_id
string

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

Responses

Response samples

Content type
application/json
true

Каналы

Методы API для работы с каналами

Получение списка каналов

Возвращает список активных каналов в текущем проекте

query Parameters
token
required
string

Токен для авторизации

page
integer

Текущая страница

pageSize
integer

Количество данных на странице

channelType
string
Example: channelType=whatsapp

Тип канала

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Создание нового диалога с клиентом

Позволяет создать диалог с клиентом в канале, если до этого переписка с ним отсутствовала. Поддерживается не во всех типах каналов

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Request Body schema: application/x-www-form-urlencoded
channelId
required
string

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

clientPhone
string

Номер телефона клиента

clientEmail
string

Email адрес клиента

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}

Вебхуки

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

Все события будут передаваться на один URL.

Событие поступления нового сообщения от клиента

Событие отправляет на указанный в проекте Webhook данные о новом сообщении от клиента.

Параметр payload содержит сериализованный массив с информацией о сообщении

Request Body schema: multipart/form-data
name
required
string

new message

required
object (message)

Responses

Response samples

Content type
text/plain

Событие об успешной отправке сообщения

Событие отправляет на указанный в проекте Webhook уведомление об успешной отправке оператором сообщения клиенту.

Параметр payload содержит сериализованный массив с идентификаторами отправленного сообщения и диалога, в который оно отправлено

Request Body schema: multipart/form-data
name
required
string

success send

required
object

Сериализованный массив с данными события

Responses

Response samples

Content type
text/plain

Событие о статусе отправки сообщения

Событие отправляет на указанный в проекте Webhook уведомление о статусе отправленного сообщения клиенту.

Параметр payload содержит сериализованный массив с идентификаторами отправленного сообщения и диалога, в который оно отправлено

Request Body schema: multipart/form-data
name
required
string

message status change

required
object

Сериализованный массив с данными события

Responses

Response samples

Content type
text/plain

Событие о создании новой заметки

Событие отправляет на указанный в проекте Webhook уведомление о создании новой заметки в диалоге.

Параметр payload содержит сериализованный массив с идентификаторами клиента, диалога, заметки и самим текстом заметки

Request Body schema: multipart/form-data
name
required
string

new note

required
object

Сериализованный массив с данными события

Responses

Response samples

Content type
text/plain

Project

Получение информации о балансе внутри прокта

Возвращает информация о текущем балансе, количестве оплаченных или триальных дней

query Parameters
token
required
string

Токен для авторизации

header Parameters
X-Auth-Token
required
string

Токен для авторизации

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "data": {
    },
  • "errors": [
    ]
}