Dedicated endpoint events
Sent when one of your dedicated inference endpoints changes state, to each enabled webhook that lists the event, usually within seconds of the change. endpoint.ready: the endpoint serves requests, after it was created or enabled. endpoint.disabled: the endpoint was disabled and its requests are refused; an endpoint deleted before this was sent sends it first. endpoint.deleted: the endpoint was deleted, its last event. Listing an endpoint event needs endpoint read access. Delivery is at least once: the same change can occasionally arrive twice, with the same event id. Each delivery is attempted on its own, so events can arrive out of order: order an endpoint's events by data.at.
Headers
sha256= followed by the lowercase hex HMAC-SHA256 of the raw request body. The HMAC key is the 64 character lowercase hex SHA-256 of your whole whsec_ secret, prefix included, used as those characters rather than decoded from hex. Verify it over the exact bytes received, before parsing them. Only the body is signed: there is no timestamp. The signing secret is read at each attempt, so a retry after a regenerate is signed with the new secret.
The event's type, the same as the body's type.
The id of this delivery to this webhook, a UUID. Every retry of the delivery carries the same id and the same body, so deduplicate on it.
The same value as X-OpenRelay-Signature, under the name used before OpenRelay. Deprecated, to be removed in a future release: verify X-OpenRelay-Signature.
The same value as X-OpenRelay-Event. Deprecated, to be removed in a future release: read X-OpenRelay-Event.
The same value as X-OpenRelay-Delivery. Deprecated, to be removed in a future release: read X-OpenRelay-Delivery.
Payload
Response
Delivered. Any 2xx status within 10 seconds counts, and its body is not kept.
Changes
Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.