APIs.io Engineering Platform R2 Event Notification API

The R2 Event Notification API from APIs.io Engineering Platform — 2 operation(s) for r2 event notification.

Operations 3

GET /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration APIs.io Engineering Platform Read Configuration #
DELETE /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id} APIs.io Engineering Platform Delete Configuration #
PUT /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id} APIs.io Engineering Platform Create Configuration #

Documentation

Specifications

Other Resources

🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-1ab188a6-cc1f-490d-9413-9c6da20918d0?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-0e94f581-cbc1-48e0-b594-1f6b3d07a328?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-4517d93a-e7f7-4dc2-b572-06762bbe14de?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-88f9ddbb-3115-47dc-b6e5-7fc6f1d2a190?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-3a12caae-4945-4df4-8ab9-bb6219ba7a9f?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-863b18f0-c2f2-4e32-a5fa-0d1e6ccf77a9?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-189876d1-f207-49a2-a4bc-5c67ae78cd19?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-c1e74fd9-3f84-4d95-943d-d645d6cb82f7?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-b002164d-6e8a-4b6d-b409-4929476e7818?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-508660fd-30b8-4c9c-aede-8edbac8a514d?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-da35e0ba-f1a9-42fe-a77a-56ff0a47e341?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-1d4df7d0-9c92-4fa8-946f-2110c2b3b48d?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-2af6f54f-d259-46c0-8f86-78856f5885cd?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-cc203f31-e7f6-42ec-ad34-c5c4cde58904?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-f19285da-48dd-4691-bbdf-f7d6bec157a3?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-aa69cacc-4bbf-4724-a1d4-78cdad57fee8?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-a5858f86-04d3-4e15-ae11-b42c7516688b?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-c2052341-766c-43c7-b1dc-ed4985e4606b?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-aa777c90-8271-4809-8eac-3ec39a9a899c?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-4d5957dc-df05-4216-a5fc-d46b3ba811d8?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-28d97617-fdba-46a5-ac3e-40f3d2e0fa57?action=share&creator=35240
🔗
PostmanCollection
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-7429b451-d812-4abc-b497-b763372cf5c5?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-b0eafdd0-adaa-48a2-a855-6a31beb86d83?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-209f34ef-13c1-400c-bca8-fcddb304aff5?action=share&creator=35240
🔗
PostmanCapability
https://api-evangelist.postman.co/workspace/APIs.io-Engineering-Platform/fe320942-e505-4ee8-8b7c-d72eae00d93f/collection/35240-fb2bbbb8-d4cc-48b1-a660-c8e158bfbbea?action=share&creator=35240

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/engineering-platform-r2-event-notification-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

engineering-platform-r2-event-notification-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: 'To get started using Cloudflare''s products and services via the API, refer to [how to interact with Cloudflare](https://developers.cloudflare.com/fundamentals/basic-tasks/interact-with-cloudflare/), which covers using tools like [Terraform](https://developers.cloudflare.com/terraform/#cloudflare-terraform) and the [official SDKs](https://developers.cloudflare.com/fundamentals/api/reference/sdks/) to maintain your Cloudflare resources.


    Using the Cloudflare API requires authentication so that Cloudflare knows who is making requests and what permissions you have. Create an API token to grant access to the API to perform actions.


    To create an API token, from the Cloudflare dashboard, go to My Profile > API Tokens and select Create Token. For more information on how to create and troubleshoot API tokens, refer to

    our [API fundamentals](https://developers.cloudflare.com/fundamentals/api/).


    Totally new to Cloudflare? [Start here](https://developers.cloudflare.com/fundamentals/get-started/).'
  license:
    name: BSD-3-Clause
    url: https://opensource.org/licenses/BSD-3-Clause
  title: APIs.io Engineering Platform Cloudflare R2 Event Notification API
  version: 4.0.0
tags:
- name: R2 Event Notification
paths:
  /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration:
    get:
      description: Returns all notification rules for each queue for which bucket notifications are produced.
      operationId: event-notification-get-r2-bucket-configs
      parameters:
      - in: path
        name: bucket_name
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      - in: path
        name: account_id
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      responses:
        4XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/mq_api-response-common-failure'
          description: Read Configuration failure
        '200':
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/mq_api-response-common'
                - properties:
                    result:
                      $ref: '#/components/schemas/mq_bucket-config'
                  type: object
          description: Read Configuration response
        '404':
          content:
            application/json:
              example:
                errors:
                - code: 11015
                  message: workers.api.error.no_configs_found_for_bucket
                messages: []
                result: null
                success: false
              schema:
                $ref: '#/components/schemas/mq_api-response-common-failure'
          description: No Configuration Found response
      security:
      - api_email: []
        api_key: []
        api_token: []
      summary: APIs.io Engineering Platform Read Configuration
      tags:
      - R2 Event Notification
      x-api-token-group:
      - Workers R2 Storage Read
  /accounts/{account_id}/event_notifications/r2/{bucket_name}/configuration/queues/{queue_id}:
    delete:
      description: Turn off all event notifications configured for delivery to a given queue. No further notifications will be produced for the queue once complete.
      operationId: event-notification-delete-queue-config
      parameters:
      - in: path
        name: queue_id
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      - in: path
        name: bucket_name
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      - in: path
        name: account_id
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      responses:
        4XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/mq_api-response-common-failure'
          description: Create Configuration failure
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/mq_api-response-common'
          description: Delete Configuration response
      security:
      - api_email: []
        api_key: []
        api_token: []
      summary: APIs.io Engineering Platform Delete Configuration
      tags:
      - R2 Event Notification
    put:
      description: Define the rules for a given queue which will determine event notification production.
      operationId: event-notification-create-queue-config
      parameters:
      - in: path
        name: queue_id
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      - in: path
        name: bucket_name
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      - in: path
        name: account_id
        required: true
        schema:
          $ref: '#/components/schemas/mq_identifier'
      requestBody:
        content:
          application/json:
            schema:
              properties:
                rules:
                  description: Array of rules to drive notifications
                  items:
                    $ref: '#/components/schemas/mq_rule'
                  type: array
              type: object
        required: true
      responses:
        4XX:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/mq_api-response-common-failure'
          description: Create Configuration failure
        '200':
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/mq_api-response-common'
                - properties:
                    result:
                      properties:
                        event_notification_detail_id:
                          example: deadbeef-1234-4e81-5678-abadfeedbead
                          type: string
                      type: object
                  type: object
          description: Create Configuration response
        '409':
          content:
            application/json:
              example:
                errors:
                - code: 11010
                  message: workers.api.error.event_notification_detail_exists
                messages: []
                result: null
                success: false
              schema:
                $ref: '#/components/schemas/mq_api-response-common-failure'
          description: Duplicate Configuration failure
      security:
      - api_email: []
        api_key: []
        api_token: []
      summary: APIs.io Engineering Platform Create Configuration
      tags:
      - R2 Event Notification
components:
  schemas:
    mq_detail:
      properties:
        queue:
          description: Queue ID that will receive notifications based on the configured rules
          example: 98fa6c35-dead-beef-a42b-8d12196e0000
          type: string
        rules:
          description: Array of rules to drive notifications
          items:
            $ref: '#/components/schemas/mq_rule'
          type: array
      required:
      - queue
      - rules
      type: object
    mq_api-response-common-failure:
      properties:
        errors:
          allOf:
          - $ref: '#/components/schemas/mq_messages'
          example:
          - code: 7003
            message: No route for the URI
          minLength: 1
        messages:
          allOf:
          - $ref: '#/components/schemas/mq_messages'
          example: []
        result:
          enum:
          - null
          type:
          - object
          - 'null'
        success:
          description: Whether the API call was successful.
          enum:
          - false
          example: false
          type: boolean
      required:
      - success
      - errors
      - messages
      - result
      type: object
    mq_api-response-common:
      properties:
        errors:
          $ref: '#/components/schemas/mq_messages'
        messages:
          $ref: '#/components/schemas/mq_messages'
        result:
          anyOf:
          - type: object
          - items: {}
            type: array
          - type: string
        success:
          description: Whether the API call was successful.
          enum:
          - true
          example: true
          type: boolean
      required:
      - success
      - errors
      - messages
      - result
      type: object
    mq_bucket-config:
      additionalProperties:
        $ref: '#/components/schemas/mq_config-detail'
      example:
        my-bucket:
          b588b5d5-0647-4e81-bb8c-800fad2239a0:
            queue: 98fa6c35-dead-beef-a42b-8d12196e0000
            rules:
            - actions:
              - PutObject
              - DeleteObject
              prefix: img/
              suffix: .jpg
          deadbeef-1234-4e81-5678-abadfeedbead:
            queue: 11111111-dead-beef-0000-109238eeffff
            rules:
            - actions:
              - CopyObject
              suffix: .mov
      type: object
    mq_identifier:
      description: Identifier.
      example: 023e105f4ecef8ad9ca31a8372d0c353
      maxLength: 32
      readOnly: true
      type: string
    mq_config-detail:
      additionalProperties:
        $ref: '#/components/schemas/mq_detail'
      type: object
    mq_r2-action:
      enum:
      - PutObject
      - CopyObject
      - DeleteObject
      - CompleteMultipartUpload
      - AbortMultipartUpload
      type: string
    mq_rule:
      properties:
        actions:
          description: Array of R2 object actions that will trigger notifications
          example:
          - PutObject
          - CopyObject
          items:
            $ref: '#/components/schemas/mq_r2-action'
          type: array
          uniqueItems: true
        prefix:
          description: Notifications will be sent only for objects with this prefix
          example: img/
          type: string
        suffix:
          description: Notifications will be sent only for objects with this suffix
          example: .jpeg
          type: string
      required:
      - actions
      type: object
    mq_messages:
      example: []
      items:
        properties:
          code:
            minimum: 1000
            type: integer
          message:
            type: string
        required:
        - code
        - message
        type: object
        uniqueItems: true
      type: array
  securitySchemes:
    api_email:
      in: header
      name: X-Auth-Email
      type: apiKey
    api_key:
      in: header
      name: X-Auth-Key
      type: apiKey
    api_token:
      scheme: bearer
      type: http
    user_service_key:
      in: header
      name: X-Auth-User-Service-Key
      type: apiKey