Shtrafovnet API

https://api.shtrafovnet.ru/latest/webmasters/

Для создания собственных полнофункциональных сервисов по проверке и оплате штрафов, интеграции в свои приложения и др.
Наш сервис для пользователей https://shtrafovnet.ru полностью реализован на основе данного API.

Веб-мастером может стать любой человек/сервис имеющий сайт, блог и т.д., который желает реализовать у себя функционал проверки и оплаты штрафов ГИБДД.

Все веб-мастера подключаются к партнерской программе PHLIP CPA и получают партнерские вознаграждения за оплату их пользователями штрафов.

Подробнее об условиях: https://shtrafovnet.ru/partners

Начало работы

Запросы

Любой инструмент, умеющий работать с HTTP, может связываться с API просто путем формирования правильного URI. Запросы должны выполняться с использованием протокола HTTPS, чтобы трафик шифровался. Интерфейс реагирует на различные методы в зависимости от требуемого действия.

Мы используем кодировку UTF-8. Все данные необходимо передавать в формате JSON. Формат ответа, нами так же отправляется в формате JSON.

Метод Описание
GET

Для простого извлечения информации о вашей учетной записи, транспортных средствах или информации о штрафах вам следует использовать метод GET. Запрошенная вами информация будет возвращена вам как объект JSON.

Атрибуты, определенные объектом JSON, могут использоваться для формирования дополнительных запросов. Любой запрос с использованием метода GET доступен только для чтения и не влияет на какие-либо объекты, которые вы запрашиваете.

DELETE

Чтобы уничтожить ресурс и удалить его из учетной записи, следует использовать метод DELETE. Это удалит указанный объект, если он будет найден. Если он не найден, операция вернет ответ, указывающий, что объект не найден.

Эта идемпотентность означает, что вам не нужно проверять наличие ресурсов до вызова команды удаления, конечное состояние будет таким же, независимо от его существования.

PUT

Для обновления информации о ресурсе в вашей учетной записи доступен метод PUT (должны быть переданы все данные объекта).

Как и метод DELETE, метод PUT является идемпотентом. Он устанавливает состояние цели, используя предоставленные значения, независимо от их текущих значений. Запросы, используя метод PUT, не нужно проверять текущие атрибуты объекта.

POST

Чтобы создать новый объект, в вашем запросе должен быть указан метод POST.

Запрос POST включает в себя все атрибуты, необходимые для создания нового объекта. Если вы хотите создать новый объект, отправьте POST запрос на целевой URI.

PATCH

Для обновления информации о ресурсе в вашей учетной записи доступен метод PATCH (необходимо передать только изменяемые поля).

Отличие от метода PUT в том, что данный метод не изменяет полностью объект, а только пеерданные параметры.

Ответы

Когда запрос выполнен успешно, тело ответа обычно отправляется обратно в виде объекта JSON. Исключением является обработка запроса DELETE, который приведет к успешному состоянию HTTP 204 и пустому телу ответа.

RESPONSE FOR AN OBJECT COLLECTION
{
  "cars": [
    {
      "id": 123
      "cert": "11AA123456"
      . . .
    },
    {
      "id": 234
      "cert": "11BB123456"
      . . .
    }
  ]
}
RESPONSE FOR A SINGLE OBJECT
{
  "id": 123
  "cert": "11AA123456"
  . . .
}

Параметры

Существует два разных способа передачи параметров в запросе с помощью API.

При передаче параметров для создания или обновления объекта параметры должны передаваться как объект JSON, содержащий имена и значения соответствующих атрибутов в виде пар «ключ-значение». Когда вы используете этот формат, вы должны указать, что вы отправляете объект JSON в заголовок. Это делается путем установки заголовка Content-Type: application/json. Это гарантирует, что ваш запрос будет интерпретирован правильно.

При передаче параметров для фильтрации ответа на запросы GET параметры могут передаваться с использованием стандартных атрибутов запроса. В этом случае параметры будут встроены в URI, добавив ? в конце URI, а затем установки каждого атрибута с помощью знака равенства. Атрибуты могут быть разделены символом &.

PASS PARAMETERS AS A JSON OBJECT
curl -H "Authorization: Bearer $TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"cert": "11AA123456", "reg": "а001аа777"}' \
     -X POST "https://api.shtrafovnet.ru/v2/cars"
PASS FILTER PARAMETERS AS A QUERY STRING
curl -H "Authorization: Bearer $TOKEN" \
        -X GET "https://api.shtrafovnet.ru/v2/cars/1234/fines?type=nopaid"

Авторизация

Для методов управления аккаунтом , а так же для получения токена доступа используется Basic-авторизация.

Для всех остальных запросов необходимо указывать заголовок Authorization: Bearer $TOKEN содержащий полученный токен доступа.

CURL EXAMPLE (BASIC AUTH)
curl -X $HTTP_METHOD -H 'Content-Type: application/json' \
     -u '$EMAIL:$PASSWORD' \
     $URL 
CURL EXAMPLE (BEARER AUTH)
curl -X $HTTP_METHOD \
     -H 'Content-Type: application/json' \
     -H 'Authorization: Bearer $TOKEN' \
     $URL 

Библиотеки

Чтобы максимально упростить интеграцию Shtrafovnet API, существуют официальные клиенты:

Ошибки

Если возникает ошибка, будь то на сервере или на стороне клиента, сообщения об ошибках будут возвращены в массиве ошибок.

Например:

400 Bad Request
{
    "status":400,
    "type":"validation_error",
    "title":"There was a validation error",
    "errors":{
        "name":[
            "This value should not be blank."
        ],
        "email":[
            "Email address can not be empty",
            "This value should not be blank."
        ],
        "companyInn":[
            "This value should not be blank."
        ],
        "plainPassword":[
            "This value should not be blank."
        ]
    }
}

Ссылки

Объект ссылки возвращается как часть тела ответа, когда включена разбивка на страницы.

По умолчанию для каждой страницы возвращается 200 объектов. Если ответ содержит 200 объектов или меньше, объект ссылок не будет возвращен.

Если ответ содержит более 200 объектов, первые 200 будут возвращены вместе с объектом ссылок.

Объект _links содержит содержит ключи, указывающие взаимосвязь дополнительных страниц. Значения этих параметров - это URL-адреса связанных страниц. Ключи будут следующими:

  • self: URI текущей страницы результатов.
  • first: URI первой страницы результатов.
  • prev: URI предыдущей последовательной страницы результатов.
  • next: URI следующей последовательной страницы результатов.
  • last: URI последней страницы результатов.

Параметры:

  • pages указывает на общее количество страниц результата запроса.
  • page указывает на текущую страницу результата запроса.
  • total указывает на общее количество элементов результата запроса.
  • count указывает на количество элементов запроса на текущей странице.
SAMPLE LINKS OBJECT
{
    . . .
    "pages": 10,
    "page": 1,
    "total": 2000,
    "count": 200,
    "_links": {
        "self": "https://api.shtrafovnet.ru/v2/cars?page=1",
        "first": "https://api.shtrafovnet.ru/v2/cars?page=1",
        "next": "https://api.shtrafovnet.ru/v2/cars?page=2",
        "last": "https://api.shtrafovnet.ru/v2/cars?page=3"
    },
    . . .
}

Аккаунт

Управление аккаунтом веб-мастера

Информация об аккаунте

Получение сводной информации об аккаунте веб-мастера
GET /account
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Идентификатор
Уникальный идентификатор аккаунта
id
INTEGER
---
---
Логин
Имя пользователя
username
STRING
---
---
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
---
---
Статус
Состояние аккаунта
status
STRING
new
---
Имя
first_name
STRING
---
---
Фамилия
last_name
STRING
---
---
Отчество
middle_name
STRING
---
---
Телефон
phone
STRING
---
---
Дата создания
Дата регистрации аккаунта
created_at
DATETIME
---
---
FCM_токен
Firebase Cloud Messaging
fcm_token
STRING
---
---
Дата последней активности
Дата последней активности пользователя
last_activity_at
DATETIME
NOW()
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/account'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "777", "username": "User", "email": "user@test.ru", "status": "new", "first_name": "Алексей", "last_name": "Иванов", "middle_name": "Петрович", "phone": "79005551122", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string", "last_activity_at": "2019-01-01 00:00:00" }

Регистрация

Создание нового аккаунта веб-мастера.
После регистрации на указанную почту будет отправлено письмо с подтверждением. Дальнейшая работа с API возможна только с подтвержденным аккаунтом.

POST /account/registration
Request headers
Key
Value
Content-Type
application/json
Request parameters
Name
Code
Type
Required?
Allowed values
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
Yes
---
Пароль
password
STRING
Yes
---
Полное название компании
Полное название компании без сокращений
name
STRING
Yes
---
Web-адрес
Web-адрес сайта/адрес приложения и тд.
url
STRING
Yes
---
ID вебмастера
Уникальный (числовой) идентификатор веб-мастера с сервиса партнера PHLIP. Данный идентификатор необходим для начисления вам партнерских вознаграждений
affiliate_id
INTEGER
No
---
URL обратной связи
URL для взаимодействия с сервисом ШтрафовНет.ру
callback_url
STRING
No
---
Токен приложения
Токен вашего приложения Android/iOS от системы Firebase Cloud Messaging
fcm_token
STRING
No
---
Фамилия
last_name
STRING
No
---
Имя
first_name
STRING
No
---
Отчество
middle_name
STRING
No
---
Телефон
phone
STRING
No
---
Response headers
Key
Value
Content-Type
application/json
Location
https://api.shtrafovnet.ru/latest/webmasters/accounts
Response parameters
Name
Code
Type
Default
Allowed values
Идентификатор
Уникальный идентификатор аккаунта
id
INTEGER
---
---
Логин
Имя пользователя
username
STRING
---
---
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
---
---
Статус
Состояние аккаунта
status
STRING
new
---
Имя
first_name
STRING
---
---
Фамилия
last_name
STRING
---
---
Отчество
middle_name
STRING
---
---
Телефон
phone
STRING
---
---
Дата создания
Дата регистрации аккаунта
created_at
DATETIME
---
---
FCM_токен
Firebase Cloud Messaging
fcm_token
STRING
---
---
Дата последней активности
Дата последней активности пользователя
last_activity_at
DATETIME
NOW()
---
Curl example:
curl --request POST \ --header 'Content-Type:application/json' \ --data '{"email":"user@test.ru","password":"my_secret","name":"Best Service Full","url":"https:\/\/example.com","affiliate_id":"777","callback_url":"https:\/\/example.com\/postback\/shtrafovnet","fcm_token":"secret-string","last_name":"Иванов","first_name":"Алексей","middle_name":"Петрович","phone":"79005551122"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/account/registration'
Response example:
HTTP/1.1 201 Created Content-Type:application/json Location:https://api.shtrafovnet.ru/latest/webmasters/accounts { "id": "777", "username": "User", "email": "user@test.ru", "status": "new", "first_name": "Алексей", "last_name": "Иванов", "middle_name": "Петрович", "phone": "79005551122", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string", "last_activity_at": "2019-01-01 00:00:00" }

Обновление информации аккаунта

Не обязательно передавать все параметры аккаунта, в теле запроса вы можете указать только необходимые
PATCH /account
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
password
password
STRING
No
---
Фамилия
last_name
STRING
No
---
Имя
first_name
STRING
No
---
Отчество
middle_name
STRING
No
---
Телефон
phone
STRING
No
---
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Идентификатор
Уникальный идентификатор аккаунта
id
INTEGER
---
---
Логин
Имя пользователя
username
STRING
---
---
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
---
---
Статус
Состояние аккаунта
status
STRING
new
---
Имя
first_name
STRING
---
---
Фамилия
last_name
STRING
---
---
Отчество
middle_name
STRING
---
---
Телефон
phone
STRING
---
---
Дата создания
Дата регистрации аккаунта
created_at
DATETIME
---
---
FCM_токен
Firebase Cloud Messaging
fcm_token
STRING
---
---
Дата последней активности
Дата последней активности пользователя
last_activity_at
DATETIME
NOW()
---
Curl example:
curl --request PATCH \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"password":"secret-string","last_name":"Иванов","first_name":"Алексей","middle_name":"Петрович","phone":"79005551122"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/account'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "777", "username": "User", "email": "user@test.ru", "status": "new", "first_name": "Алексей", "last_name": "Иванов", "middle_name": "Петрович", "phone": "79005551122", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string", "last_activity_at": "2019-01-01 00:00:00" }

Восстановление пароля от аккаунта

После выполнения запроса будет сформирован новый пароль для вашего аккаунта и отправлен на электронный адрес указанный при регистрации
POST /account/reset-password
Request headers
Key
Value
Content-Type
application/json
Request parameters
Name
Code
Type
Required?
Allowed values
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
Yes
---
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Сообщение
message
STRING
---
---
Curl example:
curl --request POST \ --header 'Content-Type:application/json' \ --data '{"email":"user@test.ru"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/account/reset-password'
Response example:
HTTP/1.1 201 Created Content-Type:application/json { "message": "New password successfully sent to email" }

Токен доступа

Создание токена

Создание нового токена доступа к ресурсам и услугам сервиса. Токен бессрочный, поэтому нет необходимости запрашивать его перед каждым запросом (положите его в кэш).

Проекту необходимо реализовать автоматическое получения нового токена в случае его невалидности, смены пароля от аккаунта и тд.

POST /tokens
Request headers
Key
Value
Authorization
Basic %base64-encoding of email:password%
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Токен пользователя
Уникальный токен доступа, который должен использоваться в каждом запросе к API
token
STRING
---
---
Curl example:
curl --request POST \ --header 'Authorization:Basic %base64-encoding of email:password%' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/tokens'
Response example:
HTTP/1.1 201 Created Content-Type:application/json { "token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXUyJ9.eyJpZCI6MTg1LCJpYXQiOiIxNDk3NDI5MTUzIn0.fKTZRbGGAEyn2eQbwgSx2FP4UOsC2XvMMw0dlw9qvfyraW725SyBEXqMCs1T9Gd5QaHrf9UBv-Qj6MJY23hpoUooQxDGrA-nX3c-ucF79hnaiPEBFVt6vvfeA8F4-ssOqs4s8ZWrufwARsw2JEN0i4XsVKo57N3P_Oh6TYOmECyUI22qAs2WQlJ585Rb4XKe_HXrwNVjP3rLyu2DLSYKjXPDvMh5Lt0wGZjI3LI2Zlr_ri1DxM41FM-7FuREv-zIFpzK6J-Scij-aInt2OA5nfjGt1b7KEtXLfjd6hYFO29h4nm_wSYmYbTgcYv5dwNSDHnDzSnx0nIQe5ZXxg_m3HiBke01SWhikA-ZDYORQstnrRJRer0nYK8BCZwl-SrRK0aOvO_wl0CaYDD5nigra6JWcKJVoNCDfvvYncp8ag_U6CoPzy-hIluBKEOrtWJotySeO1r_1NQuR5VDna8sqKRWtmFN9vwLx8cf_z2Y-9_gMmQmetQHdjd1lOwE0rLeuKmeppp8HcDKWlGASZRwivu3NCEtkWRmzxcvvFQEJkbjP6zmOSyVoeQOKc2P3lkJ4ou5XlTnx2U_Ga8nIwQOnJ5fnez2YQQ_60TrDWTawErTc2kf8qirtJdJD5UwY-ALqsWbau9pEXurDP8OwW-7m4blmBb9bVXpKSZkSCMwW4A" }

Пользователи

Список пользователей

Получение списка ваших пользователей
GET /users
Query parameters
Name
Code
Type
Allowed values
Статус пользователя
Условие на выборку пользователей веб-мастера по статусу
status
STRING OR ARRAY
new, active, inactive, ban, not_found
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Общее количество пользователей
Общее количество пользователей (по заданным критериям)
total
INTEGER
---
---
Текущее количество пользователей
Текущее количество пользователей в запросе (по заданным критериям)
count
INTEGER
---
---
Пагинация
Объект содержит содержит ключи, указывающие взаимосвязь дополнительных страниц
_links
ARRAY
---
---
Информация о пользователях
Объект содержит информацию о пользователях
users
ARRAY
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users?status=active'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "total": 1, "count": 1, "_links": "https:\/\/api.shtrafovnet.ru\/latest\/webmasters\/users?page=1", "users": { "id": "777", "username": "User", "email": "user@test.ru", "status": "new", "first_name": "Алексей", "last_name": "Иванов", "middle_name": "Петрович", "phone": "79005551122", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string", "last_activity_at": "2019-01-01 00:00:00" } }

Информация о пользователе

Получение сводной информации о пользователе
GET /users/:email
Path parameters
Code
Описание
email
Электронная почта пользователя
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Идентификатор
Уникальный идентификатор аккаунта
id
INTEGER
---
---
Логин
Имя пользователя
username
STRING
---
---
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
---
---
Статус
Состояние аккаунта
status
STRING
new
---
Имя
first_name
STRING
---
---
Фамилия
last_name
STRING
---
---
Отчество
middle_name
STRING
---
---
Телефон
phone
STRING
---
---
Дата создания
Дата регистрации аккаунта
created_at
DATETIME
---
---
FCM_токен
Firebase Cloud Messaging
fcm_token
STRING
---
---
Дата последней активности
Дата последней активности пользователя
last_activity_at
DATETIME
NOW()
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users/:email'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "777", "username": "User", "email": "user@test.ru", "status": "new", "first_name": "Алексей", "last_name": "Иванов", "middle_name": "Петрович", "phone": "79005551122", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string", "last_activity_at": "2019-01-01 00:00:00" }

Транспортные средства пользователя

Список транспортных средств принадлежащих пользователю
GET /users/:email/cars
Path parameters
Code
Описание
email
Электронная почта пользователя
Query parameters
Name
Code
Type
Allowed values
Статус транспортного средства
Условие на выборку штрафов по факту оплаты (можно передать некоторые из значений в массиве)
status
STRING OR ARRAY
new, active, inactive, archived
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Общее количество ТС
Общее количество транспортных средств (по заданным критериям)
total
INTEGER
---
---
Текущее количество ТС
Текущее количество транспортных средств в запросе (по заданным критериям)
count
INTEGER
---
---
Пагинация
Объект содержит содержит ключи, указывающие взаимосвязь дополнительных страниц
_links
ARRAY
---
---
Информация о ТС
Объект содержит информацию о транспортных стредствах
cars
ARRAY
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users/:email/cars?status=active'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "total": 1, "count": 1, "_links": "https:\/\/api.shtrafovnet.ru\/latest\/webmasters\/users\/:email\/cars?page=1", "cars": { "id": "1212", "name": "NISSAN TIIDA", "driverLicense": "00aa000222", "reg": "a001aa777", "cert": "3620848236", "status": "active", "inactiveReason": "data_incorrect", "scannedAt": "2019-01-01 00:00:00", "gisScannedAt": "2019-01-01 00:00:00", "gibddScannedAt": "2019-01-01 00:00:00", "ditScannedAt": "2019-01-01 00:00:00", "createdAt": "2019-01-01 00:00:00", "companyId": "1", "user": "user@test.ru", "verifyGibddStatus": "new", "finesCount": "10", "finesAmount": "1000", "unitId": "a828a501-a293-4ca4-b747-f61b60f24181" } }

Штрафы пользователя

Список нарушений (штрафов) выписанных на все транспортные средства пользователя
GET /users/:email/fines
Path parameters
Code
Описание
email
Электронная почта пользователя
Query parameters
Name
Code
Type
Allowed values
Статус оплаты
Условие на выборку штрафов по факту оплаты (можно передать некоторые из значений в массиве)
paid
STRING OR ARRAY
paid, nopaid, partpaid, all
Документ
Условие на выборку штрафов по документу на который выписано постановление (можно передать некоторые из значений в массиве)
doc
STRING OR ARRAY
sts, vu, passport, rawid, all
Организация
Условие на выборку штрафов по организации выписавшей его (можно передать некоторые из значений в массиве)
org
STRING OR ARRAY
gibdd, ampp, madi, fssp, all
Дата постановления (начало периода)
Условие на выборку штрафов по дате постановления (YYYY-MM-DD)
started
STRING
---
Дата постановления (конец периода)
Условие на выборку штрафов по дате постановления (YYYY-MM-DD)
ended
STRING
---
Дата/время последнего обновления
Условие на выборку штрафов по дате/времени последнего обновления (Пример: 2017-07-10 00:00:00)
update_started
STRING
---
Дата/время последнего обновления
Условие на выборку штрафов по дате/времени последнего обновления (Пример: 2017-07-10 23:59:59)
update_ended
STRING
---
Дата/время добавления в систему
Условие на выборку штрафов по дате/времени добавления его в систему ШтрафовНет.ру (Пример: 2017-07-10 00:00:00)
create_started
STRING
---
Дата/время добавления в систему
Условие на выборку штрафов по дате/времени добавления его в систему ШтрафовНет.ру (Пример: 2017-07-10 23:59:59)
create_ended
STRING
---
Транспортные средства
Условие на выборку штрафов по транспортным средствам
cars
ARRAY
---
Номер постановления
Условие на выборку штрафов по номеру постановления (УИН)
uins
ARRAY
---
Часть номера постановления
Условие на выборку штрафов по части номера постановления
uin_search
STRING
---
Фильтрация данных
filters
ARRAY
discount, expired, pics
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Общее количество штрафов
Общее количество штрафов (по заданным критериям)
total
INTEGER
---
---
Текущее количество штрафов
Текущее количество штрафов в запросе (по заданным критериям)
count
INTEGER
---
---
Пагинация
Объект содержит содержит ключи, указывающие взаимосвязь дополнительных страниц
_links
ARRAY
---
---
Информация о штрафах
Объект содержит информацию о штрафах
fines
ARRAY
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users/:email/fines?paid=paid&doc=sts&org=gibdd&started=2019-01-01&ended=2019-10-01&update_started=2017-07-10+00%3A00%3A00&update_ended=2017-07-10+23%3A59%3A59&create_started=2017-07-10+00%3A00%3A00&create_ended=2017-07-10+23%3A59%3A59&cars=2017-07-10+23%3A59%3A59'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "total": 1, "count": 1, "_links": "https:\/\/api.shtrafovnet.ru\/latest\/webmasters\/users\/:email\/fines?page=1", "fines": { "id": "1", "postNumber": "18810136161108008161", "name": null, "postedAt": "2019-01-01", "amount": "500", "actuallyPaidAmount": null, "actuallyPaidAt": "2019-01-01 00:00:00", "createdAt": "2019-01-01 00:00:00", "discountDate": "2019-01-01 23:59:59", "discountSize": "50", "wireKbk": "18811630020016000140", "wireUsername": "УФК по Воронежской обл. (ГУ МВД России по Воронежской области)", "wireOktmo": "20701000", "wireBankBik": "042007001", "wireBankAccount": "40101810500000010004", "wireBankName": "Отделение по Воронежской области ГУ ЦБ РФ по ЦФО (Отделение Воронеж)", "wireKpp": "366601001", "wireInn": "3666026374", "location": null, "locationLat": null, "locationLong": null, "koapCode": "12.9ч.2", "enablePics": "true", "loadPics": "1", "violationAt": "2019-01-01 00:00:00", "isGis": "true", "isGibdd": "true", "isDit": "true", "isUin": "true", "status": "check", "inactiveReason": "another_car", "pics": { "url": "https:\/\/s3.eu-central-1.amazonaws.com\/shtrafovnetru\/pics\/2017\/02\/14\/09\/cad29d806521c20c9f2aeb98d5ec5445.jpg" }, "docType": "sts", "docNumber": "3620848239", "docViolator": null, "updatedAt": "2019-01-01 00:00:00", "updatedMask": "0011", "fsspIp": "", "fsspUin": "", "isPaidMarked": "", "isPaid": "true", "paidStatus": "paid", "koapText": "", "isExpired": "true", "expiredDays": "", "penaltyDate": "2019-01-01 23:59:59", "discountDaysLeft": "0", "isDiscount": "false", "totalAmount": "500", "car": "1003726", "carName": "KIA OPTIMA", "carCert": "3620848239", "carReg": "р668хо36", "whoseOrg": "gibdd", "paymentOrderUrl": "https:\/\/shtrafovnet.ru\/payment_report?operation_id=12345&uin=1880000000000001", "divisionName": "Центр видеофиксации ГИБДД ГУ МВД России по Воронежской области", "divisionCode": "1120951", "paidAmount": "0.00", "unitId": "a828a501-a293-4ca4-b747-f61b60f24181", "companyId": "200" } }

Платежи пользователя

Список созданных/оплаченных счетов на оплату штрафов пользователя
GET /users/:email/invoices
Path parameters
Code
Описание
email
Электронная почта пользователя
Query parameters
Name
Code
Type
Allowed values
Статус платежа
Условие на выборку счетов по их статусу
status
STRING OR ARRAY
new, process, done, fail, cancel
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Общее количество счетов
Общее количество счетов (по заданным критериям)
total
INTEGER
---
---
Текущее количество счетов
Текущее количество счетов в запросе (по заданным критериям)
count
INTEGER
---
---
Пагинация
Объект содержит содержит ключи, указывающие взаимосвязь дополнительных страниц
_links
ARRAY
---
---
Информация о платежах
Объект содержит информацию о платежах
invoices
ARRAY
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users/:email/invoices?status=new'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "total": 1, "count": 1, "_links": "https:\/\/api.shtrafovnet.ru\/latest\/webmasters\/users\/:email\/invoices?page=1", "invoices": { "id": "777", "amount": "500", "totalAmount": "500", "status": "new", "wireSurname": "Иванов", "wireName": "Алексей", "wirePatronymic": "Алексеевич", "createdAt": "2019-01-01 00:00:00", "paidAt": "2019-01-01 00:00:00", "orders": null, "payUrl": null, "user": "email@user.com", "commissionAmount": null } }

Регистрация нового пользователя

Мы не заинтересованы в использовании данных ваших пользователей в корыстных целях, так что вы можете указывать синтетические данные, главное, чтобы вы смогли их легко идентифицировать. Например: YOUR_USER_ID@YOUR_DOMAIN
POST /users
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
Yes
---
Логин
Имя пользователя
username
STRING
No
---
Токен приложения
Токен вашего приложения Android/iOS от системы Firebase Cloud Messaging
fcmToken
STRING
No
---
Фамилия
last_name
STRING
No
---
Имя
first_name
STRING
No
---
Отчество
middle_name
STRING
No
---
Телефон
phone
STRING
No
---
Response headers
Key
Value
Content-Type
application/json
Location
https://api.shtrafovnet.ru/latest/webmasters/users/:id
Response parameters
Name
Code
Type
Default
Allowed values
Идентификатор
Уникальный идентификатор аккаунта
id
INTEGER
---
---
Логин
Имя пользователя
username
STRING
---
---
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
---
---
Статус
Состояние аккаунта
status
STRING
new
---
Имя
first_name
STRING
---
---
Фамилия
last_name
STRING
---
---
Отчество
middle_name
STRING
---
---
Телефон
phone
STRING
---
---
Дата создания
Дата регистрации аккаунта
created_at
DATETIME
---
---
FCM_токен
Firebase Cloud Messaging
fcm_token
STRING
---
---
Дата последней активности
Дата последней активности пользователя
last_activity_at
DATETIME
NOW()
---
Curl example:
curl --request POST \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"email":"user@test.ru","username":"User","fcmToken":"my_secret","last_name":"Иванов","first_name":"Алексей","middle_name":"Петрович","phone":"79005551122"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users'
Response example:
HTTP/1.1 201 Created Content-Type:application/json Location:https://api.shtrafovnet.ru/latest/webmasters/users/:id { "id": "777", "username": "User", "email": "user@test.ru", "status": "new", "first_name": "Алексей", "last_name": "Иванов", "middle_name": "Петрович", "phone": "79005551122", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string", "last_activity_at": "2019-01-01 00:00:00" }

Обновление данных о пользователе

Данный метод позволяет изменить только необходимые поля не передавая всю информацию о пользователе
PATCH /users/:email
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
Логин
Имя пользователя
username
STRING
No
---
Токен приложения
Токен вашего приложения Android/iOS от системы Firebase Cloud Messaging
fcm_token
STRING
No
---
Фамилия
last_name
STRING
No
---
Имя
first_name
STRING
No
---
Отчество
middle_name
STRING
No
---
Телефон
phone
STRING
No
---
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Идентификатор
Уникальный идентификатор аккаунта
id
INTEGER
---
---
Логин
Имя пользователя
username
STRING
---
---
E-mail
Адрес электронной почты (используется для доступа к аккаунту)
email
STRING
---
---
Статус
Состояние аккаунта
status
STRING
new
---
Имя
first_name
STRING
---
---
Фамилия
last_name
STRING
---
---
Отчество
middle_name
STRING
---
---
Телефон
phone
STRING
---
---
Дата создания
Дата регистрации аккаунта
created_at
DATETIME
---
---
FCM_токен
Firebase Cloud Messaging
fcm_token
STRING
---
---
Дата последней активности
Дата последней активности пользователя
last_activity_at
DATETIME
NOW()
---
Curl example:
curl --request PATCH \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"username":"User","fcm_token":"secret-string","last_name":"Иванов","first_name":"Алексей","middle_name":"Петрович","phone":"79005551122"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users/:email'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "777", "username": "User", "email": "user@test.ru", "status": "new", "first_name": "Алексей", "last_name": "Иванов", "middle_name": "Петрович", "phone": "79005551122", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string", "last_activity_at": "2019-01-01 00:00:00" }

Удаление пользователя

Удаление пользователя веб-мастера. Метод всегда возвращает пустое тело ответа.
DELETE /users/:email
Path parameters
Code
Описание
email
Электронная почта пользователя
Request headers
Key
Value
Authorization
Bearer $TOKEN
Curl example:
curl --request DELETE \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/users/:email'
Response example:
HTTP/1.1 204 No Content

Транспорт

Управление автопарком

Получение информации о ТС

Получение информации о транспортном средстве
GET /cars/:id
Path parameters
Code
Описание
id
Уникальный идентификатор транспортного средства
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID транспортного средства
Уникальный идентификатор транспортного средства в системе ШтрафовНет.ру
id
INTEGER
---
---
Название ТС
Название/модель транспортного средства
name
STRING
---
---
Номер ВУ
Номер водительского удостоверения
driverLicense
STRING
---
---
Госномер
Номер государственного регистрационного знака транспортного средства
reg
STRING
---
---
Свидетельство о регистрации
Номер свидетельства о регистрации транспортного средства
cert
STRING
---
---
Статус
Статус транспортного средства в системе ШтрафовНет.ру
status
STRING
new
new, active, inactive, archived, deleted
Причина нактивности
Причина нактивности ТС в системе ШтрафовНет.ру
inactiveReason
STRING
---
gibdd_verify, data_incorrect
Дата последней проверки в ГИС
Дата/время последней проверки транспортного средства в системе ГИС ГМП
gisScannedAt
DATETIME
---
---
Дата последней проверки в ГИБДД
Дата/время последней проверки транспортного средства в системе ГИБДД
gibddScannedAt
DATETIME
---
---
Дата последней проверки в ДИТ
Дата/время последней проверки транспортного средства в системе московского департамента автотранспорта
ditScannedAt
DATETIME
---
---
Дата добавления ТС
Дата/время добавления транспортного средства в систему
createdAt
DATETIME
---
---
E-mail
Адрес электронной почты пользователя
email
STRING
---
---
Количество штрафов
Количество неоплаченных штрафов ТС
finesCount
INTEGER
---
---
Сумма задолженности
Сумма задолженности по штрафам ТС
finesAmount
FLOAT
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/cars/:id'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "1212", "name": "NISSAN TIIDA", "driverLicense": "00aa000222", "reg": "a001aa777", "cert": "3620848236", "status": "active", "inactiveReason": "data_incorrect", "gisScannedAt": "2019-01-01 00:00:00", "gibddScannedAt": "2019-01-01 00:00:00", "ditScannedAt": "2019-01-01 00:00:00", "createdAt": "2019-01-01 00:00:00", "email": "user@test.ru", "finesCount": "10", "finesAmount": "1000" }

Новое транспортное средство

Добавление нового транспортного средства.

Транспортные средства добавленные без владельца (пользователя) или не привязанные в последующем, не обновляются. Чтобы получать в дальнейшем новые штрафы ТС (в автоматическом режиме), необходимо чтобы за транспортным средством был закреплен пользователь. Транспортные средства без владельца удаляются автоматически через неделю.

Максимальное количество транспорта у пользователя не может превышать 4 ТС (это более чем достаточно). Если пользователю необходимо больше, то это скорее всего владелец автопарка.

Для таких пользователей у нас есть отдельных сервис ШтрафовНет.ру для бизнеса.
Вы можете предложить данный сервис своим пользователям, а самим неплохо подзаработать на партнерской программе.
POST /cars
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
Свидетельство о регистрации
Номер свидетельства о регистрации транспортного средства
cert
STRING
Yes
---
Госномер
Номер государственного регистрационного знака транспортного средства
reg
STRING
Yes
---
Номер ВУ
Номер водительского удостоверения
driverLicense
STRING
No
---
Название ТС
Название/модель транспортного средства
name
STRING
No
---
E-mail
Адрес электронной почты пользователя
email
STRING
No
---
Response headers
Key
Value
Content-Type
application/json
Location
https://api.shtrafovnet.ru/latest/webmasters/cars/:id
Response parameters
Name
Code
Type
Default
Allowed values
ID транспортного средства
Уникальный идентификатор транспортного средства в системе ШтрафовНет.ру
id
INTEGER
---
---
Название ТС
Название/модель транспортного средства
name
STRING
---
---
Номер ВУ
Номер водительского удостоверения
driverLicense
STRING
---
---
Госномер
Номер государственного регистрационного знака транспортного средства
reg
STRING
---
---
Свидетельство о регистрации
Номер свидетельства о регистрации транспортного средства
cert
STRING
---
---
Статус
Статус транспортного средства в системе ШтрафовНет.ру
status
STRING
new
new, active, inactive, archived, deleted
Причина нактивности
Причина нактивности ТС в системе ШтрафовНет.ру
inactiveReason
STRING
---
gibdd_verify, data_incorrect
Дата последней проверки в ГИС
Дата/время последней проверки транспортного средства в системе ГИС ГМП
gisScannedAt
DATETIME
---
---
Дата последней проверки в ГИБДД
Дата/время последней проверки транспортного средства в системе ГИБДД
gibddScannedAt
DATETIME
---
---
Дата последней проверки в ДИТ
Дата/время последней проверки транспортного средства в системе московского департамента автотранспорта
ditScannedAt
DATETIME
---
---
Дата добавления ТС
Дата/время добавления транспортного средства в систему
createdAt
DATETIME
---
---
E-mail
Адрес электронной почты пользователя
email
STRING
---
---
Количество штрафов
Количество неоплаченных штрафов ТС
finesCount
INTEGER
---
---
Сумма задолженности
Сумма задолженности по штрафам ТС
finesAmount
FLOAT
---
---
Curl example:
curl --request POST \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"cert":"3620848236","reg":"a001aa777","driverLicense":"00aa000222","name":"NISSAN TIIDA","email":"user@test.ru"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/cars'
Response example:
HTTP/1.1 201 Created Content-Type:application/json Location:https://api.shtrafovnet.ru/latest/webmasters/cars/:id { "id": "1212", "name": "NISSAN TIIDA", "driverLicense": "00aa000222", "reg": "a001aa777", "cert": "3620848236", "status": "active", "inactiveReason": "data_incorrect", "gisScannedAt": "2019-01-01 00:00:00", "gibddScannedAt": "2019-01-01 00:00:00", "ditScannedAt": "2019-01-01 00:00:00", "createdAt": "2019-01-01 00:00:00", "email": "user@test.ru", "finesCount": "10", "finesAmount": "1000" }

Обновление транспортного средства

Обновление данных о транспортном средстве.
Данный метод позволяет изменить только необходимые поля не передавая всю информацию о транспортном средстве.

По религиозным соображениям изменение СТС и госномера, а так же ВУ не допускается, но вы можете удалить ТС и добавить новое.

PATCH /cars/:id
Path parameters
Code
Описание
id
Уникальный идентификатор транспортного средства
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
Название ТС
Название/модель транспортного средства
name
STRING
No
---
E-mail
Адрес электронной почты пользователя
email
STRING
No
---
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID транспортного средства
Уникальный идентификатор транспортного средства в системе ШтрафовНет.ру
id
INTEGER
---
---
Название ТС
Название/модель транспортного средства
name
STRING
---
---
Номер ВУ
Номер водительского удостоверения
driverLicense
STRING
---
---
Госномер
Номер государственного регистрационного знака транспортного средства
reg
STRING
---
---
Свидетельство о регистрации
Номер свидетельства о регистрации транспортного средства
cert
STRING
---
---
Статус
Статус транспортного средства в системе ШтрафовНет.ру
status
STRING
new
new, active, inactive, archived, deleted
Причина нактивности
Причина нактивности ТС в системе ШтрафовНет.ру
inactiveReason
STRING
---
gibdd_verify, data_incorrect
Дата последней проверки в ГИС
Дата/время последней проверки транспортного средства в системе ГИС ГМП
gisScannedAt
DATETIME
---
---
Дата последней проверки в ГИБДД
Дата/время последней проверки транспортного средства в системе ГИБДД
gibddScannedAt
DATETIME
---
---
Дата последней проверки в ДИТ
Дата/время последней проверки транспортного средства в системе московского департамента автотранспорта
ditScannedAt
DATETIME
---
---
Дата добавления ТС
Дата/время добавления транспортного средства в систему
createdAt
DATETIME
---
---
E-mail
Адрес электронной почты пользователя
email
STRING
---
---
Количество штрафов
Количество неоплаченных штрафов ТС
finesCount
INTEGER
---
---
Сумма задолженности
Сумма задолженности по штрафам ТС
finesAmount
FLOAT
---
---
Curl example:
curl --request PATCH \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"name":"NISSAN TIIDA","email":"user@test.ru"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/cars/:id'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "1212", "name": "NISSAN TIIDA", "driverLicense": "00aa000222", "reg": "a001aa777", "cert": "3620848236", "status": "active", "inactiveReason": "data_incorrect", "gisScannedAt": "2019-01-01 00:00:00", "gibddScannedAt": "2019-01-01 00:00:00", "ditScannedAt": "2019-01-01 00:00:00", "createdAt": "2019-01-01 00:00:00", "email": "user@test.ru", "finesCount": "10", "finesAmount": "1000" }

Удаление транспортного средства

Удаление транспортного средства. Метод всегда возвращает пустое тело ответа.
DELETE /cars/:id
Path parameters
Code
Описание
id
Уникальный идентификатор транспортного средства
Request headers
Key
Value
Authorization
Bearer $TOKEN
Curl example:
curl --request DELETE \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/cars/:id'
Response example:
HTTP/1.1 204 No Content

Штрафы транспортного средства

Список нарушений (штрафов) выписанных на транспортное средство
GET /cars/:id/fines
Path parameters
Code
Описание
id
Уникальный идентификатор транспортного средства
Query parameters
Name
Code
Type
Allowed values
Статус оплаты
Условие на выборку штрафов по факту оплаты (можно передать некоторые из значений в массиве)
paid
STRING OR ARRAY
paid, nopaid, partpaid, all
Документ
Условие на выборку штрафов по документу на который выписано постановление (можно передать некоторые из значений в массиве)
doc
STRING OR ARRAY
sts, vu, passport, rawid, all
Организация
Условие на выборку штрафов по организации выписавшей его (можно передать некоторые из значений в массиве)
org
STRING OR ARRAY
gibdd, ampp, madi, fssp, all
Получаемые поля штрафа
Получаемые поля штрафа (при указании будут возвращены только выбранные поля + поле id). Необходимо, например, при обходе всего списка штрафов или для сокрашения объема получаемого трафика
fields
ARRAY
Любые поля штрафа
Дата постановления (начало периода)
Условие на выборку штрафов по дате постановления (YYYY-MM-DD)
started
STRING
---
Дата постановления (конец периода)
Условие на выборку штрафов по дате постановления (YYYY-MM-DD)
ended
STRING
---
Дата/время последнего обновления
Условие на выборку штрафов по дате/времени последнего обновления (Пример: 2017-07-10 00:00:00)
update_started
STRING
---
Дата/время последнего обновления
Условие на выборку штрафов по дате/времени последнего обновления (Пример: 2017-07-10 23:59:59)
update_ended
STRING
---
Дата/время добавления в систему
Условие на выборку штрафов по дате/времени добавления его в систему ШтрафовНет.ру (Пример: 2017-07-10 00:00:00)
create_started
STRING
---
Дата/время добавления в систему
Условие на выборку штрафов по дате/времени добавления его в систему ШтрафовНет.ру (Пример: 2017-07-10 23:59:59)
create_ended
STRING
---
Номер постановления
Условие на выборку штрафов по номеру постановления (УИН)
uins
ARRAY
---
Часть номера постановления
Условие на выборку штрафов по части номера постановления
uin_search
STRING
---
Фильтрация данных
filters
ARRAY
discount, expired, pics
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Общее количество штрафов
Общее количество штрафов (по заданным критериям)
total
INTEGER
---
---
Текущее количество штрафов
Текущее количество штрафов в запросе (по заданным критериям)
count
INTEGER
---
---
Пагинация
Объект содержит содержит ключи, указывающие взаимосвязь дополнительных страниц
_links
ARRAY
---
---
Информация о штрафах
Объект содержит информацию о штрафах
fines
ARRAY
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/cars/:id/fines?paid=paid&doc=sts&org=gibdd&fields=gibdd&started=2019-01-01&ended=2019-10-01&update_started=2017-07-10+00%3A00%3A00&update_ended=2017-07-10+23%3A59%3A59&create_started=2017-07-10+00%3A00%3A00&create_ended=2017-07-10+23%3A59%3A59&uins=12345678901234567890'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "total": 1, "count": 1, "_links": "https:\/\/api.shtrafovnet.ru\/latest\/webmasters\/cars\/:id\/fines?page=1", "fines": { "id": "1", "postNumber": "18810136161108008161", "name": null, "postedAt": "2019-01-01", "amount": "500", "actuallyPaidAmount": null, "actuallyPaidAt": "2019-01-01 00:00:00", "createdAt": "2019-01-01 00:00:00", "discountDate": "2019-01-01 23:59:59", "discountSize": "50", "wireKbk": "18811630020016000140", "wireUsername": "УФК по Воронежской обл. (ГУ МВД России по Воронежской области)", "wireOktmo": "20701000", "wireBankBik": "042007001", "wireBankAccount": "40101810500000010004", "wireBankName": "Отделение по Воронежской области ГУ ЦБ РФ по ЦФО (Отделение Воронеж)", "wireKpp": "366601001", "wireInn": "3666026374", "location": null, "locationLat": null, "locationLong": null, "koapCode": "12.9ч.2", "enablePics": "true", "loadPics": "1", "violationAt": "2019-01-01 00:00:00", "isGis": "true", "isGibdd": "true", "isDit": "true", "isUin": "true", "status": "check", "inactiveReason": "another_car", "pics": { "url": "https:\/\/s3.eu-central-1.amazonaws.com\/shtrafovnetru\/pics\/2017\/02\/14\/09\/cad29d806521c20c9f2aeb98d5ec5445.jpg" }, "docType": "sts", "docNumber": "3620848239", "docViolator": null, "updatedAt": "2019-01-01 00:00:00", "updatedMask": "0011", "fsspIp": "", "fsspUin": "", "isPaidMarked": "", "isPaid": "true", "paidStatus": "paid", "koapText": "", "isExpired": "true", "expiredDays": "", "penaltyDate": "2019-01-01 23:59:59", "discountDaysLeft": "0", "isDiscount": "false", "totalAmount": "500", "car": "1003726", "carName": "KIA OPTIMA", "carCert": "3620848239", "carReg": "р668хо36", "whoseOrg": "gibdd", "paymentOrderUrl": "https:\/\/shtrafovnet.ru\/payment_report?operation_id=12345&uin=1880000000000001", "divisionName": "Центр видеофиксации ГИБДД ГУ МВД России по Воронежской области", "divisionCode": "1120951", "paidAmount": "0.00", "unitId": "a828a501-a293-4ca4-b747-f61b60f24181", "companyId": "200" } }

Компания

Управление компанией

Информация о компании

Получение сводной информации о компании
GET /company
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID компании
Уникальный идентификатор компании в системе ШтрафовНет.ру
id
INTEGER
---
---
Наименование компании
display_name
STRING
---
---
Полное название компании
Полное название компании без сокращений
name
STRING
---
---
Сокращенное название компании
short_name
STRING
---
---
Web-адрес
Web-адрес сайта/адрес приложения и тд.
url
STRING
---
---
ID вебмастера
Уникальный (числовой) идентификатор веб-мастера с сервиса партнера PHLIP. Данный идентификатор необходим для начисления вам партнерских вознаграждений
affiliate_id
INTEGER
---
---
Состояние аккаунта
status
STRING
active
active, inactive
Дата регистрации аккаунта
created_at
DATETIME
NOW()
---
Токен приложения
Токен вашего приложения Android/iOS от системы Firebase Cloud Messaging
fcm_token
STRING
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/company'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "9267", "display_name": "Best Service", "name": "Best Service Full", "short_name": "BSC", "url": "https:\/\/example.com", "affiliate_id": "777", "status": "active", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string" }

Обновление информации компании

Обновление информации о компании
PATCH /company
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
Наименование компании
display_name
STRING
No
---
Web-адрес
Web-адрес сайта/адрес приложения и тд.
url
STRING
No
---
ID вебмастера
Уникальный (числовой) идентификатор веб-мастера с сервиса партнера PHLIP. Данный идентификатор необходим для начисления вам партнерских вознаграждений
affiliate_id
INTEGER
No
---
URL обратной связи
URL для взаимодействия с сервисом ШтрафовНет.ру
callback_url
STRING
No
---
Токен приложения
Токен вашего приложения Android/iOS от системы Firebase Cloud Messaging
fcm_token
STRING
No
---
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID компании
Уникальный идентификатор компании в системе ШтрафовНет.ру
id
INTEGER
---
---
Наименование компании
display_name
STRING
---
---
Полное название компании
Полное название компании без сокращений
name
STRING
---
---
Сокращенное название компании
short_name
STRING
---
---
Web-адрес
Web-адрес сайта/адрес приложения и тд.
url
STRING
---
---
ID вебмастера
Уникальный (числовой) идентификатор веб-мастера с сервиса партнера PHLIP. Данный идентификатор необходим для начисления вам партнерских вознаграждений
affiliate_id
INTEGER
---
---
Состояние аккаунта
status
STRING
active
active, inactive
Дата регистрации аккаунта
created_at
DATETIME
NOW()
---
Токен приложения
Токен вашего приложения Android/iOS от системы Firebase Cloud Messaging
fcm_token
STRING
---
---
Curl example:
curl --request PATCH \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"display_name":"Best Service","url":"https:\/\/example.com","affiliate_id":"777","callback_url":"https:\/\/example.com\/postback\/shtrafovnet","fcm_token":"secret-string"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/company'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "9267", "display_name": "Best Service", "name": "Best Service Full", "short_name": "BSC", "url": "https:\/\/example.com", "affiliate_id": "777", "status": "active", "created_at": "2019-01-01 00:00:00", "fcm_token": "secret-string" }

Штрафы

Информация о штрафе

Подробная информация о выписанном постановлении
GET /fines/:id
Path parameters
Code
Описание
id
Уникальный идентификатор штрафа
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID штрафа
Уникальный идентификатор штрафа в системе ШтрафовНет.ру
id
INTEGER
---
---
Номер постановления
Уникальный идентификатор начисления
postNumber
STRING
---
---
Название
Строка содержащая краткую информацию о постановлении
name
STRING
---
---
Дата постановления
Дата вынесения постановления (она не всегда совпадает с реальной датой нарушения)
postedAt
DATETIME
---
---
Сумма штрафа
Сумма штрафа (в рублях)
amount
INTEGER
0
---
Дата создания штрафа
Дата создания штрафа в системе ШтрафовНет.ру
createdAt
DATETIME
---
---
Дата скидки
Дата до которой действует скидка на оплату штрафа (включительно до 23:59)
discountDate
DATETIME
---
---
Размер скидки
Размер скидки в процентах (при наличии)
discountSize
INTEGER
0
---
КБК
КБК (Код бюджетной классификации)
wireKbk
STRING
---
---
Получатель платежа
Наименование получателя платежа
wireUsername
STRING
---
---
ОКТМО
Общероссийский классификатор территорий муниципальных образований
wireOktmo
STRING
---
---
БИК банка получателя
БИК банка получателя платежа
wireBankBik
STRING
---
---
Номер счёта получателя
Расчетный счет получателя платежа
wireBankAccount
STRING
---
---
Название банка
Название банка получателя платежа
wireBankName
STRING
---
---
КПП
КПП получателя платежа
wireKpp
STRING
---
---
ИНН
ИНН получателя платежа
wireInn
STRING
---
---
Место совершения павонарушения
Описание места совершения правонарушения
location
STRING
---
---
Географические координаты (широта)
Географические координаты (широта) места нарушения
locationLat
STRING
---
---
Географические координаты (долгота)
Географические координаты (долгота) места нарушения
locationLong
STRING
---
---
Наименование статьи КОАП
Наименование статьи КОАП
koapCode
STRING
---
---
Флаг наличия изображений
Флаг указывающий о наличии для данного постановления изображений правонарушения
enablePics
BOOLEAN
---
true, false
Статус загрузки изображений
0 — Изображения правонарушения поставлены в очередь на загрузку (если имеются); 1 — Изображения успешно загружены; 2 — Не удалось получить фотографии правонарушения. Попытки загрузки продолжаются. (Это чаще всего случается при обращении серверов ГИБДД за фотографиями к региональным подразделениям); 3 — После многочисленных попыток загрузки изображений правонарушения, так и не удалось их получить.
loadPics
INTEGER
0
0, 1, 2, 3
Дата и время правонарушения
Реальная дата и время когда было совершено правонарушение
violationAt
DATETIME
---
---
Флаг ГИС ГМП
Флаг информирующий о том, что штраф получен в системе ГИС ГМП
isGis
BOOLEAN
---
true, false
Флаг ГИБДД
Флаг информирующий о том, что штраф получен в системе ГИБДД
isGibdd
BOOLEAN
---
true, false
Флаг ДИТ
Флаг информирующий о том, что штраф получен в системе московского департамента автотранспорта
isDit
BOOLEAN
---
true, false
isUin
BOOLEAN
---
true, false
Статус штрафа
status
STRING
check
check, active, inactive, deleted
Причина неактивности штрафа
inactiveReason
STRING
---
another_car, not_found, incorrect
Список изображений
Список изображений правонарушения доступных для данного постановления
pics
STRING
---
---
Тип документа
Тип документа на который выписано постановление
docType
STRING
---
sts, vu, inn, rawid, passport, snils
Номер документа
Номер документа на который выписано постановление
docNumber
STRING
---
---
Нарушитель
Фамилия Имя Отчество нарушителя или наименование организации
docViolator
STRING
---
---
Дата/время последнего изменения
Дата/время последнего изменения штрафа (создание, статус оплаты, детали, фотоматериалы)
updatedAt
DATETIME
---
---
Причина последнего обновления штрафа
Вспомогательный параметр, отражающий причину последнего обновления штрафа. Каждый символ отражает факт обновления/неизменности определенного блока информации о штрафе. Первый символ (если 1), указывает, что это новый штраф. Второй символ (если 1), указывает, что состояние штрафа было изменено (оплачен). Третий символ (если 1), указывает, что у штрафа обновилась дополнительная информация (например: статья КОАП). Четвертый символ (если 1), указывает, что у штрафа появились фотографии фотофиксации правонарушения.
updatedMask
STRING
---
---
fsspIp
STRING
---
---
fsspUin
STRING
---
---
isPaidMarked
BOOLEAN
---
true, false
Текущие состояние оплаты постановления
Текущие состояние оплаты постановления (paid - полностью оплачен, nopaid - неоплачен, partpaid - частичная оплата/переплата штрафа)
paidStatus
STRING
---
paid, nopaid, partpaid
Статья КОАП
Краткое описание статьи КОАП
koapText
STRING
---
---
Флаг неоплаты в 70-ти дневный период
Флаг информирующий о том, что штраф не оплачен в 70-ти дневный период
isExpired
BOOLEAN
---
true, false
Количество дней просрочки
Количество дней на которые просрочена оплата штрафа
expiredDays
INTEGER
---
---
Дата, передачи в службу ФССП
Дата, после которой штраф будет передан в службу ФССП (70 дней с момента выставления постановления)
penaltyDate
DATETIME
---
---
Количество дней оставшихся на оплату штрафа со скидкой
Количество дней оставшихся на оплату штрафа со скидкой
discountDaysLeft
INTEGER
---
---
Возможность оплатить со скидкой
Флаг информирующий о возможности оплатить штраф со скидкой
isDiscount
BOOLEAN
---
true, false
Итоговая сумма штрафа к оплате
Итоговая сумма штрафа к оплате с учетом всевозможных скидок (в рублях)
totalAmount
INTEGER
---
---
ID транспортного средства
Уникальный идентификатор транспортного средства
car
INTEGER
---
---
Название ТС
Название транспортного средства
carName
STRING
---
---
СТС
Свидетельство о регистрации транспортного средства
carCert
STRING
---
---
Госномер ТС
Номер государственного регистрационного знака транспортного средства
carReg
STRING
---
---
Организация постановления
Организация, которой принадлежит данное постановление
whoseOrg
STRING
---
gibdd, ampp, madi, fssp
Ссылка на PDF-квитанцию
Ссылка на PDF-квитанцию (при успешной оплате через сервис ШтрафовНет.ру)
paymentOrderUrl
STRING
---
---
Администратор начисления
Наименование администратора начисления (подразделение ГИБДД РФ)
divisionName
STRING
---
---
Код подразделения ГИБДД
Уникальный код подразделения ГИБДД
divisionCode
STRING
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/fines/:id'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "1", "postNumber": "18810136161108008161", "postedAt": "2019-01-01", "amount": "500", "createdAt": "2019-01-01 00:00:00", "discountDate": "2019-01-01 23:59:59", "discountSize": "50", "wireKbk": "18811630020016000140", "wireUsername": "УФК по Воронежской обл. (ГУ МВД России по Воронежской области)", "wireOktmo": "20701000", "wireBankBik": "042007001", "wireBankAccount": "40101810500000010004", "wireBankName": "Отделение по Воронежской области ГУ ЦБ РФ по ЦФО (Отделение Воронеж)", "wireKpp": "366601001", "wireInn": "3666026374", "koapCode": "12.9ч.2", "enablePics": "true", "loadPics": "1", "violationAt": "2019-01-01 00:00:00", "isGis": "true", "isGibdd": "true", "isDit": "true", "isUin": "true", "status": "check", "inactiveReason": "another_car", "pics": "https:\/\/s3.eu-central-1.amazonaws.com\/shtrafovnetru\/pics\/2017\/02\/14\/09\/cad29d806521c20c9f2aeb98d5ec5445.jpg", "docType": "sts", "docNumber": "3620848239", "updatedAt": "2019-01-01 00:00:00", "updatedMask": "0011", "paidStatus": "paid", "isExpired": "true", "penaltyDate": "2019-01-01 23:59:59", "isDiscount": "false", "totalAmount": "500", "car": "1003726", "carName": "KIA OPTIMA", "carCert": "3620848239", "carReg": "р668хо36", "whoseOrg": "gibdd", "paymentOrderUrl": "https:\/\/shtrafovnet.ru\/payment_report?operation_id=12345&uin=1880000000000001", "divisionName": "Центр видеофиксации ГИБДД ГУ МВД России по Воронежской области", "divisionCode": "1120951" }

Проверка штрафов

Создание задачи на проверку штрафов

Создание задачи на проверку штрафов для выбранного транспортного средства.

По техническим причинам, мы не можем сразу, при запросе, отдать данные о штрафах, поэтому создается задача и после получения через некоторое время (обычно ~30-60 секунд в зависимости от количества штрафов и медиаматериалов) положительного ответа, сделать запрос на получение штрафов ТС.

POST /scan
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
ID транспортного средства
Уникальный идентификатор транспортного средства. Обязательный
car
INTEGER
Yes
---
Response headers
Key
Value
Content-Type
application/json
Location
https://api.shtrafovnet.ru/latest/webmasters/scan/:id
Response parameters
Name
Code
Type
Default
Allowed values
ID задачи
Уникальный идентификатор задачи по проверке штрафов транспортного средства
id
INTEGER
---
---
Car ID
Уникальный идентификатор проверяемого транспортного средства
car
INTEGER
---
---
Статус задачи
Статус получения новых штрафов
status
STRING
process
process, done, fail, skip
Дата/время создания задачи
createdAt
STRING
---
---
Curl example:
curl --request POST \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"car":"777"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/scan'
Response example:
HTTP/1.1 201 Created Content-Type:application/json Location:https://api.shtrafovnet.ru/latest/webmasters/scan/:id { "id": "777", "car": "20", "status": "process", "createdAt": "2019-01-01 00:00:00" }

Статус проверки

Запрос статуса задачи по проверке штрафов транспортного средства.

Не делайте слишком частые запросы, оптимальное время запроса, каждые 10-15 секунд (после первых 30 секунд ожидания).

POST /scan/:id
Path parameters
Code
Описание
id
Уникальный идентификатор задачи
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID задачи
Уникальный идентификатор задачи по проверке штрафов транспортного средства
id
INTEGER
---
---
Car ID
Уникальный идентификатор проверяемого транспортного средства
car
INTEGER
---
---
Статус задачи
Статус получения новых штрафов
status
STRING
process
process, done, fail, skip
Дата/время создания задачи
createdAt
STRING
---
---
Curl example:
curl --request POST \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/scan/:id'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "777", "car": "20", "status": "process", "createdAt": "2019-01-01 00:00:00" }

Оплата штрафов

Список платежей

Получение списка платежей
GET /invoices
Query parameters
Name
Code
Type
Allowed values
Статус платежа
Условие на выборку счетов веб-мастера по статусу
status
STRING OR ARRAY
new, process, done, fail, cancel
E-mail пользователя
Условие на выборку счетов веб-мастера по пользователю
status
STRING OR ARRAY
---
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
Общее количество счетов
Общее количество счетов (по заданным критериям)
total
INTEGER
---
---
Текущее количество счетов
Текущее количество счетов в запросе (по заданным критериям)
count
INTEGER
---
---
Пагинация
Объект содержит содержит ключи, указывающие взаимосвязь дополнительных страниц
_links
ARRAY
---
---
Информация о счетах
Объект содержит информацию о счетах
invoices
ARRAY
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/invoices?status=new'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "total": 1, "count": 1, "_links": "https:\/\/api.shtrafovnet.ru\/latest\/webmasters\/invoices?page=1", "invoices": { "id": "777", "amount": "500", "totalAmount": "500", "status": "new", "wireSurname": "Иванов", "wireName": "Алексей", "wirePatronymic": "Алексеевич", "createdAt": "2019-01-01 00:00:00", "paidAt": "2019-01-01 00:00:00", "orders": null, "payUrl": null, "user": "email@user.com", "commissionAmount": null } }

Информация по платежу

Получение подробной информации о платеже
GET /invoices/:id
Path parameters
Code
Описание
id
Уникальный иденитификатор счета
Request headers
Key
Value
Authorization
Bearer $TOKEN
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID счета
Уникальный идентификатор счета
id
INTEGER
---
---
Общая сумма
Сумма всех оплачиваемых постановлений
amount
FLOAT
0
---
Итоговая сумма
Итоговая сумма для оплаты пользователем
totalAmount
FLOAT
0
---
Статус платежа
Текущий статус платежа
status
STRING
new
new, process, done, fail, cancel
Фамилия плательщика
Фамилия плательщика (пользователя) на русском языке. Требование ФЗ
wireSurname
STRING
---
---
Имя плательщика
Имя плательщика (пользователя) на русском языке. Требование ФЗ
wireName
STRING
---
---
Отчество плательщика
Отчество плательщика (пользователя) на русском языке. Требование ФЗ
wirePatronymic
STRING
---
---
Дата/время создания
Дата/время создания платежа
createdAt
DATETIME
---
---
Дата/время оплаты
Дата/время оплаты счета
paidAt
DATETIME
---
---
Список постановлений
Список постановлений оплачиваемых в счете
orders
ARRAY
---
---
Ссылка на оплату
Ссылка на форму оплаты платежного агрегатора
payUrl
STRING
---
---
E-mail пользователя
Электронная почта пользователя
email
STRING
---
---
Сумма комиссии
Сумма начисляемой комиссии за проведение платежа (вы получаете процент с данной суммы)
commissionAmount
INTEGER
---
---
Curl example:
curl --request GET \ --header 'Authorization:Bearer $TOKEN' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/invoices/:id'
Response example:
HTTP/1.1 200 OK Content-Type:application/json { "id": "777", "amount": "500", "totalAmount": "500", "status": "new", "wireSurname": "Иванов", "wireName": "Алексей", "wirePatronymic": "Алексеевич", "createdAt": "2019-01-01 00:00:00", "paidAt": "2019-01-01 00:00:00", "email": "email@user.com" }

Новый счет на оплату

Создание счета на оплату штрафов.

Процесс оплаты выглядит следующим образом:
  • Вы передаете идентификаторы штрафов которые необходимо оплатить, либо идетификаторы транспортных средств, неоплаченные штрафы которых необходимо оплатить, либо вовсе не передавать их и будут выбраны все неоплаченные штрафы от всех транспортных средств пользователя;
  • Мы проверим выбранные постановления на возможность оплаты (повторная оплата, ошибки и недостаточность платежных данных);
  • После проверки (результат выполнения данного запроса) вы получите ссылку на оплату, список оплачиваемых штрафов, их сумму, сумму комиссии (10%) и итоговую сумму к оплате.
  • При согласии с присланными данными, вы перенаправляете пользователя на указанную ссылку для оплаты счета.
  • После оплаты/неоплаты, пользователь будет перенаправлен на указанные вами success_url, fail_url.
  • После того, как статус платежа будет равен done (в случае успешной оплаты), в нем будут указаны ссылки на платежные поручения с отметкой платежного агрегатора А-3 (по каждому постановлению отдельно).
POST /invoices
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
E-mail пользователя
Электронная почта пользователя
email
STRING
Yes
---
Имя плательщика
Имя плательщика (пользователя) на русском языке. Требование ФЗ
wireName
STRING
Yes
---
Фамилия плательщика
Фамилия плательщика (пользователя) на русском языке. Требование ФЗ
wireSurname
STRING
Yes
---
Отчество плательщика
Отчество плательщика (пользователя) на русском языке. Требование ФЗ
wirePatronymic
STRING
Yes
---
Ссылка для возврата при успехе
URL куда пользователь должен вернуться после успешной оплаты. Обязательный
successUrl
STRING
Yes
---
Ссылка для возврата при неудаче
URL куда пользователь должен вернуться после неудачной оплаты. Обязательный
failUrl
STRING
Yes
---
Список штрафов
Список идентификаторов оплачиваемых штрафов пользователя
fines
ARRAY
No
---
Список ТС
Список идентификаторов транспортных средств пользователя, неоплаченные штрафы которых необходимо оплатить
cars
ARRAY
No
---
Response headers
Key
Value
Content-Type
application/json
Location
https://api.shtrafovnet.ru/latest/webmasters/invoices/:id
Response parameters
Name
Code
Type
Default
Allowed values
ID счета
Уникальный идентификатор счета
id
INTEGER
---
---
Общая сумма
Сумма всех оплачиваемых постановлений
amount
FLOAT
0
---
Итоговая сумма
Итоговая сумма для оплаты пользователем
totalAmount
FLOAT
0
---
Статус платежа
Текущий статус платежа
status
STRING
new
new, process, done, fail, cancel
Фамилия плательщика
Фамилия плательщика (пользователя) на русском языке. Требование ФЗ
wireSurname
STRING
---
---
Имя плательщика
Имя плательщика (пользователя) на русском языке. Требование ФЗ
wireName
STRING
---
---
Отчество плательщика
Отчество плательщика (пользователя) на русском языке. Требование ФЗ
wirePatronymic
STRING
---
---
Дата/время создания
Дата/время создания платежа
createdAt
DATETIME
---
---
Дата/время оплаты
Дата/время оплаты счета
paidAt
DATETIME
---
---
Список постановлений
Список постановлений оплачиваемых в счете
orders
ARRAY
---
---
Ссылка на оплату
Ссылка на форму оплаты платежного агрегатора
payUrl
STRING
---
---
E-mail пользователя
Электронная почта пользователя
email
STRING
---
---
Сумма комиссии
Сумма начисляемой комиссии за проведение платежа (вы получаете процент с данной суммы)
commissionAmount
INTEGER
---
---
Curl example:
curl --request POST \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"email":"email@user.com","wireName":"Алексей","wireSurname":"Иванов","wirePatronymic":"Алексеевич","successUrl":"http:\/\/example.ru\/success","failUrl":"http:\/\/example.ru\/fail","fines":[7,20],"cars":[5,9]}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/invoices'
Response example:
HTTP/1.1 201 Created Content-Type:application/json Location:https://api.shtrafovnet.ru/latest/webmasters/invoices/:id { "id": "777", "amount": "500", "totalAmount": "500", "status": "new", "wireSurname": "Иванов", "wireName": "Алексей", "wirePatronymic": "Алексеевич", "createdAt": "2019-01-01 00:00:00", "paidAt": "2019-01-01 00:00:00", "email": "email@user.com" }

Тестирование

Новый штраф

тестовая отправка уведомления о новом штрафе.

POST /test/notification/fine
Request headers
Key
Value
Content-Type
application/json
Authorization
Bearer $TOKEN
Request parameters
Name
Code
Type
Required?
Allowed values
Тип уведомления
Тип отправляемого уведомления
type
STRING
Yes
postback, fcm
ID штрафа
Уникальный идентификатор штрафа
fine_id
INTEGER
Yes
---
Response headers
Key
Value
Content-Type
application/json
Response parameters
Name
Code
Type
Default
Allowed values
ID уведомления
Уникальный идентификатор сообщения
id
STRING
---
---
Сообщение
Сообщение о результате отправки
message
STRING
---
---
Curl example:
curl --request POST \ --header 'Content-Type:application/json' \ --header 'Authorization:Bearer $TOKEN' \ --data '{"type":"postback","fine_id":"1231324"}' \ --url 'https://api.shtrafovnet.ru/latest/webmasters/test/notification/fine'
Response example:
HTTP/1.1 201 Created Content-Type:application/json { "id": "9dc27529-f281-477c-854e-a415bfe47442", "message": "Notification created successfully" }