Руководство по миграции с версии API v1 на v2
- Версия v2 поддерживает все запросы, которые есть в версии v1
- Новые запросы добавляются в v2 и не могут быть добавлены в v1
- Изменения не затрагивающие формат запроса/ответа запроса, могут быть применены к v1. Изменения, в том числе затрагивающие формат запроса/ответа, выполняются только в v2.
- Версия v1 перестанет быть доступной 31.01.2024
Endpoints
Изменились адреса к запросам. В адресе добавилось v2
.
v1 | v2 |
https://{host}/{resource}/{action} |
https://{host}/v2/{resource}/{action} |
Типизация
Для булевых значений в json вместо 0|1
использовать false/true
(без кавычек).
v1 | v2 |
{ "active": 1 } | { "active": true } |
Стилизация json
В версии v1 стилизация не соблюдалась. В версии v2 - lowerCamelCase. Тем не менее, в версия v2, запросы парсятся без учета регистра (хоть совсем извращенные варианты MeTADatA
), а ответы исключительно в lowerCamelCase.
v1 | v2 |
{ "Metadata": { "PageCount": 9, "PageSize": 25, "PageIndex": 0, "RowCount": 207 }, "Code": 0, "Message": "OK" } |
{ "metadata": { "pageCount": 1, "pageSize": 207, "pageIndex": 0, "rowCount": 207 }, "code": 0, "message": "OK" } |
Формат запроса
Убрана излишняя вложенность в секцию Body.
v1 | v2 |
{ "Body":{ "PageSize": 10, "CurrentPage": 20, "Sort": "idTerminal, date asc, amount desc", "Params":{ "param1":"value1", "param2":"value2" } } } |
{ "pageSize": 0, "currentPage": 0, "sort": "string", "params": { "param1": "value1", "param2": "value2" } } |
Формат ответа
- Секция
ResultData
переименована вresult
. - Секция
QueryData
переименована вdata
. - Из секции
QueryData
убрана излишняя вложенностьRows
. Табличные данные содержаться в массивеdata
.
v1 | v2 |
{ "Code": 0, "Message": "OK", "QueryData": [ { "Rows": [] } ], "Metadata": { "PageCount": 0, "PageSize": 0, "PageIndex": 0, "RowCount": 0 }, "ResultData": { "field1":"value1", "field2":"value2" } } |
{ "code": 0, "message": "string", "data": [ ], "metadata": { "pageCount": 0, "pageSize": 0, "pageIndex": 0, "rowCount": 0 }, "result": { "field1": "value1", "field2": "value2" } } |
Исправление имени тегов в конкретных запросах
Ниже перечислены запросы с указанием тегов, которые были переименованы для получения стилизованного json.
Запрос | Теги |
в ответе:
|
|
в случае неуспеной авторизации, в ответе:
|