Images のバッチ API を使うと、Cloudflare のグローバル API レート制限を回避しながら、複数のリクエストを連続して送信できます。
Images のバッチ API を使うには、バッチトークンを取得し、そのトークンで複数のリクエストを送信します。このバッチトークンで認可されるリクエストは、別のエンドポイントに対して行われ、グローバル API のレート制限には数えられません。各トークンには、1 秒あたり 200 リクエストのレート制限があります。Cloudflare Images API により高いスループットが必要な場合は、複数のトークンを使えます。
トークンを取得するには、次の例のとおり、新しい images/v1/batch_token エンドポイントを使います。
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v1/batch_token" \
--header "Authorization: Bearer <API_TOKEN>"
# Response:
{
"result": {
"token": "<BATCH_TOKEN>",
"expiresAt": "2023-08-09T15:33:56.273411222Z"
},
"success": true,
"errors": [],
"messages": []
}トークンを取得したら、次の操作のリクエストに使います。
- 画像をアップロードする -
POST /images/v1 - 画像を削除する -
DELETE /images/v1/{identifier} - 画像の詳細 -
GET /images/v1/{identifier} - 画像を更新する -
PATCH /images/v1/{identifier} - 画像一覧 V2 -
GET /images/v2 - Direct upload V2 -
POST /images/v2/direct_upload
これらの操作では、ホストとパスが異なります。メソッド、リクエストボディ、レスポンスボディは同じです。
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/images/v2" \
--header "Authorization: Bearer <API_TOKEN>"curl "https://batch.imagedelivery.net/images/v1" \
--header "Authorization: Bearer <BATCH_TOKEN>"