Cloudflare Buckets API

Create, list, and delete R2 storage buckets.

Business capability
IT Infrastructure Management BC-600.50

Operations 4

GET /accounts/{account_id}/r2/buckets Cloudflare List R2 Buckets #
POST /accounts/{account_id}/r2/buckets Cloudflare Create R2 Bucket #
GET /accounts/{account_id}/r2/buckets/{bucket_name} Cloudflare Get R2 Bucket #
DELETE /accounts/{account_id}/r2/buckets/{bucket_name} Cloudflare Delete R2 Bucket #

Documentation

📖
Documentation
https://developers.cloudflare.com/api/
📖
GettingStarted
https://developers.cloudflare.com/fundamentals/api/get-started/
📖
Authentication
https://developers.cloudflare.com/fundamentals/api/get-started/create-token/
📖
RateLimits
https://developers.cloudflare.com/fundamentals/api/reference/limits/
📖
Documentation
https://developers.cloudflare.com/api/operations/accounts-list-accounts
📖
APIReference
https://developers.cloudflare.com/api/resources/accounts/
📖
APIReference
https://developers.cloudflare.com/ssl/
📖
Documentation
https://developers.cloudflare.com/api/operations/ip-access-rules-for-a-user-list-ip-access-rules
📖
Documentation
https://developers.cloudflare.com/api/operations/user'-s-account-memberships-list-memberships
📖
Documentation
https://developers.cloudflare.com/api/operations/radar-get-search-global
📖
APIReference
https://developers.cloudflare.com/radar/
📖
GettingStarted
https://developers.cloudflare.com/radar/get-started/
📖
Documentation
https://developers.cloudflare.com/api/operations/user-user-details
📖
APIReference
https://developers.cloudflare.com/api/resources/user/
📖
Documentation
https://developers.cloudflare.com/api/operations/zones-get
📖
APIReference
https://developers.cloudflare.com/api/resources/zones/
📖
Documentation
https://developers.cloudflare.com/dns/
📖
APIReference
https://developers.cloudflare.com/api/resources/dns/
📖
Documentation
https://developers.cloudflare.com/workers/
📖
APIReference
https://developers.cloudflare.com/api/resources/workers/
📖
GettingStarted
https://developers.cloudflare.com/workers/get-started/
📖
Documentation
https://developers.cloudflare.com/workers-ai/
📖
GettingStarted
https://developers.cloudflare.com/workers-ai/get-started/rest-api/
📖
APIReference
https://developers.cloudflare.com/workers-ai/configuration/open-ai-compatibility/
📖
APIReference
https://developers.cloudflare.com/workers-ai/models/
📖
Documentation
https://developers.cloudflare.com/ai-gateway/
📖
APIReference
https://developers.cloudflare.com/ai-gateway/usage/providers/
📖
GettingStarted
https://developers.cloudflare.com/ai-gateway/get-started/
📖
Documentation
https://developers.cloudflare.com/r2/
📖
APIReference
https://developers.cloudflare.com/r2/api/s3/api/
📖
GettingStarted
https://developers.cloudflare.com/r2/get-started/
📖
Documentation
https://developers.cloudflare.com/d1/
📖
APIReference
https://developers.cloudflare.com/api/resources/d1/
📖
GettingStarted
https://developers.cloudflare.com/d1/get-started/
📖
Documentation
https://developers.cloudflare.com/kv/
📖
APIReference
https://developers.cloudflare.com/api/resources/kv/
📖
GettingStarted
https://developers.cloudflare.com/kv/get-started/
📖
Documentation
https://developers.cloudflare.com/queues/
📖
APIReference
https://developers.cloudflare.com/api/resources/queues/
📖
GettingStarted
https://developers.cloudflare.com/queues/get-started/
📖
Documentation
https://developers.cloudflare.com/durable-objects/
📖
GettingStarted
https://developers.cloudflare.com/durable-objects/get-started/
📖
APIReference
https://developers.cloudflare.com/durable-objects/api/
📖
Documentation
https://developers.cloudflare.com/vectorize/
📖
GettingStarted
https://developers.cloudflare.com/vectorize/get-started/intro/
📖
APIReference
https://developers.cloudflare.com/vectorize/reference/client-api/
📖
Documentation
https://developers.cloudflare.com/pages/
📖
APIReference
https://developers.cloudflare.com/pages/configuration/api/
📖
GettingStarted
https://developers.cloudflare.com/pages/get-started/
📖
Documentation
https://developers.cloudflare.com/stream/
📖
GettingStarted
https://developers.cloudflare.com/stream/get-started/
📖
APIReference
https://developers.cloudflare.com/api/resources/stream/
📖
Documentation
https://developers.cloudflare.com/images/
📖
GettingStarted
https://developers.cloudflare.com/images/get-started/
📖
APIReference
https://developers.cloudflare.com/api/resources/images/
📖
Documentation
https://developers.cloudflare.com/turnstile/
📖
GettingStarted
https://developers.cloudflare.com/turnstile/get-started/
📖
APIReference
https://developers.cloudflare.com/api/resources/turnstile/
📖
Documentation
https://developers.cloudflare.com/logs/
📖
APIReference
https://developers.cloudflare.com/api/resources/logpush/
📖
GettingStarted
https://developers.cloudflare.com/logs/get-started/
📖
Documentation
https://developers.cloudflare.com/hyperdrive/
📖
APIReference
https://developers.cloudflare.com/api/resources/hyperdrive/
📖
GettingStarted
https://developers.cloudflare.com/hyperdrive/get-started/

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/cloudflare-buckets-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

cloudflare-buckets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Cloudflare R2 Buckets API
  description: Cloudflare R2 is S3-compatible object storage with zero egress fees. The R2 API allows developers to create and manage buckets, upload and retrieve objects, and configure access controls. R2 supports the S3 API for compatibility with existing tools and SDKs. This specification covers the Cloudflare management API for R2 bucket administration.
  version: '4.0'
  contact:
    name: Cloudflare Support
    url: https://support.cloudflare.com/
  termsOfService: https://www.cloudflare.com/terms/
servers:
- url: https://api.cloudflare.com/client/v4
  description: Cloudflare API v4 Production Server
security:
- bearerAuth: []
tags:
- name: Buckets
  description: Create, list, and delete R2 storage buckets.
paths:
  /accounts/{account_id}/r2/buckets:
    get:
      operationId: listR2Buckets
      summary: Cloudflare List R2 Buckets
      description: Returns a list of all R2 buckets for the account.
      tags:
      - Buckets
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - name: name_contains
        in: query
        description: Filter buckets by name substring.
        schema:
          type: string
        example: example_value
      - name: start_after
        in: query
        description: Bucket name to start listing after for pagination.
        schema:
          type: string
        example: example_value
      - name: per_page
        in: query
        description: Number of buckets per page.
        schema:
          type: integer
        example: 10
      - name: cursor
        in: query
        description: Cursor for pagination.
        schema:
          type: string
        example: example_value
      responses:
        '200':
          description: List of R2 buckets.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BucketListResponse'
              examples:
                Listr2buckets200Example:
                  summary: Default listR2Buckets 200 response
                  x-microcks-default: true
                  value:
                    result:
                      buckets:
                      - {}
                    success: true
        '401':
          description: Unauthorized.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: createR2Bucket
      summary: Cloudflare Create R2 Bucket
      description: Create a new R2 storage bucket. Bucket names must be globally unique and between 3 and 63 characters.
      tags:
      - Buckets
      parameters:
      - $ref: '#/components/parameters/AccountId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              properties:
                name:
                  type: string
                  description: The name of the bucket.
                  minLength: 3
                  maxLength: 63
                locationHint:
                  type: string
                  description: Hint for where to create the bucket. Must be a valid Cloudflare location.
                storageClass:
                  type: string
                  description: Default storage class for objects.
                  enum:
                  - Standard
                  - InfrequentAccess
            examples:
              Creater2bucketRequestExample:
                summary: Default createR2Bucket request
                x-microcks-default: true
                value:
                  name: Example Title
                  locationHint: example_value
                  storageClass: Standard
      responses:
        '200':
          description: Bucket created successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BucketResponse'
              examples:
                Creater2bucket200Example:
                  summary: Default createR2Bucket 200 response
                  x-microcks-default: true
                  value:
                    result:
                      name: Example Title
                      creation_date: '2026-01-15T10:30:00Z'
                      location: example_value
                      storage_class: example_value
                    success: true
                    errors:
                    - {}
                    messages:
                    - {}
        '400':
          description: Bad request.
        '401':
          description: Unauthorized.
        '409':
          description: Bucket name already exists.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /accounts/{account_id}/r2/buckets/{bucket_name}:
    get:
      operationId: getR2Bucket
      summary: Cloudflare Get R2 Bucket
      description: Retrieve details of a specific R2 bucket.
      tags:
      - Buckets
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - $ref: '#/components/parameters/BucketName'
      responses:
        '200':
          description: Bucket details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BucketResponse'
              examples:
                Getr2bucket200Example:
                  summary: Default getR2Bucket 200 response
                  x-microcks-default: true
                  value:
                    result:
                      name: Example Title
                      creation_date: '2026-01-15T10:30:00Z'
                      location: example_value
                      storage_class: example_value
                    success: true
                    errors:
                    - {}
                    messages:
                    - {}
        '401':
          description: Unauthorized.
        '404':
          description: Bucket not found.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    delete:
      operationId: deleteR2Bucket
      summary: Cloudflare Delete R2 Bucket
      description: Delete an R2 bucket. The bucket must be empty before it can be deleted.
      tags:
      - Buckets
      parameters:
      - $ref: '#/components/parameters/AccountId'
      - $ref: '#/components/parameters/BucketName'
      responses:
        '200':
          description: Bucket deleted successfully.
        '401':
          description: Unauthorized.
        '404':
          description: Bucket not found.
        '409':
          description: Bucket is not empty.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    BucketListResponse:
      type: object
      properties:
        result:
          type: object
          properties:
            buckets:
              type: array
              items:
                $ref: '#/components/schemas/Bucket'
          example: example_value
        success:
          type: boolean
          example: true
    Bucket:
      type: object
      properties:
        name:
          type: string
          description: The name of the bucket.
          example: Example Title
        creation_date:
          type: string
          format: date-time
          description: When the bucket was created.
          example: '2026-01-15T10:30:00Z'
        location:
          type: string
          description: The location of the bucket.
          example: example_value
        storage_class:
          type: string
          description: Default storage class for the bucket.
          example: example_value
    BucketResponse:
      type: object
      properties:
        result:
          $ref: '#/components/schemas/Bucket'
        success:
          type: boolean
          example: true
        errors:
          type: array
          items:
            type: object
          example: []
        messages:
          type: array
          items:
            type: object
          example: []
  parameters:
    BucketName:
      name: bucket_name
      in: path
      required: true
      description: The name of the R2 bucket.
      schema:
        type: string
    AccountId:
      name: account_id
      in: path
      required: true
      description: The unique identifier of the Cloudflare account.
      schema:
        type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API token with R2 Storage permissions.
externalDocs:
  description: Cloudflare R2 API Documentation
  url: https://developers.cloudflare.com/r2/api/s3/api/