API для получения метрик
Общая информация
API предназначен для получения метрик по трафику CDN в формате JSON. Все ответы, включая ошибки, возвращаются в формате JSON.
Базовый URL: https://api-cdn.platformcraft.com/app/metrics/v1/
API для получения метрик
- Обязательные заголовки: CDN-AUTH-TOKEN (см. Авторизация)
- Content-Type ответа: application/json
- Структура ответов: ключ
status, при успехе —data, при ошибке —description
Авторизация
Доступ к API осуществляется по токену. Подробности получения токена — в разделе Авторизация.
Связанные API
Для получения списка доступных аккаунтов (см. Получение списка аккаунтов)
Ограничения
Нижеуказанные ограничения относятся к эндпоинтам / и /resources
- Возвращают данные за период от 1 до 10 минут.
- Все временные параметры должны быть с точностью до минуты: секунды всегда ==
00. Если указаны секунды, отличные от00, то возвращается ошибка "Invalid time format. Time must be at minute precision" - Параметры
account,start,end— обязательные. - Возможна фильтрация по метрикам (
metric) и ресурсам (resource).
Описание возможных кодов ответа
| Код ответа | Статус ответа | Описание ответа |
|---|---|---|
| 200 | OK | Успешный запрос |
| 403 | Forbidden | Неверный токен или нет доступа |
| 422 | Unprocessable Entity | Неправильные параметры запроса |
| 500 | Internal Server Error | Ошибка сервера |
| 504 | Gateway Timeout | Превышено время выполнения запроса |
При успешном ответе HTTP 200 тело содержит JSON с полями start, end, account, metrics, data.
Методы API
Общие данные за период (/)
Описание:
Получение общих данных за указанный период по выбранному аккаунту с возможностью фильтрации по метрикам и ресурсу.
- Метод:
GET - URL:
https://api-cdn.platformcraft.com/app/metrics/v1/ - Заголовки:
CDN-AUTH-TOKEN— авторизационный токен (см. Авторизация)- Формат ответа: JSON
Параметры запроса (query)
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
account |
string | да | Имя аккаунта |
start |
string | да | Начало интервала в формате YYYY-MM-DDThh:mm:00 (UTC, секунды = 00) |
end |
string | да | Конец интервала в формате YYYY-MM-DDThh:mm:00 (UTC, секунды = 00) |
metric |
string | нет | Фильтр по метрике. Несколько значений передаются как несколько параметров: metric=value1&metric=value2&.... |
resource |
string | нет | Фильтр по ресурсу (идентификатор ресурса) |
Коды ответов
Используются коды ответов Описание возможных кодов ответа.
Примеры запросов
Пример запроса с одной метрикой
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ 'https://api-cdn.platformcraft.com/app/metrics/v1/?account=test_account&start=2025-07-16T11:00:00&end=2025-07-16T11:01:00&metric=edge_hit_bytes'
Пример успешного ответа
{ "start": "2025-07-16T11:00:00", "end": "2025-07-16T11:01:00", "account": "test_account", "metrics": ["edge_hit_bytes"], "data": [ { "edge_hit_bytes": 54123511411 } ] }
Описание параметров ответа
| Параметр | Описание |
|---|---|
| start | начало запрашиваемого периода |
| end | конец запрашиваемого периода |
| account | имя аккаунта |
| metrics | edge_hit_bytes - количество кэшированного трафика по _edge |
| data | данные по метрике edge_hit_bytes |
Пример запроса с несколькими метриками
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ 'https://api-cdn.platformcraft.com/app/metrics/v1/?account=test_account&start=2026-02-22T15:33:00&end=2026-02-22T15:35:00&metric=edge_status_2xx&metric=edge_hit_ratio&metric=edge_hit_bytes'
Пример успешного ответа
{ "start": "2026-02-22T15:33:00", "end": "2026-02-22T15:35:00", "account": "test_account", "metrics": [ "edge_status_2xx", "edge_hit_ratio", "edge_hit_bytes" ], "data": [ { "edge_status_2xx": 3864464, "edge_hit_ratio": 0.9380079224014987, "edge_hit_bytes": 2046651070084 } ] }
Описание параметров ответа
| Параметр | Описание |
|---|---|
| start | начало запрашиваемого периода |
| end | конец запрашиваемого периода |
| account | имя аккаунта |
| metrics | edge_status_2xx - количество запросов со статусом 2xx по edge, edge_hit_ratio - доля кэшированного трафика, edge_hit_bytes - количество кэшированного трафика по _edge |
| data | данные по метрикам: edge_status_2xx, edge_hit_ratio, edge_hit_bytes |
Данные за период с разбивкой по ресурсам (/resources)
Описание:
Получение общих данных за указанный период по выбранному аккаунту с разбивкой по ресурсам и дополнительной фильтрацией по метрикам и ресурсам. Возвращает те же метрики, но с разбивкой по ресурсам (поле resource, resource_name, cname). Каждый элемент data соответствует одному ресурсу.
- Метод:
GET - URL:
https://api-cdn.platformcraft.com/app/metrics/v1/resources - Заголовки:
CDN-AUTH-TOKEN— авторизационный токен (см. Авторизация)- Формат ответа: JSON
Параметры запроса (query)
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
account |
string | да | Имя аккаунта |
start |
string | да | Начало интервала в формате YYYY-MM-DDThh:mm:00 (UTC, секунды = 00) |
end |
string | да | Конец интервала в формате YYYY-MM-DDThh:mm:00 (UTC, секунды = 00) |
metric |
string | нет | Фильтр по метрике. Несколько значений передаются как несколько параметров: metric=value1&metric=value2&.... |
resource |
string | нет | Фильтр по ресурсу (идентификатор ресурса) |
Коды ответов
Используются коды ответов Описание возможных кодов ответа.
Примеры запросов
Пример запроса с одной метрикой
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ 'https://api-cdn.platformcraft.com/app/metrics/v1/resources?account=test_account&start=2025-07-23T08:00:00&end=2025-07-23T08:05:00&metric=origin_requests_total'
Пример успешного ответа
{ "start": "2025-07-23T08:00:00", "end": "2025-07-23T08:05:00", "account": "test_account", "metrics": ["origin_requests_total"], "data": [ { "cname": "test_cname", "origin_requests_total": 225638, "resource": "test_resource", "resource_name": "test_resource_name" } ] }
Описание параметров ответа
| Параметр | Описание |
|---|---|
| start | начало запрашиваемого периода |
| end | конец запрашиваемого периода |
| account | имя аккаунта |
| metrics | origin_requests_total - количество запросов по _origin |
| data | cname - имя хоста |
| данные по метрике origin_requests_total | |
| resource - ресурс | |
| resource_name - название ресурса |
Пример запроса с несколькими метриками
curl -H "CDN-AUTH-TOKEN: $TOKEN" \ 'https://api-cdn.platformcraft.com/app/metrics/v1/resources?account=test_account&start=2026-02-22T12:00:00&end=2026-02-22T12:05:00&metric=edge_status_2xx&metric=edge_hit_bytes'
Пример успешного ответа
{ "start": "2026-02-22T12:00:00", "end": "2026-02-22T12:05:00", "account": "test_account", "metrics": [ "edge_status_2xx", "edge_hit_bytes" ], "data": [ { "cname": "test_cname", "edge_status_2xx": 4353253, "edge_hit_bytes": 4721746395190, "resource": "test_resource", "resource_name": "test_resource_name" } ] }
Описание параметров ответа
| Параметр | Описание |
|---|---|
| start | начало запрашиваемого периода |
| end | конец запрашиваемого периода |
| account | имя аккаунта |
| metrics | edge_status_2xx - количество запросов со статусом 2xx по edge, edge_hit_bytes - количество кэшированного трафика по _edge |
| data | cname - имя хоста |
| данные по метрикам: edge_status_2xx, edge_hit_bytes | |
| resource - ресурс | |
| resource_name - название ресурса |
Доступные метрики
Ниже перечислены метрики, доступные в JSON‑ответах эндпоинтов / и /resources
Метрики origin
| Метрика | Описание |
|---|---|
| origin_bandwidth | Пропускная способность от конечного пользователя до origin-сервера (бит в секунду) |
| origin_status_200 | Количество запросов со статусом 200 по origin за указанный период времени |
| origin_status_204 | Количество запросов со статусом 204 по origin за указанный период времени |
| origin_status_206 | Количество запросов со статусом 206 по origin за указанный период времени |
| origin_status_2xx | Количество запросов со статусом 2xx по origin за указанный период времени |
| origin_status_301 | Количество запросов со статусом 301 по origin за указанный период времени |
| origin_status_302 | Количество запросов со статусом 302 по origin за указанный период времени |
| origin_status_304 | Количество запросов со статусом 304 по origin за указанный период времени |
| origin_status_3xx | Количество запросов со статусом 3xx по origin за указанный период времени |
| origin_status_400 | Количество запросов со статусом 400 по origin за указанный период времени |
| origin_status_401 | Количество запросов со статусом 401 по origin за указанный период времени |
| origin_status_403 | Количество запросов со статусом 403 по origin за указанный период времени |
| origin_status_404 | Количество запросов со статусом 404 по origin за указанный период времени |
| origin_status_416 | Количество запросов со статусом 416 по origin за указанный период времени |
| origin_status_429 | Количество запросов со статусом 429 по origin за указанный период времени |
| origin_status_4xx | Количество запросов со статусом 4xx по origin за указанный период времени |
| origin_status_500 | Количество запросов со статусом 500 по origin за указанный период времени |
| origin_status_501 | Количество запросов со статусом 501 по origin за указанный период времени |
| origin_status_502 | Количество запросов со статусом 502 по origin за указанный период времени |
| origin_status_503 | Количество запросов со статусом 503 по origin за указанный период времени |
| origin_status_504 | Количество запросов со статусом 504 по origin за указанный период времени |
| origin_status_505 | Количество запросов со статусом 505 по origin за указанный период времени |
| origin_status_5xx | Количество запросов со статусом 5xx по origin за указанный период времени |
| origin_request_time | Время загрузки с origin-серверов за указанный интервал времени. Это медиана времени обработки/загрузки в секундах для успешных (HTTP 2xx) ответов из указанного диапазона размера. Диапазоны размеров ответа: • 0_250k — 0–250 Кбайт• 250k_500k — 250–500 Кбайт• 500k_750k — 500–750 Кбайт• 750k_1m — 750 Кбайт – 1 Мбайт• 1m_2m — 1–2 Мбайт• 2m_3m — 2–3 Мбайт• 3m_4m — 3–4 Мбайт• 4M+ — больше 4 Мбайт |
| origin_requests_total | Количество запросов к origin-серверам за указанный интервал времени |
Метрики edge
| Метрика | Описание |
|---|---|
| edge_bandwidth | Пропускная способность от конечного пользователя до edge-сервера (бит в секунду) |
| edge_status_200 | Количество запросов со статусом 200 по edge за указанный период времени |
| edge_status_204 | Количество запросов со статусом 204 по edge за указанный период времени |
| edge_status_206 | Количество запросов со статусом 206 по edge за указанный период времени |
| edge_status_2xx | Количество запросов со статусом 2xx по edge за указанный период времени |
| edge_status_301 | Количество запросов со статусом 301 по edge за указанный период времени |
| edge_status_302 | Количество запросов со статусом 302 по edge за указанный период времени |
| edge_status_304 | Количество запросов со статусом 304 по edge за указанный период времени |
| edge_status_3xx | Количество запросов со статусом 3xx по edge за указанный период времени |
| edge_status_400 | Количество запросов со статусом 400 по edge за указанный период времени |
| edge_status_401 | Количество запросов со статусом 401 по edge за указанный период времени |
| edge_status_403 | Количество запросов со статусом 403 по edge за указанный период времени |
| edge_status_404 | Количество запросов со статусом 404 по edge за указанный период времени |
| edge_status_416 | Количество запросов со статусом 416 по edge за указанный период времени |
| edge_status_429 | Количество запросов со статусом 429 по edge за указанный период времени |
| edge_status_4xx | Количество запросов со статусом 4xx по edge за указанный период времени |
| edge_status_500 | Количество запросов со статусом 500 по edge за указанный период времени |
| edge_status_501 | Количество запросов со статусом 501 по edge за указанный период времени |
| edge_status_502 | Количество запросов со статусом 502 по edge за указанный период времени |
| edge_status_503 | Количество запросов со статусом 503 по edge за указанный период времени |
| edge_status_504 | Количество запросов со статусом 504 по edge за указанный период времени |
| edge_status_505 | Количество запросов со статусом 505 по edge за указанный период времени |
| edge_status_5xx | Количество запросов со статусом 5xx по edge за указанный период времени |
| edge_request_time | Время загрузки с edge-серверов за указанный интервал времени. Это медиана времени обработки/загрузки в секундах для успешных (HTTP 2xx) ответов из указанного диапазона размера. Диапазоны размеров ответа: • 0_250k — 0–250 Кбайт• 250k_500k — 250–500 Кбайт• 500k_750k — 500–750 Кбайт• 750k_1m — 750 Кбайт – 1 Мбайт• 1m_2m — 1–2 Мбайт• 2m_3m — 2–3 Мбайт• 3m_4m — 3–4 Мбайт• 4M+ — больше 4 Мбайт |
| edge_requests_total | Количество запросов к edge-серверам за указанный интервал времени |
| edge_hit_ratio | Доля кэшированного трафика за указанный интервал времени. Рассчитывается по формуле: кэшированный трафик / общий трафик |
| edge_hit_bytes | Количество байтов, возвращаемых при попадании в кэш, за указанный интервал времени |