Skip to main content

Overview

Cardinal Gray dispatches webhook notifications to your endpoint whenever a title entry undergoes a state change that matches your subscribed events. Webhooks are sent as POST requests with the full title entry as the JSON body.
To configure a webhook endpoint, contact the Cardinal Gray team. You’ll need to provide your endpoint URL and choose an authentication scheme.

Authentication

Cardinal Gray supports two outbound authentication schemes for webhook delivery:

Basic Auth

The Authorization header contains a Base64-encoded username:password pair. This is the recommended scheme for new integrations.

Bearer Token (Legacy)

Legacy integrations may receive a bearer token in the Authorization header and/or an x-partner-key header. New integrations should use Basic Auth.

Subscribable Events

Account Status Lifecycle

The title.account_status.* event fires with the specific new status appended. Possible values:

Payload Shape

The webhook payload is a POST request with Content-Type: application/json. The body is the full title entry (identical to GET /title/{id} response) plus a webhook_events array indicating which subscribed events triggered this dispatch.
Example Webhook Payload

Key Fields

S3 document paths (nmvtis_pull, state_pull, form_* fields) are delivered as presigned URLs valid for 1 hour. Download or process them promptly.

Delivery Semantics

  • Method: POST
  • Content-Type: application/json
  • Retry: Exponential backoff on 5xx responses (up to 3 retries)
  • Timeout: 10 second response timeout per attempt
  • Idempotency: The same event may be delivered more than once. Use entryId + webhook_events to deduplicate.

Success / Failure


Testing

To trigger a test webhook:
  1. Create a title entry via POST /title with enrichment enabled (sync_nmvtis: true)
  2. Wait for job_status to reach complete — this fires title.job_status.complete and potentially title.data.found
  3. Update account_status via the dashboard or signing flow to trigger title.account_status.* events
You can verify your endpoint received the payload and responded with 2xx. Contact the Cardinal Gray team if you need help debugging delivery issues.