An assignment changed
Delivered to the subscriber’s endpoint and signed with HMAC-SHA256 over the raw body. Verification is multi-key so signing keys can rotate; an unverifiable delivery is rejected, not queued.
Authorizations
Client credentials, the production model: server-to-server, short-lived tokens, least-privilege scopes, rotation by issuing a new client secret.
Body
Back-sync event envelope delivered by composerID webhooks, and accepted inbound at POST /webhooks/{platform}. Signed in transport, not in the body: each delivery carries one or more X-Signature-HMAC-SHA256-{n} headers, each the Base64 HMAC-SHA256 of the raw body under an active signing key; any one match verifies, so keys rotate without downtime.
Event type. Current taxonomy is VMS-scoped; additional event families (assessment, document, workflow) are planned.
vms.requisition.updated, vms.assignment.updated, vms.timesheet.updated, vms.connection.revoked The intent this event relates to.
^[A-Za-z0-9_-]{10,64}$Event-specific payload. Structure depends on the event type.
x >= 1Source provider key.
Object ID in the source system.
Deprecated and ignored by verifiers. Signatures travel in the X-Signature-HMAC-SHA256-{n} request headers, never in the body, so the signed bytes are exactly the bytes received. Kept only so existing senders that set it still validate.
Unique delivery ID for deduplication.
Response
Acknowledged