Webhooks¶
AIR delivers events to your endpoint as signed HTTP POSTs. Verify the HMAC signature on the raw body before trusting the payload — the SDKs do this for you.
Event types include overseer.alert, conversation.opened, conversation.ended,
and the air.job.* lifecycle (started, image.generating, completed, failed).
- JS:
@air/sdk-js—handleWebhook({ rawBody, signingSecret, signatureHeader }) - Python:
air-sdk—handle_webhook(raw_body=..., signing_secret=..., signature_header=...)
Both return the verified, typed event (or a structured rejection). Always verify against the raw request body, before any JSON parsing/re-serialisation.