最初のAPIリクエストを作成する
CloudflareのRadar APIに最初のリクエストを送信するには、まずAPIトークンを取得する必要があります。PermissionsグループでUser > User Detailsを選択し、アクセスレベルとしてReadを選択してカスタムトークンを作成します。
トークンを取得したら、https://api.cloudflare.com/client/v4/radar/でRadarのAPIに最初のリクエストを送信する準備が整いました。
以下の例では、過去7日間のデバイスタイプ(モバイルやデスクトップトラフィックなど)のグローバルな割合分布にアクセスします。詳細については、デバイスタイプの概要を取得エンドポイントを参照してください:
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%がデスクトップトラフィックであることを意味します。
前の例は、ボットと人間のすべてのトラフィックを返します。ただし、botClass=LIKELY_HUMANを追加することで、人間からのトラフィックのみを取得できます(Cloudflare Radar ↗のデフォルト)。また、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 ↗はデータ分析の標準的な言語の1つとなっています。ここでは、Requests ↗とパンダス ↗ライブラリを使用して同じデータをチャート化する簡単な例を示します。ここでは、Pandasがインポートしやすいようにパラメータにformat=csvを使用しています。
import ioimport requestsimport pandas as pd
cf_api_url = "https://api.cloudflare.com/client/v4"params = "dateRange=7d&format=csv"my_token = "xxx" # TODO 置き換え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)ノートブック ↗は、テキスト、コード、チャートなどのコード出力を1つのドキュメントに組み合わせることができるウェブベースのインタラクティブコンピューティングアプリケーションです。APIを自分のプロジェクトでどのように使用できるかについてのさらなる例は、Radarのコンパニオンコラボラトリーノートブック ↗を参照してください。
データを比較する方法を学ぶには、比較を作成するを参照してください。