Перейти к основному контенту

Общие сведения

В запросах и ответах JSON. В заголовках HTTP запроса Content-Type: application/json.

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

Дата. Все передаваемые и принимаемые даты имеют формат yyyyMMddhhmmss или yyyyMMdd.

Период. Период задается двумя датами, как правило, from и to. Если даты не содержат времени, то периодом считать время с начала суток даты from и до окончания суток даты to. Например, при запросе отчета за период с 20170101 по 20170101, результатом будет все за сутки 01.01.2017. При запросе за период с 20170101 по 20170102, в результат будет входить период времени за двое суток: 01.01.2017 и 02.01.2017.

Запятая или точка? В качестве разделителя, в нецелых числах, использовать только точку. 

Общий формат запроса

{
  "pageSize": 0,
  "currentPage": 0,
  "sort": "string",
  "params": {
    "param1": "value1",
    "param2": "value2"
  }
}

Теги:

  • pageSize - размер страницы, размер массива data. Не обязательное. По умолчанию 1000;
  • currentPage - текущая страница данных data. Не обязательное. По умолчанию 0;
  • sort - сортировка по полям (только для запросов где в ответе data). Перечисляются через запятую поля для сортировки. После каждого поля можно указать asc или desc.

Общий формат ответа

{
  "code": 0,
  "message": "string",
  "data": [ ],
  "metadata": {
    "pageCount": 0,
    "pageSize": 0,
    "pageIndex": 0,
    "rowCount": 0
  },
  "result": {
    "field1": "value1",
    "field2": "value2"
  }
}

Секция metadata есть только, если в ответе табличные данные data.

Теги:

  • pageCount - кол-во страниц данных;
  • pageSize - размер выданной страницы. Если это полная страница, то будет равен значению pageSize в запросе. Если это остаточные данные, то будет меньше pageSize;
  • pageIndex - текущая страница. Нумерация с 0;
  • rowCount - общее кол-во строк данных на всех страницах.

Совместимость

Изменений в запросах и ответах мы разделяем на обратно совместимые с клиентскими приложениями обратно несовместимые.

Обратно несовместимые. Стараемся минимизировать. Если все таки требуется внести обратно несоместимые изменения, уведомляем клиентов, обозначаем сроки, даем рекомендации. В любом случае, внезапного прекращения функциональности не допускаем.

  • удаление запроса
  • удаление тегов из запроса
  • удаление тегов в ответах
  • изменения адреса (эндпоинта) запроса
  • изменение в бизнес-процессах повлекшие изменение логики работы запросов
  • изменение регистра тегов в ответах (totalamount не равно totalAmount)

Обратно совместимые. Отражаются в документации. Уведомления не рассылаются.

  • Длиннный или короткий формат даты (20230415000000 или 20230415)
  • Добавление новых запросов
  • Добавление в запрос новых не обязательных тегов 
  • Добавление в ответ новых тегов, не влияющих на ход того-или иного бизнес-процесса (например, добавилось новое поле в отчете)
  • изменение порядка следования тегов в запросах и ответах находящихся на одном уровне (сортировка тегов)
  • изменение регистра тегов в запросах (totalamount равно totalAmount, так как парсинг запросов регистронезависимый)

URL

Sandbox Production
https://api.portal.tech24.kz/ https://api.portal.kassa24.kz/