Page tree

Citypoint - контроль и аналитика автопарка

Skip to end of metadata
Go to start of metadata

Метод для получения истории ключей водителей. Возвращает историю по всем ключам, для получения истории по отдельному ключу используйте фильтрацию.

Метод возвращает исторические данные, внутри объектов могут быть ссылки на уже не существующие ресурсы (например, удаленные водители).

Запрос:

URL:

Полный список:

GET https://api.url/v2.1/user/<user_id>/drivers/keys/history

Запрос записи истории по id:

GET https://api.url/v2.1/user/<user_id>/drivers/keys/history/<hist_id>

Доп. Заголовки:

If-Modified-Since - Если ранее уже запрашивался полный список объектов, то при обновлении следует указывать заголовок If-Modified-Since с датой полученной  в заголовке ответа Last-Modified

Accept - для указания формата ответа. Должен быть "application/vnd.api+json", для совместимости принимается также "application/json".

Authorization - для передачи токена. Передается в формате: Bearer <access_token>.

Доп. Параметры запроса:

ПолеТипЗначение по умолчаниюОписание
page[offset]int0Пропустить несколько первых записей
page[limit]int2000Количество объектов в выводе
fieldsstring

Фильтрация полей в объектах

filter[driverKeyHistory]string
Фильтрация объектов
sortstring
Сортировка объектов
includestring
Отобразить связанные объекты

Ответ:

       Ответ присылается в формате JSON API.

ПолеОписание
links

Поле links содержит ссылки на ресурсы.

Минимально он должен содержать ссылку на текущий ресурс (self).

Если все данные не удалось поместить в одном ответе, то также будет содержаться

next - следующая страница (если есть)

prev - предыдущая страница (если есть)

first - первая страница с результатами

last - последняя страница с результатами


metaСодержит total_count - количество записей истории по ключам
data

Содержит массив объектов в формате JSON API.

Каждый объект

ПолеТипОписание
idintИдентификатор (передаётся как строка для соответствия JSON API)
typestringТип ресурса (всегда "driverKeyHistory")
attributesobjectАтрибуты
relationshipsobject

Ссылки на связанные объекты


Описание атрибутов:

ПолеТипNullableФильтрацияОписание
Statusstringнетда

Новый статус ключа

new - новый, ещё не использовался

not_used - сейчас не используется

linked - закреплён за водителем

lost - потерян (В Driver будет кто утерял).

Actionstringнетда

Действие совершённое с ключом.

found - ключ найден

created - ключ создан

bind - ключ привязан к водителю

unbind - ключ отвязан от водителя

loose - ключ потерян

AccountNamestringдадаИмя пользователя который совершил действие
DateOfCreationdatetimeнетдаДата создания / совершения действия
Связанные объекты
ПолеТипNullableФильтрацияОписание
Driverobject<driver>дада

Новый водитель ключа

DriverKey

object<driverKey>нетдаСсылка на ключ

Коды ответов:

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/drivers/keys/history 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://cur.api.citypoint.ru/user/1/drivers/keys/history
    },
    "meta": {
        "total_count": 12
    },
    "data": [
        {
            "id": "12",
            "type": "driverKeyHistory",
            "attributes": {
                "Status": "linked",
                "Action": "found",
                "CreationDate": "2017-08-30T10:51:18Z"
            },
            "relationships": {
                "DriverKey": {
                    "data": {
                        "id": "1",
                        "type": "driverKey"
                    }
                },
                "Driver": {
                    "data": {
                        "id": "1",
                        "type": "driver"
                    }
                }
            }
        },
        {
            "id": "13",
            "type": "driverKeyHistory",
            "attributes": {
                "Status": "not_used",
                "Action": "unbind",
                "CreationDate": "2020-12-28T14:38:16Z"
            },
            "relationships": {
                "DriverKey": {
                    "data": {
                        "id": "1",
                        "type": "driverKey"
                    }
                },
                "Driver": {
                    "data": null
                }
            }
        },    
        ...
     ]
}


  • No labels