r2_operations_adaptive_groups
Analytics resource
This is a time-bounded analytics resource. Queries against it differ from typical CRUD resources in a few ways:
sinceanduntilare required. Both are RFC3339 timestamps and define the analytics window (e.g.since = '2026-05-28T00:00:00Z',until = '2026-05-29T00:00:00Z'). Queries without them will fail.- Row cap via
limit. Thelimitparameter (default100) bounds the response. Widen the time window or raiselimitto return more rows. - Token scope. Cloudflare's analytics endpoints require an API token with Account -> Analytics -> Read permission, which is broader than typical zone-scoped tokens. A token without it will return empty results.
Creates, updates, deletes, gets or lists a r2_operations_adaptive_groups resource.
Overview
| Name | r2_operations_adaptive_groups |
| Type | Resource |
| Id | cloudflare.r2.r2_operations_adaptive_groups |
Fields
The following fields are returned by SELECT queries:
- list
Response
| Name | Datatype | Description |
|---|---|---|
bucket_name | string | R2 bucket name. |
action_status | string | Operation result (success / failure / etc.). |
action_type | string | R2 operation (GetObject / PutObject / ListObjects / etc.). |
datetime | string (date-time) | |
eyeball_region | string | Region of the requesting eyeball (WNAM / ENAM / WEU / etc.). |
requests | integer | Request count for the tuple. |
response_bytes | integer | Total retrieved bytes. |
response_object_size | integer | Total response object sizes. |
response_status_code | integer | HTTP status returned. |
storage_class | string | Storage class (Standard / InfrequentAccess). |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
list | select | account_tag, since, until | limit | Cloudflare R2 storage operation analytics for an account, grouped by bucket, operation type, region, and HTTP status. Per-tuple totals for request count, response bytes, and object size. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
account_tag | string | Cloudflare account ID (the 32-char hex tag). |
since | string (date-time) | Lower bound (inclusive). RFC3339. |
until | string (date-time) | Upper bound (exclusive). RFC3339. |
limit | integer | Maximum dimension-tuple rows per call. |
SELECT examples
- list
Cloudflare R2 storage operation analytics for an account, grouped by bucket, operation type, region, and HTTP status. Per-tuple totals for request count, response bytes, and object size.
SELECT
bucket_name,
action_status,
action_type,
datetime,
eyeball_region,
requests,
response_bytes,
response_object_size,
response_status_code,
storage_class
FROM cloudflare.r2.r2_operations_adaptive_groups
WHERE account_tag = '{{ account_tag }}' -- required
AND since = '{{ since }}' -- required
AND until = '{{ until }}' -- required
AND limit = '{{ limit }}'
;