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