Cloudflare GraphQL API は、70 を超えるデータセットを公開しています。これらの データセットは、データ形状が大きく異なるさまざまな Cloudflare 製品を表すため、 それぞれに 制限 の設定があります。
必須データセット(httpRequestsAdaptiveGroups、firewallEventsAdaptive など)は
すべてのプランで利用できますが、上位プランのユーザーは、追加のデータセットと
より広いクエリ制限を利用できます。
イントロスペクション に加えて、zones スコープと accounts スコープの両方で 使える Settings ノードがあります。
Settings ノードは、zones と accounts のすべてのデータセットをフィールドとして持ちます。
{
viewer {
accounts(filter: { accountTag : $accountTag }) {
settings {
# any dataset(s) from accounts
}
}
zones(filter: { zoneTag : $zoneTag }) {
settings {
# any dataset(s) from zones
}
}
}
}settings ノードの各サブノードは、次のフィールドで構成されます。
enabled- リクエストしたユーザーがそのノードを使えるかどうかavailableFields- リクエストしたユーザーが使えるフィールドの一覧。入れ子の フィールドの場合は、sum_requestsのようなパスが返されますmaxPageSize- 返せるレコード数の上限maxNumberOfFields- そのノードの 1 クエリで使えるフィールド数notOlderThan- クエリが遡って読み取れる秒数maxDuration- リクエストできる時間範囲の幅
query SampleQuery($zoneTag: string) {
viewer {
zones(filter: { zoneTag: $zoneTag }) {
settings {
firewallEventsAdaptive {
enabled
maxDuration
maxNumberOfFields
maxPageSize
notOlderThan
}
}
}
}
}{
"data": {
"viewer": {
"zones": [
{
"settings": {
"firewallEventsAdaptive": {
"enabled": true,
"maxDuration": 259200,
"maxNumberOfFields": 30,
"maxPageSize": 10000,
"notOlderThan": 2678400
}
}
}
]
}
},
"errors": null
}クエリの実行方法の詳細は、はじめにの ガイド を参照してください。