Webhooks API

Manage webhook subscriptions programmatically. Subscribe to specific event types and receive real-time notifications.

Event Types

Subscribe to specific events or use all to receive all events.

Response Workflow Events

Event TypeDescription
response.createdNew response (DDQ submission) created
response.submittedEntity submitted completed response
response.reviewedResponse reviewed by compliance team
response.approvedResponse approved
response.rejectedResponse rejected
response.autofill_completedAI autofill process completed
response.check_answers_completedAI answer checking completed
response.autoflag_completedAI autoflag analysis completed

AML Screening Events

Event TypeDescription
screening.completedAML screening check finished successfully
screening.failedAML screening encountered an error
batch.completedBatch screening operation completed
batch.progressBatch screening progress update
batch.failedBatch screening operation failed

Identity Verification Events

Event TypeDescription
verification.session_createdNew identity verification session started
verification.session_accessedVerification session accessed by entity
verification.session_completedVerification session completed successfully
verification.session_failedVerification session failed
verification.session_expiredVerification session expired
verification.check_completedIdentity verification check completed
non_document.check_initiatedNon-document check initiated
non_document.completedNon-document check completed with results
non_document.reviewedNon-document check reviewed

Case & Alert Events

Event TypeDescription
case.openedNew case opened for investigation
case.resolvedCase resolved or closed
alert.createdNew alert created

Special Event Types

Event TypeDescription
allSubscribe to all event types (wildcard subscription)

Create Webhook Subscription

POST /api/v1/webhooks/

Subscribe to a specific event type. Create multiple subscriptions to handle different events with different endpoints.

Request Body

FieldTypeRequiredDescription
event_type string Yes Event type to subscribe to (see event types table above)
webhook_url string Yes Your webhook endpoint URL (must be HTTPS)
description string No Human-readable description
filters object No Optional event filters (for future use)
Save Your Secret Key

The secret_key is returned only once during creation. Store it securely to verify webhook signatures.

Response (201 Created)

{
  "id": "f67f165d-0d1e-4eb7-81e6-3494a260dcd4",
  "event_type": "screening.completed",
  "webhook_url": "https://api.yourcompany.com/webhooks/screening",
  "secret_key": "whsec_A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6Q7R8S9T0U1V2W3X4Y5Z6",
  "message": "Subscription created successfully"
}

List Webhook Subscriptions

GET /api/v1/webhooks/

Get all webhook subscriptions for your API key.

Response (200 OK)

{
  "subscriptions": [
    {
      "id": "f67f165d-0d1e-4eb7-81e6-3494a260dcd4",
      "event_type": "screening.completed",
      "webhook_url": "https://api.yourcompany.com/webhooks/screening",
      "is_active": true,
      "description": "Production screening webhook",
      "filters": {},
      "created_at": "2026-01-19T10:30:00.123456+00:00",
      "stats": {
        "total_deliveries": 127,
        "successful_deliveries": 125,
        "failed_deliveries": 2
      },
      "last_triggered_at": "2026-01-22T08:15:30.987654+00:00"
    },
    {
      "id": "a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d",
      "event_type": "case.resolved",
      "webhook_url": "https://api.yourcompany.com/webhooks/cases",
      "is_active": true,
      "description": "Case resolution notifications",
      "filters": {},
      "created_at": "2026-01-18T14:20:00.123456+00:00",
      "stats": {
        "total_deliveries": 43,
        "successful_deliveries": 43,
        "failed_deliveries": 0
      },
      "last_triggered_at": "2026-01-21T16:45:22.543210+00:00"
    }
  ]
}

Response Fields

FieldTypeDescription
iduuidSubscription identifier
event_typestringSubscribed event type
webhook_urlstringWebhook endpoint URL
is_activebooleanWhether subscription is active
descriptionstringSubscription description
filtersobjectEvent filters (if any)
created_atstringISO 8601 timestamp
statsobjectDelivery statistics
last_triggered_atstringLast delivery timestamp (null if never triggered)

Get Webhook Subscription

GET /api/v1/webhooks/{subscription_id}/

Get detailed information about a specific subscription.

Path Parameters

ParameterTypeDescription
subscription_iduuidSubscription identifier

Response (200 OK)

{
  "id": "f67f165d-0d1e-4eb7-81e6-3494a260dcd4",
  "event_type": "screening.completed",
  "webhook_url": "https://api.yourcompany.com/webhooks/screening",
  "is_active": true,
  "description": "Production screening webhook",
  "filters": {},
  "created_at": "2026-01-19T10:30:00.123456+00:00",
  "updated_at": "2026-01-19T10:30:00.123456+00:00",
  "stats": {
    "total_deliveries": 127,
    "successful_deliveries": 125,
    "failed_deliveries": 2
  },
  "last_triggered_at": "2026-01-22T08:15:30.987654+00:00"
}

Update Webhook Subscription

PATCH /api/v1/webhooks/{subscription_id}/

Update subscription settings. All fields are optional.

Path Parameters

ParameterTypeDescription
subscription_iduuidSubscription identifier

Request Body

FieldTypeDescription
webhook_urlstringNew webhook URL
is_activebooleanEnable/disable subscription
descriptionstringUpdated description
filtersobjectUpdated filters

Response (200 OK)

{
  "message": "Subscription updated",
  "id": "f67f165d-0d1e-4eb7-81e6-3494a260dcd4"
}

Delete Webhook Subscription

DELETE /api/v1/webhooks/{subscription_id}/

Permanently delete a webhook subscription. This action cannot be undone.

Path Parameters

ParameterTypeDescription
subscription_iduuidSubscription identifier

Response (200 OK)

{
  "message": "Subscription deleted successfully"
}