Метод работает аналогично v2.1 Получение заметок ТС, но возвращает только по 1 (последней важной) заметке для каждой ТС.
Запрос:
URL:
Запрос всех заметок:
GET https://api.url/v2.1/user/<user_id>/cars/notes/last
Доп. Заголовки:
If-Modified-Since - Если ранее уже запрос уже выполнялся, то при обновлении следует указывать заголовок If-Modified-Since с датой полученной заголовка ответа Last-Modified
Accept - для указания формата ответа. Должен быть "application/vnd.api+json", для совместимости принимается также "application/json".
Authorization - для передачи токена. Передается в формате: Bearer <access_token>.
Доп. Параметры запроса:
Имя | Тип | Значение по умолчанию | Описание |
---|---|---|---|
page[offset] | int | 0 | Пропустить несколько первых записей |
page[limit] | int | 200 | Количество объектов в выводе |
fields[note] | string | Фильтрация полей отображаемых в объектах. | |
filter[note] | string | Фильтрация списка ТС. Фильтрация поддерживается по всем полям, кроме CarState. | |
sort | string | Сортировка по указанному полю |
Параметр include (определённый в стандарте JSON API) в текущей версии api не поддерживается. В случае их получения сервер будет возвращать ошибку 400.
Ответ
Ответ присылается в формате JSON API.
Поле | Описание | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
links | Поле links содержит ссылки на доступные ресурсы. Минимально он должен содержать ссылку на текущий ресурс (self). Если Все заметки не удалось поместить в одном ответе то также будет содержаться next - следующая страница (если есть) prev - предыдущая страница (если есть) first - первая страница с результатами last - последняя страница с результатами | ||||||||||||
meta | Содержит total_count - количество заметок по тс у пользователя | ||||||||||||
data | Содержит массив объектов в формате JSON API. Каждый объект содержит
|
Описание атрибутов ТС:
Поле | Тип | Nullable | Фильтрация | Описание |
---|---|---|---|---|
Text | string | нет | да | Текст заметки |
IsEditable | bool | нет | нет | Может ли текущий пользователь редактировать заметку |
IsDeletable | bool | нет | нет | Может ли текущий пользователь удалить заметку |
DateOfCreation | datetime | нет | да | Дата создания заметки |
Important | bool | нет | да | Важная заметка. |
AuthorLogin | string | да | да | Login пользователя который оставил заметку |
AuthorFio | string | да | нет | ФИО пользователя который оставил заметку |
Связанные объекты:
Поле | Тип | Nullable | Фильтрация | Описание |
---|---|---|---|---|
Object | car | нет | да | С какой ТС связана заметка. |
Коды ответов:
200 ОК - Сервер обработал запрос. В теле ответа содержится список заметок. Также будет передан заголовок Last-Modified.
304 Not Modified - Сервер обработал запрос. Изменения не найдены.
401 Unauthorized - не передан заголовок Authorization, либо токен не корректный, либо окончился период действия.
403 Forbidden - нет прав на просмотр (id пользователя не соответствует токену).
404 Not Found - заметка не найдена.
400 Bad Request - Переданы не поддерживаемые параметры либо сервер не понял запрос (описание ошибки в теле ответа).
Также возможны другие ошибки.
Пример
Запрос списка всех заметок на всех ТС:
GET https://api.url/v2.1/user/1/cars/notes/last HTTP/1.1 Accept: application/vnd.api+json Authorization: Bearer <auth token> HTTP/1.1 200 OK Content-Type: application/vnd.api+json Allow: GET Last-Modified: Wed, 21 Oct 2015 07:28:00 GMT { "links": { "self": "https://api-test05.citypoint.ru/v2.1/user/478/cars/notes/last" }, "meta": { "total_count": 32 }, "data": [ { "id": "123", "type": "note", "attributes": { "Text": "Блок снят в ремонт", "IsDeletable": true, "IsEditable": true, "DateOfCreation": "2015-10-14T08:59:09Z", "Important": true, "AuthorLogin": "Login", "AuthorFio": "Фамилиев Имя Отчествович" }, "relationships": { "Object": { "data": { "id": "1", "type": "car" } } } }, ... Остальные заметки ... ] }