Amazon EventBridge · AsyncAPI Specification

Amazon EventBridge Event Delivery

Version 2015-10-07

Amazon EventBridge delivers events from event sources to targets based on rules you define. This AsyncAPI specification documents the event channels and message schemas for events delivered by EventBridge to configured targets such as AWS Lambda, Amazon SQS, Amazon SNS, and more.

View Spec View on GitHub Amazon Web ServicesEvent BusEvent-DrivenEventsIntegrationServerlessAsyncAPIWebhooksEvents

Channels

events/default
subscribe receiveDefaultBusEvent
Receive events from the default event bus.
The default event bus receives events from AWS services, custom applications, and SaaS partner integrations.
events/custom/{eventBusName}
subscribe receiveCustomBusEvent
Receive events from a custom event bus.
Custom event buses receive events from your applications. You can create custom event buses to isolate events from different applications.
events/partner/{partnerEventSource}
subscribe receivePartnerEvent
Receive events from a partner event source.
Partner event buses receive events from SaaS partner applications integrated with Amazon EventBridge.
events/scheduled
subscribe receiveScheduledEvent
Receive scheduled events triggered by rule schedules.
Scheduled events are generated by EventBridge based on cron or rate expressions defined in rules.
targets/lambda
subscribe receiveLambdaTargetEvent
Events delivered to Lambda function targets.
Events delivered to AWS Lambda function targets for serverless processing.
targets/sqs
subscribe receiveSqsTargetEvent
Events delivered to SQS queue targets.
Events delivered to Amazon SQS queue targets for asynchronous processing.
targets/sns
subscribe receiveSnsTargetEvent
Events delivered to SNS topic targets.
Events delivered to Amazon SNS topic targets for fan-out messaging.
targets/step-functions
subscribe receiveStepFunctionsTargetEvent
Events delivered to Step Functions state machine targets.
Events delivered to AWS Step Functions state machine targets for workflow orchestration.

Messages

EventBridgeEvent
EventBridge Event
A standard Amazon EventBridge event delivered to targets based on matching rules.
ScheduledEvent
Scheduled Event
An event generated by EventBridge on a schedule defined by a cron or rate expression.

Servers

https
production https://events.{region}.amazonaws.com
Amazon EventBridge production endpoint.

AsyncAPI Specification

Raw ↑
asyncapi: 2.6.0
info:
  title: Amazon EventBridge Event Delivery
  version: '2015-10-07'
  description: >-
    Amazon EventBridge delivers events from event sources to targets based on
    rules you define. This AsyncAPI specification documents the event channels
    and message schemas for events delivered by EventBridge to configured
    targets such as AWS Lambda, Amazon SQS, Amazon SNS, and more.
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/eventbridge/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
  production:
    url: https://events.{region}.amazonaws.com
    protocol: https
    description: Amazon EventBridge production endpoint.
    variables:
      region:
        default: us-east-1
        description: AWS region.
channels:
  events/default:
    description: >-
      The default event bus receives events from AWS services, custom
      applications, and SaaS partner integrations.
    subscribe:
      operationId: receiveDefaultBusEvent
      summary: Receive events from the default event bus.
      message:
        $ref: '#/components/messages/EventBridgeEvent'
  events/custom/{eventBusName}:
    description: >-
      Custom event buses receive events from your applications. You can create
      custom event buses to isolate events from different applications.
    parameters:
      eventBusName:
        description: The name of the custom event bus.
        schema:
          type: string
    subscribe:
      operationId: receiveCustomBusEvent
      summary: Receive events from a custom event bus.
      message:
        $ref: '#/components/messages/EventBridgeEvent'
  events/partner/{partnerEventSource}:
    description: >-
      Partner event buses receive events from SaaS partner applications
      integrated with Amazon EventBridge.
    parameters:
      partnerEventSource:
        description: The name of the partner event source.
        schema:
          type: string
    subscribe:
      operationId: receivePartnerEvent
      summary: Receive events from a partner event source.
      message:
        $ref: '#/components/messages/EventBridgeEvent'
  events/scheduled:
    description: >-
      Scheduled events are generated by EventBridge based on cron or rate
      expressions defined in rules.
    subscribe:
      operationId: receiveScheduledEvent
      summary: Receive scheduled events triggered by rule schedules.
      message:
        $ref: '#/components/messages/ScheduledEvent'
  targets/lambda:
    description: >-
      Events delivered to AWS Lambda function targets for serverless processing.
    subscribe:
      operationId: receiveLambdaTargetEvent
      summary: Events delivered to Lambda function targets.
      message:
        $ref: '#/components/messages/EventBridgeEvent'
  targets/sqs:
    description: >-
      Events delivered to Amazon SQS queue targets for asynchronous processing.
    subscribe:
      operationId: receiveSqsTargetEvent
      summary: Events delivered to SQS queue targets.
      message:
        $ref: '#/components/messages/EventBridgeEvent'
  targets/sns:
    description: >-
      Events delivered to Amazon SNS topic targets for fan-out messaging.
    subscribe:
      operationId: receiveSnsTargetEvent
      summary: Events delivered to SNS topic targets.
      message:
        $ref: '#/components/messages/EventBridgeEvent'
  targets/step-functions:
    description: >-
      Events delivered to AWS Step Functions state machine targets for workflow
      orchestration.
    subscribe:
      operationId: receiveStepFunctionsTargetEvent
      summary: Events delivered to Step Functions state machine targets.
      message:
        $ref: '#/components/messages/EventBridgeEvent'
components:
  messages:
    EventBridgeEvent:
      name: EventBridgeEvent
      title: EventBridge Event
      summary: >-
        A standard Amazon EventBridge event delivered to targets based on
        matching rules.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/EventBridgeEventPayload'
    ScheduledEvent:
      name: ScheduledEvent
      title: Scheduled Event
      summary: >-
        An event generated by EventBridge on a schedule defined by a cron or
        rate expression.
      contentType: application/json
      payload:
        $ref: '#/components/schemas/ScheduledEventPayload'
  schemas:
    EventBridgeEventPayload:
      type: object
      description: The standard envelope for all Amazon EventBridge events.
      properties:
        version:
          type: string
          description: Version of the event (currently "0").
          example: '0'
        id:
          type: string
          format: uuid
          description: A unique identifier for the event.
          example: 12345678-1234-1234-1234-123456789012
        detail-type:
          type: string
          description: Identifies the type of event.
          example: EC2 Instance State-change Notification
        source:
          type: string
          description: Identifies the service or application that generated the event.
          example: aws.ec2
        account:
          type: string
          description: The 12-digit AWS account ID for the account that generated the event.
          example: '123456789012'
        time:
          type: string
          format: date-time
          description: The event timestamp.
          example: '2023-10-01T12:00:00Z'
        region:
          type: string
          description: The AWS region where the event originated.
          example: us-east-1
        resources:
          type: array
          items:
            type: string
          description: ARNs of AWS resources involved in the event.
          example:
            - arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0
        detail:
          type: object
          description: >-
            A JSON object that contains information about the event. The
            structure varies by source and detail-type.
          additionalProperties: true
      required:
        - version
        - id
        - detail-type
        - source
        - account
        - time
        - region
        - resources
        - detail
    ScheduledEventPayload:
      type: object
      description: The envelope for scheduled events generated by EventBridge rules.
      properties:
        version:
          type: string
          description: Version of the event.
          example: '0'
        id:
          type: string
          format: uuid
          description: A unique identifier for the event.
        detail-type:
          type: string
          description: Always "Scheduled Event" for scheduled events.
          example: Scheduled Event
        source:
          type: string
          description: Always "aws.events" for scheduled events.
          example: aws.events
        account:
          type: string
          description: The 12-digit AWS account ID.
        time:
          type: string
          format: date-time
          description: The time the event was triggered.
        region:
          type: string
          description: The AWS region.
        resources:
          type: array
          items:
            type: string
          description: The ARN of the rule that triggered the event.
        detail:
          type: object
          description: An empty object for scheduled events.
          additionalProperties: false
      required:
        - version
        - id
        - detail-type
        - source
        - account
        - time
        - region
        - resources
        - detail