# Webhooks & Event Notifications
The API supports webhooks for order status and unsolicited cease events. Configure your endpoint to receive notifications and process them as described below.
# Quick Start Workflow
- Register Your Endpoint:
- Register your webhook endpoint with your account manager or via the API portal (if available).
- Receive Events:
- Your endpoint must accept POST requests with a JSON body.
- Validate and Process:
- Validate the event (e.g., signature, secret) and process idempotently.
- Acknowledge Receipt:
- Return a 2xx status to acknowledge successful processing.
# Field-Level Guidance & Enums
| Field | Type | Required | Description | Example / Enum Values |
|---|---|---|---|---|
| eventType | string | Yes | Type of event | ORDER_STATUS_UPDATE, UNSOLICITED_CEASE |
| orderId | integer | No | Order identifier (for order status events) | 127 |
| serviceId | string | No | Service identifier (for cease events) | f41b356c-... |
| status | string | No | Order status (see Order Management) | COMPLETED, IN_PROGRESS, FAILED |
| reasonCode | string | No | Reason for cease (see enums in Order Mgmt) | NO_AUTHORISATION, ... |
| timestamp | string | Yes | Event timestamp (ISO 8601) | 2025-07-14T10:00:00.000Z |
| details | object | No | Additional event details | { previousStatus, notes } |
| notes | string | No | Additional notes | "Cease initiated by supplier." |
# Event Types
ORDER_STATUS_UPDATE: Order status changed (see Order Management for possible statuses)UNSOLICITED_CEASE: Service ceased without direct order
# Supported Webhooks
- Order Status Webhook: Notifies you of changes to order status (e.g., in progress, completed, failed, cancelled).
- Unsolicited Cease Webhook: Notifies you when a service is ceased without a direct order (e.g., due to external action).
# Example: Order Status Webhook Payload
{
"eventType": "ORDER_STATUS_UPDATE",
"orderId": 127,
"status": "COMPLETED",
"timestamp": "2025-07-14T10:00:00.000Z",
"details": {
"previousStatus": "IN_PROGRESS",
"notes": "Order completed successfully."
}
}
# Example: Unsolicited Cease Webhook Payload
{
"eventType": "UNSOLICITED_CEASE",
"serviceId": "f41b356c-11d2-4d65-b8b3-258461af9c2c",
"reasonCode": "NO_AUTHORISATION",
"timestamp": "2025-07-14T11:00:00.000Z",
"notes": "Cease initiated by supplier."
}
# Event Types
ORDER_STATUS_UPDATE: Order status changed (see Order Management for possible statuses)UNSOLICITED_CEASE: Service ceased without direct order
# Webhook Configuration
- Register your webhook endpoint with your account manager or via the API portal (if available).
- Your endpoint must accept POST requests with a JSON body.
- Secure your endpoint (e.g., with a secret, IP allowlist, or signature verification).