Метод для сохранения настроек пользователя.
Создавать можно только пользовательские настройки.
Все настройки уникальны по Client, Account, Module, Key, ClientVersion.
Запрос:
URL:
POST https://api.url/v2.1/user/<user_id>/settings
Доп. Заголовки:
Accept - должен допускать "application/vnd.api+json".
Content-Type - должен быть "application/vnd.api+json".
Authorization - для передачи токена. Передается в формате: Bearer <access_token>.
Данные запроса:
Данные присылаются в формате JSON API. Формат данных аналогичен формату данных в ответе на запрос получения данных одиночного объекта, за исключением, что не должно указываться Id.
Ответ присылается в формате JSON API. В заголовке Location будет содержаться ссылку на созданные объект. В теле ответа будет полное описание созданной объекта.
Поле | Описание | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
data | Содержит объект в формате JSON API.
|
Описание атрибутов.
Поле | Тип | Nullable | Описание |
---|---|---|---|
Module | string | нет | Тип Объекта / Модуль - служит для группировки настроек |
Key | string | нет | Ключ / Название отдельной настройки |
Value | json | да | Значение настройки, может быть любым json значением. |
Version | int | нет | Версия настройки. При создании всегда 1. Можно не указывать при создании. |
ClientVersion | int | нет | Версия клиента. Служит для предотвращения конфликтов форматов либо значений одной и той же настройки в разных версиях клиента. |
UpdateDate | datetime | нет | Дата изменения настройки. Переданное значение игнорируется. Проставляется автоматически. |
Описание связанных объектов.
Поле | Тип | Nullable | Описание |
---|---|---|---|
Client | client | нет | Идентификатор клиента. Переданное значение игнорируется. Проставляется автоматически сервером. |
Account | user | да | Пользователь который сделал настройку. Переданное значение игнорируется Проставляется автоматически сервером. |
Коды ответов:
201 Created - Сервер обработал запрос. В теле содержится созданный объект.
401 Unauthorized - не передан заголовок Authorization, либо токен не корректный либо окончился период действия.
403 Forbidden - нет прав на выполнение запроса.
400 Bad Request - Переданы не поддерживаемые параметры либо сервер не понял запрос (описание ошибки в теле ответа).
Пример
POST https://api.url/v2.1/user/1/settings HTTP/1.1 Accept: application/vnd.api+json Authorization: Bearer <auth token> { "data": { "type": "setting", "attributes": { "Module": "map", "Key": "only 1 window on map", "ClientVersion": 2, "Value": true, } } } HTTP/1.1 201 Created Content-Type: application/vnd.api+json Last-Modified: Wed, 21 Oct 2015 07:28:00 GMT { "links": { "self": "https://api.url/v2.1/user/1/settings/78" }, "data": { "id": "78", "type": "setting", "attributes": { "Module": "map", "Key": "only 1 window on map", "ClientVersion": 2, "Value": true, "Version": 1, "UpdateDate": "2022-08-09T17:31:39Z" }, "relationships": { "Account": { "data": { "id": "1", "type": "user" } }, "Client": { "data": { "id": "13", "type": "client" } } } } }