Page tree

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

Skip to end of metadata
Go to start of metadata

Отправка информации о ДТП.

Запрос:

URL:

POST https://api.url/v2.1/user/<user_id>/cars/accidents

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

Accept - должен допускать "application/vnd.api+json".

Content-Type - должен быть "application/vnd.api+json".

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

Данные запроса:

Данные присылаются в формате JSON API. Формат данных аналогичен формату данных в ответе на запрос получения данных одиночного объекта, за исключением, что не должно указываться Id.

Ответ присылается в формате JSON API. В заголовке Location будет содержаться ссылку на созданные объект. В теле ответа будет полное описание созданной объекта.


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

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

ПолеТипОписание
idintИдентификатор
typestringТип ресурса (всегда "сarAccident")
attributesobjectОписание атрибутов см. ниже
relationshipsobject

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

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

ПолеТипNullableОписание
AccidentDateDateTimeнетДата ДТП
Longitude
doubleда

Долгота

Latitudedoubleда

Широта

SpeeddoubleнетСкорость в момент ДТП
Statetextнет

Тип ДТП

valueописание
newставится автоматически
invalid

Флаг что ДТП не валидное (при. сбой блока)

может быть выставлено пользователем при редактировании.

checkedпроверено тех. поддержкой.
confirmedподтверждено пользователем.
Commenttextда

комментарий пользователя.

Severityintда

Серьёзность ДТП

2 - легкое

5 - среднее

8 - тяжёлое

AccidentCausetextдаПричина ДТП.
CarDamagetextдаОписание повреждений.
IsGuiltyboolдаВиновен ли водитель в ДТП

InsuranceState

stringдаСтатус возврата от страховой
InsurancePaymentdoubleдаСумма возврата от страховой по ДТП
MaxAccelXdoubleдаМаксимальное ускорение по оси X
MaxAccelYdoubleдаМаксимальное ускорение по оси Y
MaxAccelZdoubleдаМаксимальное ускорение по оси Z
MinAccelXdoubleдаМинимальное ускорение по оси X
MinAccelYdoubleдаМинимальное ускорение по оси Y
MinAccelZdoubleдаМинимальное ускорение по оси Z
ReportStatusstringнетСтатус отчета. Не обязательное поле. Игнорируется сервером.
ReportFileFormatstringда

Расширение файла отчета. Не обязательное поле. Игнорируется сервером.

ReportNumberintдаНомер отчета. Необязательное поле, игнорируется сервером
DateOfCreationdatetimeнетДата создания. Не обязательное поле. Игнорируется сервером.

Описание связанных объектов.

ПолеТипNullableОписание
Creatoruserда

Создатель ДТП. Не null только для ручного ввода ДТП.

При создании выставляется автоматически.

Поле можно передавать, но сервер его не смотрит и не проверяет

Carcarнетссылка на ТС.
Driverdriverдассылка на водителя
Devicedeviceдассылка на Бортовое Устройство.
Weatherweatherда

Ссылка на погоду, полученную через погодные сервисы.

Нельзя указывать при создании. Заполняется сервером.

UserWeatherweatherда

Ссылка на погоду - данные пользователя.

Нельзя указывать при создании. Заполняется при создании погоды.

HistoryPointhistStatдаСсылка на точку истории.
DayTimedaytimeдаВремя дня - утренние сумерки, день,  ...

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

201 Created - Сервер обработал запрос. В теле ответа  содержится созданное ДТП. Также будет передан заголовок Last-Modified.

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

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

403 Forbidden - нет прав на просмотр выполнение запроса.

404 Not Found - ТС или устройство или водитель не найдены.

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


Пример

POST https://api.url/v2.1/user/1/cars/accidents HTTP/1.1
Accept: application/vnd.api+json
Authorization: Bearer <auth token>
 
{
    "data": {
        "type": "carAccident",
        "attributes": {
            "AccidentDate": "2021-03-31T06:28:35Z",
            "Longitude": 51.5361,
            "Latitude": 51.1554,
            "Speed": 0,
            "State": "invalid",
            "Comment": null,
            "Severity": 2,
            "IsGuilty": null,
            "InsuranceState": null,
            "InsurancePayment": null,
            "DayTime": null,
            "MaxAccelX": 0.531219,
            "MaxAccelY": 0.356205,
            "MaxAccelZ": 1.8586,
            "MinAccelX": -0.703932,
            "MinAccelY": -0.696726,
            "MinAccelZ": 0.689246,
            "DateOfCreation": "2021-03-31T06:39:53Z",
            "AccidentCause": null,
            "CarDamage": null
        },
        "relationships": {
            "Device": {
                "data": {
                    "id": "1",
                    "type": "device"
                }
            },
            "Car": {
                "data": {
                    "id": "1",
                    "type": "car"
                }
            },
            "DayTime": {
                "data": {"id": 2, "type": "daytime"}
            }
            "Driver": {
                "data": null
            },
            "UserWeather": {
                "data": null
            },
            "HistoryPoint": {
                "data": {
                    "id": "1617172115000000000",
                    "type": "histState"
                }
            }
        }
    }
}    

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

{
    "data": {
        "id": "1",
        "type": "carAccident",
        "attributes": {
            "AccidentDate": "2021-03-31T06:28:35Z",
            "Longitude": 51.5361,
            "Latitude": 51.1554,
            "Speed": 0,
            "State": "invalid",
            "Comment": null,
            "Severity": 2,
            "IsGuilty": null,
            "InsuranceState": null,
            "InsurancePayment": null,
            "DayTime": null,
            "MaxAccelX": 0.531219,
            "MaxAccelY": 0.356205,
            "MaxAccelZ": 1.8586,
            "MinAccelX": -0.703932,
            "MinAccelY": -0.696726,
            "MinAccelZ": 0.689246,
            "AccidentCause": null,
            "CarDamage": null,
            "ReportNumber": null,
            "ReportStatus": "planned",
            "ReportFileFormat": null,
            "DateOfCreation": "2021-03-31T06:39:53Z"
        },
        "relationships": {
            "Device": {
                "data": {
                    "id": "1",
                    "type": "device"
                }
            },
            "Car": {
                "data": {
                    "id": "1",
                    "type": "car"
                }
            },
            "Driver": {
                "data": null
            },
            "DayTime": {
                "data": {"id": 2, "type": "daytime"}
            }
            "Weather": {
                "data": null
            },
            "UserWeather": {
                "data": null
            },
            "HistoryPoint": {
                "data": {
                    "id": "1617172115000000000",
                    "type": "histState"
                }
            }
        }
    }
}    

  • No labels