asyncapi: 3.0.0 info: title: Ethena Webhooks version: 1.3.0 description: >- AsyncAPI description of Ethena's webhook event surface, generated by the API Evangelist enrichment pipeline from the Ethena OpenAPI 3.1 webhooks object (openapi/goethena-openapi-original.yml). Webhooks are opt-in and managed via the /v1/webhooks REST operations. Not published by the provider. x-apievangelist-method: generated x-apievangelist-source: openapi/goethena-openapi-original.yml defaultContentType: application/json channels: learnerTrainingCampaignCompleted: address: '{subscriberCallbackUrl}' description: Subscriber-hosted HTTPS callback that receives training-campaign-completion events. parameters: subscriberCallbackUrl: description: The callback URL registered via POST /v1/webhooks (subscription type LEARNER_TRAINING_CAMPAIGN_COMPLETED). messages: learnerTrainingCampaignCompleted: $ref: '#/components/messages/LearnerTrainingCampaignCompleted' operations: onLearnerTrainingCampaignCompleted: action: receive channel: $ref: '#/channels/learnerTrainingCampaignCompleted' summary: Fired when a learner completes a training campaign. messages: - $ref: '#/channels/learnerTrainingCampaignCompleted/messages/learnerTrainingCampaignCompleted' components: messages: LearnerTrainingCampaignCompleted: name: LEARNER_TRAINING_CAMPAIGN_COMPLETED title: Learner Training Campaign Completed contentType: application/json payload: $ref: '#/components/schemas/LearnerTrainingCampaignCompletedPayload' schemas: LearnerTrainingCampaignCompletedPayload: type: object required: [learnerId, trainingCampaignId, statusTimestamp] properties: learnerId: type: string pattern: ^[a-zA-Z0-9]+$ description: The unique identifier of a learner. example: abc123def4 trainingCampaignId: type: string pattern: ^[a-zA-Z0-9]+$ description: The unique identifier of a training campaign. example: tc456xyz78 statusTimestamp: type: string format: date-time description: The date and time at which the completion status was recorded.