Конфигурации (configurations)

Запросы

HTTP verb Endpoint Описание

POST

/rest/v1/master/configurations

Создание новой конфигурации

GET

/rest/v1/master/configurations

Получение списка конфигураций

GET

/rest/v1/master/configurations/<id>

Получение данных конфигурации

PATCH

/rest/v1/master/configurations/<id>

Изменение данных конфигурации

DELETE

/rest/v1/master/configurations/<id>

Удаление конфигурации

LOOKUP

/rest/v1/master/configurations

Поиск идентификатора конфигурации


Создание новой конфигурации

Запрос

Описание полей: configuration entity

Пример запроса
POST /rest/v1/master/configurations HTTP/1.1
Content-Type: application/json; charset=utf-8

configuration entity

Ответ

Описание полей: configuration entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "id": "ebff89d8-016b-d6e3-c598-e0d55e0cd13e",
  "name": "my config",
  "state": "initial",
  "content": {
    "general": {},
    "aliases": {},
    "domains": [],
    "sites": [],
    "servers": [],
    "roles": [],
    "structure": []
  },
  "opts": {
    "comment": "",
    "title": ""
  },
  "ext": {
    "ct": "2019-07-23T10:09:57.73Z",
    "lwt": "2019-07-23T10:09:57.73Z"
  }
}

Получение списка конфигураций

Запрос

Table 1. Параметры запроса
Имя Тип Описание

filter

object

Фильтр по значениям полей.

mask

str

Список полей для вывода. Доступные поля для выдачи: id, name, state, ext.lwt, ext.ct, ext.version.

offset

int

Смещение в списке ресурсов, подлежащих выдаче.

limit

int

Максимальное количество ресурсов в списке.

order

array<object|str>

Порядок сортировки ресурсов в списке.

flat

bool

Преобразование в плоский вид составных полей.

Пример запроса
GET /rest/v1/master/configurations?filter={"state":"valid"}&offset=0&limit=2 HTTP/1.1

Ответ

Описание полей: configuration entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

[
  {
    "id": "24be56bc-016c-1e4f-1fec-e0d55e0cd13e",
    "name": "autogenerated",
    "state": "valid",
    "ext": {
      "ct": "2019-07-09T13:19:39.92Z",
      "ext.lwt": "2019-07-09T13:19:39.92Z"
    }
  },
  {
    "id": "ebff89d8-016b-d6e3-c598-e0d55e0cd13e",
    "name": "my config",
    "state": "valid",
    "ext": {
      "ct": "2019-07-23T10:09:57.73Z",
      "lwt": "2019-09-10T16:06:22.15Z"
    }
  }
]

Получение данных конфигурации

Запрос

Table 2. Параметры запроса
Имя Тип Описание

mask

str

Список полей для вывода.

flat

bool

Преобразование в плоский вид составных полей.

Пример запроса
GET /rest/v1/master/configurations/ebff89d8-016b-d6e3-c598-e0d55e0cd13e HTTP/1.1

Ответ

Описание полей: configuration entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "id": "ebff89d8-016b-d6e3-c598-e0d55e0cd13e",
  "name": "my config",
  "state": "valid",
  "content": {
    "general": {},
    "aliases": {},
    "domains": [],
    "sites": [],
    "servers": [],
    "roles": [],
    "structure": []
  },
  "opts": {
    "comment": "",
    "title": ""
  },
  "ext": {
    "ct": "2019-07-23T10:09:57.73Z",
    "lwt": "2019-07-23T10:09:57.73Z",
    "version": "3.0",
    "warnings": "",
    "errormsg": ""
  }
}

Изменение данных конфигурации

Поля запрещенные для изменения: id

Запрос

Описание полей: configuration entity

Пример запроса
PATCH /rest/v1/master/configurations/ebff89d8-016b-d6e3-c598-e0d55e0cd13e HTTP/1.1
Content-Type: application/json; charset=utf-8

configuration entity

Ответ

Описание полей: configuration entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "id": "ebff89d8-016b-d6e3-c598-e0d55e0cd13e",
  "name": "my config",
  "state": "valid",
  "content": {
    "general": {},
    "aliases": {},
    "domains": [],
    "sites": [],
    "servers": [],
    "roles": [],
    "structure": []
  },
  "opts": {
    "comment": "",
    "title": ""
  },
  "ext": {
    "ct": "2019-07-23T10:09:57.73Z",
    "lwt": "2019-09-10T16:06:22.15Z",
    "version": "3.0",
    "warnings": "",
    "errormsg": ""
  }
}

Удаление конфигурации

Запрос

Пример запроса
DELETE /rest/v1/master/configurations/ebff89d8-016b-d6e3-c598-e0d55e0cd13e HTTP/1.1

Ответ

Пример ответа
HTTP/1.1 204 No Content

Поиск идентификатора конфигурации

Производит поиск ресурса по указанному ключу, возвращает идентификатор(ы) для построения endpoint.

Ключевые поля для поиска: id

Запрос

Пример запроса
LOOKUP /rest/v1/master/configurations HTTP/1.1
Content-Type: application/json; charset=utf-8

"ebff89d8-016b-d6e3-c598-e0d55e0cd13e"

Ответ

Пример успешного ответа
HTTP/1.1 200 OK
content-type: application/json; charset=utf-8

[
  "ebff89d8-016b-d6e3-c598-e0d55e0cd13e"
]
Пример неуспешного ответа
HTTP/1.1 404 Not Found
Content-Type: application/json; charset=utf-8

{
  "error_code": 1404,
  "error_message": "Lookup failed"
}