INTEGRITY Документация

Первый запрос к API

Чтобы отправить первый запрос к Radar API Cloudflare, необходимо получить свой API-токен сначала. Создайте Custom Token с Аккаунт > Radar в Разрешения группу и выберите Чтение в качестве уровня доступа.

Получив токен, вы готовы отправить свой первый запрос к API Radar по адресу https://api.cloudflare.com/client/v4/radar/.

Пример с использованием cURL

В следующем примере мы получим глобальное процентное распределение типов устройств (например, мобильного и десктопного трафика) за последние семь дней. Дополнительные сведения см. в Получение сводки по типам устройств конечная точка:

curl "https://api.cloudflare.com/client/v4/radar/http/summary/device_type?dateRange=7d&format=json" \
--header "Authorization: Bearer <API_TOKEN>"

Успешный ответ будет выглядеть примерно так:

{
	"success": true,
	"errors": [],
	"result": {
		"summary_0": {
			"desktop": "58.223483",
			"mobile": "41.725833",
			"other": "0.050684"
		},
		"meta": {
			"dateRange": {
				"startTime": "2022-10-26T14:00:00Z",
				"endTime": "2022-11-02T14:00:00Z"
			},
			"normalization": "PERCENTAGE",
			...
		}
	}
}

Это означает, что 41% запросов классифицированы как поступающие с мобильных устройств, а 58% составляет трафик с настольных компьютеров.

Предыдущий пример возвращает весь трафик от ботов и людей. Однако можно получить только трафик, классифицированный как исходящий от людей (это значение по умолчанию в Cloudflare Radar ↗) добавив botClass=LIKELY_HUMAN. Вы также можете получить доступ только к трафику от ботов с помощью botClass=LIKELY_AUTOMATED (см. классы ботов для получения дополнительной информации). Например:

curl "https://api.cloudflare.com/client/v4/radar/http/summary/device_type?dateRange=7d&botClass=LIKELY_AUTOMATED&format=json" \
--header "Authorization: Bearer <API_TOKEN>"

Выполнив приведённый выше код, попробуйте найти различия в распределении мобильного и десктопного трафика.

Используйте Python

Python ↗ стал одним из стандартных языков анализа данных. Ниже приведен краткий пример построения графика по тем же данным с помощью Запросы ↗ и Pandas ↗ библиотек. Здесь мы используем format=csv в параметрах, чтобы упростить импорт данных в Pandas.

import io
import requests
import pandas as pd

cf_api_url = "https://api.cloudflare.com/client/v4"
params = "dateRange=7d&format=csv"
my_token = "xxx" # TODO replace
r = requests.get(f"{cf_api_url}/radar/http/summary/device_type?{params}",
                 headers={"Authorization": f"Bearer {my_token}"})
df = pd.read_csv(io.StringIO(r.text))
df.plot(kind="bar", stacked=True)

Notebooks

A блокнот ↗ это веб-приложение для интерактивных вычислений, в котором текст, код и результаты выполнения кода, такие как графики, можно объединить в единый документ. См. сопутствующий блокнот Colaboratory ↗ для дополнительных примеров использования API в ваших собственных проектах.

Следующие шаги

См. Сравнение показателей чтобы узнать, как сравнивать данные.