2016-04-28 | v.1.0 | |
2016-05-24 | v.1.1 |
1. Используйте DELETE вместо специальных методов
2. Свойство "Customer" в запросе PUT /order стало необязательным
3. Изменения в схеме продажи: вместо PUT /order -> GET /order -> POST /order/confirm теперь используйте
PUT /order -> POST /order/sell (без информации о платеже) -> GET /order
4. Исправления форматов в ответах (float вместо strings, ticket object вместо array в order info)
|
2016-06-26 | v.1.2 |
1. Добавлен функционал правил, предотвращающих множественное бронирование без последующего выкупа.
Один раз в сутки (в 0:00) мы считаем отношение проданных заказов к созданным, если созданных заказов
10 и более.
2. В метод PUT /order добавлен необязательный параметр expireDateTime, с помощью которого
можно указать желаемый срок аннулирования заказа (для учетной записи с соответствующим правом,
и не более чем на 24 часа от текущего времени).
|
2017-01-25 | v.1.2.1 |
Используйте GET /service/karma для определения привилегий учетной записи.
|
2017-04-24 | v.1.2.2 |
Теперь у нас есть первая версия Документа по API Exceptions
|
2019-09-27 | v.1.2.3 |
В метод DELETE /ticket можно передать сумму возврата, отличающуюся от номинальной стомости билета.
|
2022-08-01 | v.1.2.3 |
Добавлена поддержка свободной рассадки
|
1 | Загрузите мероприятия с помощью метода GET /reperoire, а информацию о площадках (холлах, секциях и т.д.), используя метод GET /constructive |
1.1 | Существует кэш данных для информации о репертуаре (30 min) и информации о площадках (60 min). |
2 | Получите список билетов на свободные места, используя метод GET /ticket. |
2.1 | Существует кэш на статус билетов (5 min). |
3 | Создайте заказ с билетами, используя метод PUT /order. |
3.1 | Отмените неоплаченный заказ (сделайте заблокированные места свободными), используя метод DELETE /order. |
3.2 | Места автоматически освободятся после истеченния срока жизни заказа. |
4 | Получите информацию о заказе, используя метод GET /order. |
5 | Подтвердите оплату заказа, используя метод POST /order/sell. Информация о билетах (баркоды) будет присутствовать в ответе. |
5.1 | Чтобы отменить подтвержденный заказ, должен быть отдельно возвращен каждый его билет, используя метод DELETE /ticket. |
6 | Получите баркоды подтвержденного заказа так же можно, использовав метод GET /order после совершения оплаты. |
7 | Измените зрительские данные по заказу, если это необходимо. PUT /spectator-info |
identity-id | 2-х символьный идентификатор |
control-hash-algorithm | "D" (хеширование основано на текущей временной метке) |
hash | [int-unix-timestamp][sha-1-encrypted-value] |
int-unix-timestamp | 1461857409; сервис сверяет текущее время с некоторым допущением |
sha-1-encrypted-value | результат хэширования SHA-1 строки "[salt][int-unix-timestamp]" |
salt | секретная строка |
GET|PUT|POST|DELETE /object[/action][?get-params=value]
Content-Type: application/json
Authorization: Bearer [identity-id][control-hash-algorithm][hash]
{"json-body": "for PUT or POST requests"}
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 {"result": true, "tickets": []}
HTTP/1.1 401 Unauthorized Content-Type application/json; charset=UTF-8 {"result": false, "code": 401, "message": "You are requesting with an invalid credential"}
HTTP/1.1 404 Not Found Content-Type application/json; charset=UTF-8 {"result": false, "code": 404, "message": "Page not found."}
HTTP/1.1 405 Method Not Allowed Content-Type application/json; charset=UTF-8 {"result": false, "code": 405, "message": ""}
GET /repertoire fromInclusive string with datetime format "yyyy-MM-ddTHH:mm:ss" необязательный tillExclusive string with datetime format "yyyy-MM-ddTHH:mm:ss" необязательный |
|
GET /constructive hallId integer обязательный segment array of strings: [building|hall|sections|places] обязательный |
|
GET /ticket performanceId integer обязательный |
|
DELETE /ticket id integer обязательный price float обязательный orderId integer обязательный |
|
GET /order id integer обязательный |
|
PUT /order Если передается объект customer, все поля обязательны, но могут быть пустыми, id может быть 0. |
|
POST /order/sell |
|
PUT /spectator-info |
|
DELETE /order id integer обязательный |
|
GET /sales fromInclusive string with datetime format "yyyy-MM-ddTHH:mm:ss" необязательный tillExclusive string with datetime format "yyyy-MM-ddTHH:mm:ss", current time is maximum allowed value необязательный *Временной интервал не должен превышать 3-х дней **Если значения не переданы, возвращаются операции за предыдущий день |
|
GET /service/karma karma: 1 для учетной записи введен запрет на создание заказов на сутки karma: 2 учетная запись обладает стандартным набором привилегий karma: 3 учетная запись обладает повышенным набором привилегий |
|