Skip to main content
Skip table of contents

Список метoк

Список меток

Список меток, доступных пользователю. Типы доступных меток могут отличаться в зависимости от клиента. Список доступных меток для клиента можно посмотреть в

GET /api/v1/marks

Параметры метода

int per_page, Кол-во элементов в одной странице пагинации. По умолчанию 25 элементов


int page, Номер страницы пагинации


string date, Шаблон для фильтрации по определенной метке даты. Это поле обязательно, когда есть поле timezone. Возможные значения: today, yesterday, week, 28days, 30days, year.


string timezone, Часовой пояс для шаблона фильтрации по дате. Пример - Europe/Paris. Это поле обязательно, когда есть поле date


date from, Дата, с которой будут отображаться метки


date to, Дата, до которой будут отображаться метки


array types, Только типы из массива types будут в респонсе. Список доступных типов можно найти


array cameras, Только метки камер из массива cameras (массив id камер) будут в респонсе. Максимум 100 элементов


array excluded_cameras, Только метки камер, не входящих в массив excluded_cameras (массив id камер) будут в респонсе. Максимум 100 элементов


string sort, Поле, по которому нужно отсортировать метки


string dir, В каком направлении нужно отсортировать.


int move_to, ID метки для перенаправления на страницу пагинации на которой находится данная метка.

200 OK

Успешный ответ

JSON
{
    "data": [
        {
            "id": 2,
            "type": "mark",
            "type_pretty": "Пользовательское",
            "title": "TEST MARK 2",
            "can_delete": true,
            "from": "2023-04-18T14:14:49.000000Z",
            "to": "2023-04-18T18:14:53.000000Z",
            "camera_id": 28,
            "created_at": "2023-04-18T15:14:59.000000Z",
            "updated_at": null,
            "color": "#EDD500",
            "camera": {
                "id": 28,
                "group_id": 7,
                "status": "active",
                "type": "media_server_v2",
                "start_at": null,
                "created_at": "2023-04-17T15:16:16.000000Z",
                "billing_id": null,
                "pretty_name": "fake stream 3",
                "pretty_text": "Тестовые камеры, fake stream",
                "short_address": "Тестовые камеры, fake stream",
                "full_address": "Тестовые камеры, fake stream",
                "lat": null,
                "lng": null,
                "azimuth": null,
                "note": "note",
                "streams": [
                    {
                        "id": 49,
                        "type": "high",
                        "camera_id": 28,
                        "is_preview_from_server": true,
                        "is_archive_from_server": null,
                        "status": "active",
                        "has_sound": false,
                        "width": null,
                        "height": null
                    }
                ],
                "has_sound": false,
                "is_archive_recording": false,
                "archive_recording_type": "fulltime",
                "can_change_archive_timetable": false,
                "is_bridge": false,
                "is_favorite": false,
                "user_status": "active",
                "name": "test camera 2"
            },
            "preview_url": "https://preview_url/screenshot.mp4?token=sometoken"
        },
        {
            "id": 1,
            "type": "mark",
            "type_pretty": "Пользовательское",
            "title": "TEST MARK 1",
            "can_delete": true,
            "from": "2023-04-18T15:14:01.000000Z",
            "to": "2023-04-18T16:14:04.000000Z",
            "camera_id": 27,
            "created_at": "2023-04-18T15:14:08.000000Z",
            "updated_at": null,
            "color": "#EDD500",
            "camera": {
                "id": 27,
                "group_id": 7,
                "status": "active",
                "type": "media_server_v2",
                "start_at": null,
                "created_at": "2023-04-17T15:16:16.000000Z",
                "billing_id": null,
                "pretty_name": "fake stream 2",
                "pretty_text": "Тестовые камеры, fake stream",
                "short_address": "Тестовые камеры, fake stream",
                "full_address": "Тестовые камеры, fake stream",
                "lat": null,
                "lng": null,
                "azimuth": null,
                "note": "note",
                "streams": [
                    {
                        "id": 48,
                        "type": "high",
                        "camera_id": 27,
                        "is_preview_from_server": true,
                        "is_archive_from_server": null,
                        "status": "active",
                        "has_sound": false,
                        "width": null,
                        "height": null
                    }
                ],
                "has_sound": false,
                "is_archive_recording": false,
                "archive_recording_type": "fulltime",
                "can_change_archive_timetable": false,
                "is_bridge": false,
                "is_favorite": false,
                "user_status": "active",
                "name": "test camera 1"
            },
            "preview_url": "https://preview_url/screenshot.mp4?token=sometoken"
        }
    ],
    "links": {
        "first": "https://vms.local/api/v3/marks?per_page=25&page=1",
        "last": "https://vms.local/api/v3/marks?per_page=25&page=255",
        "prev": null,
        "next": "https://vms.local/api/v3/marks?per_page=25&page=2"
    },
    "meta": {
        "current_page": 1,
        "from": 1,
        "last_page": 1,
        "links": [
            {
                "url": null,
                "label": "pagination.previous",
                "active": false
            },
            {
                "url": "https://vms.local/api/v3/marks?per_page=25&page=1",
                "label": "1",
                "active": true
            },
            {
                "url": null,
                "label": "pagination.next",
                "active": false
            }
        ],
        "path": "https://vms.local/api/v3/marks",
        "per_page": 25,
        "to": 2,
        "total": 2
    }
}

401 Unauthorized

Токен авторизации не передан или не валидный

403 Forbidden

Если запросили тип метки, который недоступен текущему пользователю

422 Unprocessable Entity

Возвращает JSON объект с ошибкой. VMS Client/Общая информация/Валидация клиента

JSON
{
    "message": "Тут не будет информативного сообщения",
    "errors": {
        "any_key": [
            "Тут будет описана причина ошибки"
        ]
    }
}
cURL
BASH
curl -k --request POST \
	--url 'https://your-domain/api/v1/marks' \
	--header 'Content-Type: application/json' \
	--header 'Accept: application/json' \
	--data '{
    "per_page": 0,
    "page": 0,
    "date": "string",
    "timezone": "string",
    "from": "date",
    "to": "date",
    "types": [],
    "cameras": [],
    "excluded_cameras": [],
    "sort": "string",
    "dir": "string",
    "move_to": 0
}'
PHP
PHP
$data = array (
  'per_page' => 0,
  'page' => 0,
  'date' => 'string',
  'timezone' => 'string',
  'from' => 'date',
  'to' => 'date',
  'types' => 
  array (
  ),
  'cameras' => 
  array (
  ),
  'excluded_cameras' => 
  array (
  ),
  'sort' => 'string',
  'dir' => 'string',
  'move_to' => 0,
);
$context = stream_context_create([
	'ssl'=>['verify_peer' => false],
	'http' => [
		'method' => 'GET',
		'header' => "Content-Type: application/json\r
Accept: application/json",
		'content'=>json_encode($data)
	]
]);
$result = file_get_contents('https://your-domain/api/v1/marks', false, $context);
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.