The Webhook object
Unique webhook identifier.
The ID of the entity this webhook belongs to. Derived from the API key used to create it — not set directly.
The HTTPS endpoint Nuvion delivers events to. Must use the
https protocol.Duration in seconds until the webhook expires. After expiry, no further events are delivered and the webhook status becomes
inactive.The set of events this webhook is subscribed to.
Write-only. When set, Nuvion signs each delivery using an HMAC derived from this secret. The raw value is never returned after creation — store it securely before leaving the page. See Verifying signatures for how to validate incoming requests.
Optional short description to identify the webhook in the dashboard.
Optional list of tags for organizing webhooks.
Webhook status. One of
active or inactive. Defaults to active at creation.Read-only delivery statistics for this webhook.
Example
Create a webhook
Registers a new webhook endpoint for the authenticated entity.POST /entity-webhooks
Request parameters
The HTTPS endpoint Nuvion will POST events to. Must begin with
https://. Invalid URLs or non-HTTPS URLs are rejected.Duration in seconds until the webhook expires. After expiry, deliveries stop and the webhook status becomes
inactive.The events to subscribe to. Set
all: true to subscribe to every event type, or configure individual event groups. At least one event must be enabled.See the Webhook object for the full structure of this field.Signing secret used to generate an HMAC signature on each delivery. The value is stored as a SHA-512 hash and cannot be retrieved after creation. Store it before leaving the page.
Short description to identify the webhook.
List of tags for organizing webhooks.
Initial status of the webhook. One of
active or inactive. Defaults to active.Response
Returns201 Created with the new webhook object.
Response
Update a webhook
Updates an existing webhook. Only the fields you include are changed; omitted fields retain their current values.PATCH /entity-webhooks/:webhookId
Request parameters
The ID of the webhook to update.
New HTTPS delivery URL. Must begin with
https://.New expiry duration in seconds, measured from the time of this update.
Replaces the entire
enabled_events configuration. Set all: true to subscribe to every event type.Replaces the signing secret. The new value is stored as a SHA-512 hash and cannot be retrieved after this call.
Updated description.
Replaces the tags list.
Set to
active or inactive. Setting to inactive pauses all deliveries without deleting the webhook.Response
Returns200 OK with the updated webhook object.
Response
Get a webhook
Retrieves a single webhook by ID.GET /entity-webhooks/:webhookId
Request parameters
The ID of the webhook to retrieve.
Response
Returns200 OK with the webhook object.
Response
List webhooks
Returns a paginated list of all webhooks for the authenticated entity.GET /entity-webhooks
Request parameters
Number of results per page. Between
1 and 100. Defaults to 20.ULID pagination cursor from a previous response. Omit for the first page.
Response
Returns200 OK with a paginated list of webhook objects.
Response
Delete a webhook
Permanently deletes a webhook. Nuvion stops delivering events to the endpoint immediately.DELETE /entity-webhooks/:webhookId
Request parameters
The ID of the webhook to delete.
Response
Returns200 OK confirming deletion.
Response
The Webhook Log object
Each delivery attempt is recorded as a log entry. Logs are immutable and retained regardless of delivery outcome.Unique log entry identifier.
The ID of the entity this log belongs to.
The ID of the webhook that triggered this delivery.
The URL this delivery was sent to at the time of the attempt.
The full HTTP request sent to the webhook endpoint, including headers and body. Any signing secrets or authentication tokens in headers are obfuscated.
URL query parameters included in the delivery request, if any.
The HTTP response received from the webhook endpoint, including status code, headers, and body.
Timestamps for the delivery lifecycle.
List webhook logs
Returns a paginated list of delivery log entries for the authenticated entity.GET /webhook-logs
Request parameters
Number of results per page. Between
1 and 100. Defaults to 20.ULID pagination cursor from a previous response. Omit for the first page.
Response
Returns200 OK with a paginated list of log objects.
Response
Signing secrets and authentication tokens in request headers are obfuscated in log entries and cannot be recovered from logs.
Send a test event
Sends a simulated event to an existing webhook endpoint. Use this to verify your endpoint is reachable and handling payloads correctly without waiting for a real event.POST /webhook-tests
Request parameters
The ID of the webhook to send the test event to.
The event group to simulate. One of
accounts, account_details, inflows, outflows, entities, funding_sessions, or payment_intent.The specific event to simulate within the group. One of
created, updated, deleted, completed, failed, cancelled, or refunded.Not all combinations of event_group and event_name are valid — for example, funding_sessions.created does not exist. Refer to the enabled_events structure for supported combinations.Response
Returns201 Created confirming the test was dispatched.
Response
