Cloudflare · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Cloudflare R2 Buckets API

5 actions 5 updates phrasing extends openapi/cloudflare-buckets-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Cloudflare's API. It is a proposal applied on top of the contract, not a document Cloudflare publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 5

$.info
$.paths['/accounts/{account_id}/r2/buckets'].get
$.paths['/accounts/{account_id}/r2/buckets'].post
$.paths['/accounts/{account_id}/r2/buckets/{bucket_name}'].get
$.paths['/accounts/{account_id}/r2/buckets/{bucket_name}'].delete

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Cloudflare R2 Buckets API
  version: 1.0.0
extends: openapi/cloudflare-buckets-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 4
- target: $.paths['/accounts/{account_id}/r2/buckets'].get
  update:
    x-apievangelist-phrasing:
      intent: List R2 storage buckets
      effect: read
      questions:
      - What R2 buckets do I have in my account?
      - Can I search my R2 buckets for ones whose name contains a word?
      instructions:
      - text: List all R2 buckets in account {account}.
        slots:
          account: path.account_id
      - text: Show R2 buckets in account {account} whose names contain {name_contains}.
        slots:
          account: path.account_id
          name_contains: query.name_contains
      - text: List R2 buckets in account {account} after bucket {start_after}.
        slots:
          account: path.account_id
          start_after: query.start_after
      method: generated
      generated: '2026-09-26'
- target: $.paths['/accounts/{account_id}/r2/buckets'].post
  update:
    x-apievangelist-phrasing:
      intent: Create an R2 storage bucket
      effect: write
      questions:
      - How do I create a new object storage bucket in R2?
      - What naming rules apply to a new R2 bucket?
      - Can I set a default storage class and location when creating a bucket?
      instructions:
      - text: Create an R2 bucket named {name} in account {account}.
        slots:
          name: requestBody.name
          account: path.account_id
      - text: Create R2 bucket {name} in account {account} near {locationHint} with storage class {storageClass}.
        slots:
          name: requestBody.name
          account: path.account_id
          locationHint: requestBody.locationHint
          storageClass: requestBody.storageClass
      method: generated
      generated: '2026-09-26'
- target: $.paths['/accounts/{account_id}/r2/buckets/{bucket_name}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get details of an R2 bucket
      effect: read
      questions:
      - How do I see the details of one R2 bucket?
      - Where is a specific R2 bucket located and what storage class does it default to?
      instructions:
      - text: Show details of R2 bucket {bucket} in account {account}.
        slots:
          bucket: path.bucket_name
          account: path.account_id
      - text: Look up the settings of bucket {bucket} in account {account}.
        slots:
          bucket: path.bucket_name
          account: path.account_id
      method: generated
      generated: '2026-09-26'
- target: $.paths['/accounts/{account_id}/r2/buckets/{bucket_name}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete an empty R2 bucket
      effect: destructive
      questions:
      - How do I delete an R2 bucket?
      - Does an R2 bucket have to be empty before I can remove it?
      instructions:
      - text: Delete R2 bucket {bucket} from account {account}.
        slots:
          bucket: path.bucket_name
          account: path.account_id
      - text: Remove the empty bucket {bucket} in account {account}.
        slots:
          bucket: path.bucket_name
          account: path.account_id
      method: generated
      generated: '2026-09-26'