Камеры
Получить список камер
Запрос cameras
позволяет получить список камер.
query {
cameras() { } }
Выходные параметры:
- ids
- Идентификаторы камер, список которых нужно получить
- Тип данных: ID.
- filter
- Фильтрация списка камер (например, по внутренним полям)
- Тип данных: JSONString.
- order
- Сортировка списка камер (по внутренним полям в алфавитном/обратном алфавитном порядке)
- Тип данных: String.
- offset
- Позволяет удалить последние n камер из списка.
- Тип данных: Int.
- limit
- Позволяет получить последние n камер из списка.
- Тип данных: Int.
- withArchived:
- all: Список всех камер, включая заархивированные камеры.
- archived: Список только заархивированных камер.
Выходные параметры:
- totalCount
- Общее количество найденных камер
- Тип данных: Int.
- collectionItems: CameraOutput:
- id
- Идентификатор камеры
- Тип данных: ID.
- id
- creationDate
- Дата создания камеры
- Формат данных: Дата и время в формате ISO.
- lastModified
- Дата последнего изменения камеры
- Формат данных: Дата и время в формате ISO.
- info
- Информация по камере, например, внутренние поля камеры
- Формат данных: JSON.
Пример запроса:
query {
cameras {
totalCount
collectionItems {
id
creationDate
lastModified
info
}
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"cameras": {
"totalCount": 0,
"collectionItems": []
}
}
}
Создать камеру
Мутация createCamera
позволяет получить создать объект камеры.
mutation {
cameras() { }}
Выходные параметры:
- cameraData:
- fields:
- name
- Название поля камеры
- Тип данных: String.
- value
- Имя в поле камеры
- Тип данных: String.
- name
- agentId
- Идентификатор агента, к которому будет привязана камера
- Тип данных: ID.
- fields:
Выходные параметры:
- ok
- Статус завершения мутации
- Тип данных: Boolean
- camera: CameraOutput
Пример запроса:
mutation
{createCamera(
cameraData: {fields: {name:"Title" value:"Camera 1"} agentId:"***"})
{
ok
camera {
id
creationDate
lastModified
info
}
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"createCamera": {
"ok": true,
"camera": {
"id": "4caa9737-b461-400b-a109-ea00f090ed20",
"creationDate": "2023-05-24T09:27:43.529604+00:00",
"lastModified": "2023-05-24T09:27:43.529563+00:00",
"info": {
"title": "Camera 1"
}
}
}
}
}
Удалить камеру
Мутация deleteCameras
позволяет удалить объект камеры.
mutation {
deleteCameras() { }}
Выходные параметры:
- cameraIds
- Идентификаторы камер, которые нужно удалить
- Тип данных: ID.
Выходные параметры:
- ok
- Статус завершения мутации
- Тип данных: Boolean
Пример запроса:
mutation {
deleteCameras(cameraIds: ["***"])
{
ok
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"deleteCameras": {
"ok": true
}
}
}
Обновить камеру
Мутация updateCamera
позволяет обновить данные в объекте камеры (например, обновить данные в полях камеры).
mutation {
updateCamera() { }}
Выходные параметры:
- cameraId
- Идентификатор камеры, данные о которой нужно обновить
- Тип данных: ID.
- cameraData:
- fields:
- name
- Название поля камеры
- Тип данных: String.
- value
- Новое имя в поле камеры
- Тип данных: String.
- name
- agentId
- Идентификатор агента, к которому будет привязана камера
- Тип данных: ID.
- fields:
Выходные параметры:
- ok
- Статус завершения мутации
- Тип данных: Boolean
- camera: CameraOutput
Пример запроса:
mutation {
updateCamera(cameraId: "***"
cameraData: {fields: {name:"Title" value:"Camera 3"}})
{
ok
camera{
id
info
}
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"updateCamera": {
"ok": true,
"camera": {
"id": "***",
"info": {
"title": "Camera 3"
}
}
}
}
}
Привязать камеры к агенту
Мутация addCamerasToAgent
позволяет привязывать камеры к агенту.
mutation {
addCamerasToAgent() { }}
Выходные параметры:
- camerasIds
- Идентификаторы камер, которые нужно привязать к агенту
- Тип данных: ID.
- agentId
- Идентификатор агента, к которому будут привязаны камеры
- Тип данных: ID.
Выходные параметры:
- ok
- Статус завершения мутации
- Тип данных: Boolean
- agent: AgentOutput
Пример вопроса:
mutation {
addCamerasToAgent(camerasIds:"***" agentId: "***")
{
ok
agent {
id
creationDate
lastModified
token
camerasIds
cameras {
id
}
title
agentStatus
agentLastActiveTime
archived
}
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"addCamerasToAgent": {
"ok": true,
"agent": {
"id": "***",
"creationDate": "2023-05-25T07:46:15.754737+00:00",
"lastModified": "2023-05-25T08:09:34.813140+00:00",
"token": "***",
"camerasIds": [
"***",
"***"
]
"cameras": [
{
"id": "***
},
{
"id": "***"
}
]
"title": "Agent 1",
"agentStatus": "active",
"archived": false
}
}
}
}
Отвязать камеры от агента
Мутация removeCamerasFromAgent
позволяет отвязать камеры от агента.
mutation {
removeCamerasFromAgent() { }}
Выходные параметры:
- camerasIds
- Идентификаторы камер, которые нужно отвязать от агента
- Тип данных: ID.
- agentId
- Идентификатор агента, от которого будут отвязаны камеры
- Тип данных: ID.
Выходные параметры:
- ok
- Статус завершения мутации
- Тип данных: Boolean
- agent: AgentOutput
Пример запроса:
mutation {
removeCamerasFromAgent(camerasIds: "***" agentId: "***")
{
ok
agent {
id
creationDate
lastModified
token
camerasIds
cameras {
id
}
title
agentStatus
archived
}
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"removeCamerasFromAgent": {
"ok": true,
"agent": {
"id": "***",
"creationDate": "2023-05-25T07:46:15.754737+00:00",
"lastModified": "2023-05-25T08:14:54.750972+00:00",
"token": "***",
"camerasIds": [
"***"
],
"cameras": [
{
"id": "***"
}
],
"title": "Agent 1",
"agentStatus": "inactive",
"archived": false
}
}
}
}
Получить список пользовательских полей камеры
Запрос collectorSettings
возвращает список пользовательских полей камеры.
query {
collectorSettings() { }}
Выходные параметры:
- cameraFields
- Список текущих полей камер
- Тип данных: String.
Пример запроса:
query {
collectorSettings
{
cameraFields
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"collectorSettings": {
"cameraFields": [
"title",
"stream",
"type",
"width",
"height",
"real_name"
]
}
}
}
Добавить пользовательское поле камеры
Мутация addCamerasField
позволяет добавить пользовательское поле для камеры.
mutation {
addCamerasField() { }}
Выходные параметры:
- fieldInput:
- name
- Название нового поля камеры
- Тип данных: String.
- name
Выходные параметры:
- ok
- Статус завершения мутации
- Тип данных: Boolean.
- fields
- Список текущих полей камер
- Тип данных: String.
Пример запроса:
mutation {
addCamerasField(fieldInput: {name: "model"})
{
ok
fields
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"addCamerasField": {
"ok": true,
"fields": [
"title",
"stream",
"type",
"width",
"height",
"real_name",
"model"
]
}
}
}
Удалить пользовательское поле камеры
Мутация removeCamerasField
позволяет удалить пользовательское поле для камеры.
mutation {
removeCamerasField() { }}
Выходные параметры:
- fieldInput:
- name
- Название поля камеры, которое нужно удалить
- Тип данных: String.
- name
Выходные параметры:
- ok
- Статус завершения мутации
- Тип данных: Boolean.
- fields
- Список текущих полей камер
- Тип данных: String.
Пример запроса:
mutation {
removeCamerasField(fieldInput: {name: "model"})
{
ok
fields
}
}
Пример ответа:
API возвращает следующий результат:
{
"data": {
"removeCamerasField": {
"ok": true,
"fields": [
"title",
"stream",
"type",
"width",
"height",
"real_name"
]
}
}
}