Нечто (extobjs)

Запросы

HTTP verb Endpoint Описание

POST

/rest/v1/reference/extobjs

Создание нового extobj

GET

/rest/v1/reference/extobjs

Получение списка extobj

GET

/rest/v1/reference/extobjs_by_type/<type>

Получение списка extobj с фильтром по типу

GET

/rest/v1/reference/extobjs/<id>

Получение данных extobj

PATCH

/rest/v1/reference/extobjs/<id>

Изменение данных extobj

DELETE

/rest/v1/reference/extobjs/<id>

Удаление extobj

LOOKUP

/rest/v1/reference/extobjs

Поиск идентификатора объекта


Создание нового extobj

Запрос

Описание полей: extobj

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

extobj

Ответ

Описание полей: extobj

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

{
  "id": "f199b9f2-016c-b30f-e345-50e54938780c",
  "type": "mytype",
  "value": {
    "obj": {
      "name": "Obj",
      "no": 2
    }
  },
  "opts": {
    "title": "Object 1",
    "comment": "second comment",
    "user_tags": [
      "red",
      "mytype",
      "once"
    ]
  },
  "ext": {
    "ct": "2019-08-21T07:24:18.62Z",
    "lwt": "2019-08-21T07:24:18.62Z"
  }
}

Получение списка extobj

Запрос

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

filter

object

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

mask

str

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

offset

int

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

limit

int

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

order

array<object|str>

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

flat

bool

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

Пример запроса
GET /rest/v1/reference/extobjs?offset=0&limit=2 HTTP/1.1

Ответ

Описание полей: extobj

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

[
  {
    "id": "f199b9f2-016c-b30f-e345-50e54938780c",
    "type": "mytype",
    "opts": {
      "title": "Object 1"
    },
    "ext": {
      "ct": "2019-08-21T07:43:53.91Z",
      "lwt": "2019-08-21T07:43:53.91Z"
    }
  },
  {
    "id": "48ca5b30-016c-b31f-fb85-50e54938780c",
    "type": "newType",
    "opts": {
      "title": "Object 75"
    },
    "ext": {
      "ct": "2019-08-21T07:45:22.17Z",
      "lwt": "2019-08-21T07:45:22.17Z"
    }
  }
]

Получение списка extobj с фильтром по типу

Запрос представляет собой получение данных из коллекции, параметры и возвращаемое значение аналогичны запросу Получение списка extobj. Производит поиск сущностей с фильтром по полю type, указанному в URL.

Запрос

Пример запроса
GET /rest/v1/reference/extobjs_by_type/mytype?mask=id,type,opts&limit=2 HTTP/1.1

Ответ

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

[
  {
    "id": "f199b9f2-016c-b30f-e345-50e54938780c",
    "type": "mytype",
    "opts": {
      "title": "Object 1"
    }
  },
  {
    "id": "1830aa72-016c-6b70-75a1-02004c4f4f50",
    "type": "mytype",
    "opts": {
      "title": "Object 2"
    }
  }
]

Получение данных extobj

Запрос

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

mask

str

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

flat

bool

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

Пример запроса
GET /rest/v1/reference/extobjs/f199b9f2-016c-b30f-e345-50e54938780c HTTP/1.1

Ответ

Описание полей: extobj

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

{
  "id": "f199b9f2-016c-b30f-e345-50e54938780c",
  "type": "mytype",
  "value": {
    "obj": {
      "name": "Obj",
      "no": 2
    }
  },
  "opts": {
    "title": "Object 1",
    "comment": "second comment",
    "user_tags": [
      "red",
      "mytype",
      "once"
    ]
  },
  "ext": {
    "ct": "2019-08-21T07:24:18.62Z",
    "lwt": "2019-08-21T07:24:18.62Z"
  }
}

Изменение данных extobj

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

Запрос

Описание полей: extobj

Пример запроса
PATCH /rest/v1/reference/extobjs/f199b9f2-016c-b30f-e345-50e54938780c HTTP/1.1
Content-Type: application/json; charset=utf-8

{
  "value": "{\"obj\":{\"name\":\"Obj\",\"no\":2}}",
  "opts": {
    "comment": "third comment",
    "user_tags": [
      "yellow",
      "mytype",
      "once"
    ]
  }
}

Ответ

Описание полей: extobj

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

{
  "id": "f199b9f2-016c-b30f-e345-50e54938780c",
  "type": "mytype",
  "value": "{\"obj\":{\"name\":\"Obj\",\"no\":2}}",
  "opts": {
    "title": "Object 1",
    "comment": "third comment",
    "user_tags": [
      "yellow",
      "mytype",
      "once"
    ]
  },
  "ext": {
    "ct": "2019-08-21T07:24:18.62Z",
    "lwt": "2019-09-06T12:46:18.62Z"
  }
}

Удаление extobj

Запрос

Пример запроса
DELETE /rest/v1/reference/extobjs/f199b9f2-016c-b30f-e345-50e54938780c HTTP/1.1

Ответ

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

Поиск идентификатора объекта

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

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

Запрос

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

"mytype"

Ответ

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

[
  "f199b9f2-016c-b30f-e345-50e54938780c"
]
Пример неуспешного ответа
HTTP/1.1 404 Not Found
Content-Type: application/json; charset=utf-8

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