AsyncAPI description of Okta's two outbound event delivery surfaces: 1. **Event Hooks** — Okta POSTs a CloudEvents-style envelope to a customer-owned HTTPS endpoint whenever a subscribed System Log event type fires. Subscribers register an endpoint, choose from event types in the Event Types catalog (filtered by `event-hook-eligible`), and complete a one-time GET verification handshake before deliveries begin. 2. **Log Streams** — Okta streams the full System Log feed to a managed destination (AWS EventBridge or Splunk Cloud) configured through the `/api/v1/logStreams` Management API. Field names, enums, and constraints in this document are drawn verbatim from the Okta Event Hooks concept documentation and the Okta Management OpenAPI spec (`okta/okta-management-openapi-spec`, `dist/current/management-minimal.yaml`).
Echo the challenge value in a JSON body to complete verification.
One-time verification handshake. After an Event Hook is created (or its endpoint URL changes), Okta sends a single HTTP GET request to the registered endpoint with an `x-okta-verification-challenge` header. The endpoint must echo the header value back in a JSON body under the property `verification`. The Event Hook's `verificationStatus` transitions from `UNVERIFIED` to `VERIFIED` on success. `UNVERIFIED` event hooks won't receive any events.
okta/event-hook/delivery
subscribereceiveEventHookDelivery
Receive a batch of subscribed System Log events.
Event Hook delivery channel. Okta POSTs a CloudEvents 0.1-style envelope to the registered endpoint each time one of the subscribed event types fires. The body contains a `data.events` array of `LogEvent` objects — the same shape returned by the System Log API. Authentication is via a customer-chosen `Authorization` header value (the `EventHookChannelConfigAuthScheme` with `type: HEADER`).
okta/log-stream/aws-eventbridge
subscribereceiveLogStreamEventBridge
Receive a System Log event via AWS EventBridge.
System Log events streamed to an AWS EventBridge partner event source. Okta manages the stream when a `LogStream` resource of type `aws_eventbridge` is ACTIVE; payloads are individual `LogEvent` objects.
okta/log-stream/splunk-cloud
subscribereceiveLogStreamSplunk
Receive a System Log event via Splunk Cloud HEC.
System Log events streamed to a Splunk Cloud HTTP Event Collector. Okta manages the stream when a `LogStream` resource of type `splunk_cloud_logstreaming` is ACTIVE; payloads are individual `LogEvent` objects wrapped per HEC conventions by Okta.
Messages
✉
EventHookVerificationChallenge
Okta Event Hook one-time verification challenge
The single GET request Okta sends to confirm endpoint ownership. The challenge value is in the `x-okta-verification-challenge` header; no request body is sent.
✉
EventHookVerificationResponse
Okta Event Hook verification response
JSON body the endpoint must return to complete verification — a single property `verification` containing the value of the `x-okta-verification-challenge` header from the GET request.
✉
EventHookDelivery
Okta Event Hook delivery envelope
CloudEvents 0.1-style envelope that Okta POSTs for every batch of subscribed System Log events. Sent with the customer's chosen `Authorization` header value and `Content-Type: application/json`.
✉
LogStreamEvent
Okta System Log event delivered via Log Stream
Individual `LogEvent` object emitted to the configured Log Stream destination (AWS EventBridge or Splunk Cloud).
Servers
https
customerWebhook{customerEndpoint}
Customer-operated HTTPS endpoint that receives Okta Event Hook deliveries. Must be internet-accessible, respond within a three-second timeout, and reply with HTTP 200 or 204. The path is registered as `channel.config.uri` on the Event Hook object.
https
awsEventBridgeevents.{awsRegion}.amazonaws.com
AWS EventBridge endpoint that receives the System Log stream when a Log Stream object of type `aws_eventbridge` is provisioned. The actual partner event source name and AWS account are configured in `LogStreamSettingsAws`.
https
splunkCloud{splunkHost}
Splunk Cloud HTTP Event Collector (HEC) endpoint that receives the System Log stream when a Log Stream object of type `splunk_cloud_logstreaming` is provisioned. Configured by `LogStreamSettingsSplunk` (`host`, `edition`, `token`).