Структура ответа

Timepad API возвращает результат в виде JSON- или HTML-документа (если результат был запрошен браузером), формат ответа зависит от отправленных при запросе Accept-заголовков. Также API может возвращать результат в формате JSONP, для этого нужно в запросе указать GET переменную jsonp с нужным названием функции коллбэка (например, https://api.timepad.ru/v1/events.json?jsonp=test). Ответ придёт обёрнутым в эту функцию.

Возможные ошибки

При выдаче ошибок API выдаёт соответствующий этой ошибке код статуса HTTP.

Используются следующие коды:

400 — ошибка в запросе (например, в числовом поле указана строка).
403 — для этого запроса требуется аутентификация, либо указанной аутентификации нет.
404 — запрос на неправильный URL. Проверьте правильность запроса.
429 — слишком много запросов. Попробуйте через несколько секунд.
500 — внутренняя ошибка сервера. Повторите запрос позднее.

В случае ошибки 400 выдаётся объект следующего вида:

 {"ResponseStatus":{
       "ErrorCode":"",
       "Message":"",
       "Errors":[
           {
               "ErrorCode":"",
               "FieldName":"",
               "Message":""
           }
       ]
   }}

В поле errorCode указан код ошибки, совпадающий с http-кодом.
В поле message указана ошибка на русском языке.
В массиве errors указаны ошибки каждого поля, в котором есть ошибка.

Работа с изображениями

Все картинки в API предлагаются в двух форматах: стандартном и UploadCare. Например, картинка события:

"poster_image": {
  "default_url":"https://ucare.timepad.ru/f39aec42-bb15-4c02-8f2e-2be584aa779f/-/preview/100x100/",
  "uploadcare_url":"//ucare.timepad.ru/f39aec42-bb15-4c02-8f2e-2be584aa779f/"
}

Стандартный формат — это то, как картинка используется в Timepad, обрезанная и подготовленная (например, здесь — превьюшка события для списка), формат UploadCare — полная картинка в том размере, в котором её загрузили на сервер.

Модифицируя ссылку в формате UploadCare, можно получить картинку в том формате, в котором она вам нужна. Например:

uploadcare_url + '-/preview/500x500/' — фотография, умещающаяся в формат 500х500
uploadcare_url + '-/resize/500x/' — фотография шириной в 500 пикселей
uploadcare_url + '-/preview/500x500/-/format/png/' — фотография в формате png, умещающаяся в формат 500х500

Полный список возможных модификаций смотрите на сайте UploadCare по ссылке.

 

Эта статья была полезной?