Page tree

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

Skip to end of metadata
Go to start of metadata

Метод для получения списка ролей пользователей.

Роли служат для группировки и фильтрации диспетчеров в системе.

При наличии у роли "типа роли" она также может давать диспетчеру дополнительные возможности.

Запрос:

URL:

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

GET https://api.url/v2.1/user/<user_id>/roles

Запрос по id:

GET https://api.url/v2.1/user/<user_id>/roles/<role_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

Фильтрация отображаемых полей.

filterstring

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

sortstring
Сортировка объектов.
includestring
Включить в вывод данные связанных объектов

Ответ:

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

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

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

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

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

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

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

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

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


metaСодержит total_count - количество объектов у пользователя (с учетом фильтра)
data

Содержит данные в формате JSON API.

ПолеТипОписание
typestringТип ресурса - role
attributesobjectДанные объекта
relationshipsobjectСсылки на связанные объекты

Атрибуты:

ПолеТипNullableФильтрацияОписание
NamestringнетдаНазвание роли
DescriptionstringдадаОписание роли
UpdateDatedatetimeнетдаДата обновления
DateOfCreationdatetimeнетдаДата создания

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

ПолеТипNullableФильтрацияОписание
RoleTypeobject<roleTYpe>дадаТип роли.

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

200 OK - Сервер обработал. Данные переданы в теле ответа.

403 Forbidden - нет прав получение диспетчеров.

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

Также возможны другие ошибки.

Пример:

GET https://api.url/api/v2.1/user/1/roles HTTP/1.1
Accept: application/vnd.api+json
Authorization: Bearer <auth token>


HTTP/1.1 200 OK
Content-Type: application/vnd.api+json
{
    "links": {
        "self": "https://cur.api.citypoint.ru/user/1/roles"
    },
    "meta": {
        "total_count": 4
    },
    "data": [
        {
            "id": "20",
            "type": "role",
            "attributes": {
                "Name": "Логист (модуль логистика)",
                "Description": "Логист (модуль логистика)",
                "UpdateDate": "2018-10-05T06:31:08Z",
                "DateOfCreation": "2018-10-05T06:31:08Z"
            },
            "relationships": {
                "RoleType": {
                    "data": {
                        "id": "5",
                        "type": "roleType"
                    }
                }
            }
        },
        {
            "id": "21",
            "type": "role",
            "attributes": {
                "Name": "Подрядчик (модуль логистика)",
                "Description": "Подрядчик (модуль логистика)",
                "UpdateDate": "2018-10-05T06:31:30Z",
                "DateOfCreation": "2018-10-05T06:31:30Z"
            },
            "relationships": {
                "RoleType": {
                    "data": {
                        "id": "7",
                        "type": "roleType"
                    }
                }
            }
        },
        {
            "id": "22",
            "type": "role",
            "attributes": {
                "Name": "Заказчик (модуль логистика)",
                "Description": "Заказчик (модуль логистика)",
                "UpdateDate": "2018-10-05T06:31:52Z",
                "DateOfCreation": "2018-10-05T06:31:52Z"
            },
            "relationships": {
                "RoleType": {
                    "data": {
                        "id": "8",
                        "type": "roleType"
                    }
                }
            }
        },
        {
            "id": "285",
            "type": "role",
            "attributes": {
                "Name": "Механик",
                "Description": "Роль \"Механик\"",
                "UpdateDate": "2022-03-15T11:01:36Z",
                "DateOfCreation": "2022-03-14T23:02:40Z"
            },
            "relationships": {
                "RoleType": {
                    "data": {
                        "id": "10",
                        "type": "roleType"
                    }
                }
            }
        }
    ]
}
  • No labels