Page tree

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

Skip to end of metadata
Go to start of metadata

Запрос:

URL:

Запрос списка всех датчиков:

GET https://api.url/v2.1/cars/models

Запрос датчика по id

GET https://api.url/v2.1/cars/models/<model_id>

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

               Поддерживаются стандартные параметры запроса page, sort, filter, fields, include.

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

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

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

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

Ответ:

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

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

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

metaСодержит total_count - количество объектов в системе
data

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

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

ПолеТипОписание
idintИдентификатор  (передаётся как строка для соответствия JSON API)
typestringТип ресурса (всегда "carModel")
attributesobjectДанные объекта (см. Описание атрибутов)
relationshipsobjectСсылки на связанные объекты

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

Поле

ТипNullableОписание
NamestringнетНазвание модели
DescriptionstringдаОписание
DateOfCreationdatetimeнетДата создания
UpdateDatedatetimeнетДата обновления

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

200 ОК - Сервер обработал запрос. В теле ответа  содержатся запрошенные данные. Также будет передан заголовок Last-Modified.

304 Not Modified - Сервер обработал запрос. Изменения не найдены.

401 Unauthorized - не предан токен, либо его действие истекло, либо токен не корректен.

403 Forbidden - нет прав на просмотр.

404 Not Found - запрошенный объект не найден .

400 Bad Request - Переданы не поддерживаемые параметры либо сервер не понял запрос (описание ошибки в теле ответа).


Пример:

GET https://api.url/v2.1/cars/models HTTP/1.1
Accept: application/vnd.api+json

HTTP/1.1 200 OK
Content-Type: application/vnd.api+json
Allow: GET
Last-Modified: Wed, 21 Oct 2015 07:28:00 GMT

{
    "links": {
        "first": "https://cur.api.citypoint.ru/cars/models?page%5Boffset%5D=0&page%5Blimit%5D=1000",
        "self": "https://cur.api.citypoint.ru/cars/models",
        "next": "https://cur.api.citypoint.ru/cars/models?page%5Boffset%5D=1000&page%5Blimit%5D=1000",
        "last": "https://cur.api.citypoint.ru/cars/models?page%5Boffset%5D=3000&page%5Blimit%5D=1000"
    },
    "meta": {
        "total_count": 3402
    },
    "data": [
        {
            "id": "1",
            "type": "carModel",
            "attributes": {
                "Name": "378 GT Zagato",
                "Description": "AC 378 GT Zagato",
                "DateOfCreation": "2022-06-29T02:26:06Z",
                "UpdateDate": "2022-06-29T02:26:06Z"
            },
            "relationships": {
                "CarBrand": {
                    "data": {
                        "id": "1",
                        "type": "carBrand"
                    }
                }
            }
        },
        {
            "id": "2",
            "type": "carModel",
            "attributes": {
                "Name": "Ace",
                "Description": "AC Ace",
                "DateOfCreation": "2022-06-29T02:26:06Z",
                "UpdateDate": "2022-06-29T02:26:06Z"
            },
            "relationships": {
                "CarBrand": {
                    "data": {
                        "id": "1",
                        "type": "carBrand"
                    }
                }
            }
        },
        {
            "id": "3",
            "type": "carModel",
            "attributes": {
                "Name": "Aceca",
                "Description": "AC Aceca",
                "DateOfCreation": "2022-06-29T02:26:06Z",
                "UpdateDate": "2022-06-29T02:26:06Z"
            },
            "relationships": {
                "CarBrand": {
                    "data": {
                        "id": "1",
                        "type": "carBrand"
                    }
                }
            }
        },
        ...
    ]
}
  • No labels