Summary: Workspace admins can enable HTTPS webhooks for scheduled renewal reminders. When a secret is configured, Contrax sends it in the X-Contrax-Signature request header for simple origin checks.
Reminder webhooks
Events use a versioned envelope under contrax.eventVersion and contrax.event. Current values for event include renewal.reminder and renewal.non_renewal_window. The kind field is expiration or non_renewal.
Example payload
{
"contrax": { "eventVersion": 1, "event": "renewal.reminder" },
"organizationId": "<org id>",
"contractId": "<contract id>",
"contractNumber": "…",
"message": "…",
"daysUntil": 30,
"kind": "expiration"
}