List Bindings
List all delivery bindings that route events to destinations. Each binding maps an event type to a deliverable resolver, serializer format, and destination.
A binding connects the four parts of the delivery flow: a signal filter (which events to listen for), a deliverable type (what payload to build), a serializer format (how to encode it), and a destination (where to send it). The compatibility triangle is enforced on creation.
Bindings are the core routing configuration for delivery. When a domain event (e.g. document.extracted) fires, the poller matches it against all active bindings. Each matching binding produces a separate delivery attempt — so a single event can fan out to multiple destinations simultaneously.
/v1/delivery/bindingsResponse
Response fields
Response
{
"data": [
{
"id": "c3d4e5f6-a7b8-9012-cdef-234567890123",
"name": "Notify on extraction complete",
"signal_filter": { "event_type": "document.extraction.completed" },
"deliverable_type": "document_capture",
"destination_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"serializer_format": "json",
"serializer_config": {},
"field_map": { "vendor": "$.vendor_name", "total": "$.amount" },
"delivery_policy": { "max_attempts": 5, "backoff_schedule": [1000, 5000, 30000, 120000, 600000] },
"is_active": true,
"last_status": "succeeded",
"created_at": "2024-09-10T09:00:00.000Z",
"updated_at": "2024-09-10T09:00:00.000Z"
}
]
}Errors
Error responses
Migrating from /v1/exports
Bindings are the successor to the retired /v1/exports surface. Every verb on every path under /v1/exports/ now returns 410 Gone with a machine-parseable body pointing at the replacement: the former /v1/exports/mappings maps to /v1/delivery/bindings, and the former /v1/exports/destinations maps to /v1/delivery/destinations. The response carries a Sunset header (RFC 8594), Deprecation: true, and a Link header with rel="successor-version" so HTTP tooling can surface the migration programmatically. The 410 is returned even without credentials, so an SDK with a stale key still receives an actionable error instead of a misleading 401.
Retired surface
curl -si https://api.talonic.com/v1/exports/mappings | head -8
HTTP/1.1 410 Gone
Sunset: Wed, 23 Apr 2026 00:00:00 GMT
Deprecation: true
Link: </v1/delivery/bindings>; rel="successor-version"
{"error":"Gone","message":"Moved to /v1/delivery/bindings and /v1/delivery/destinations. See docs.","replacement":"/v1/delivery/bindings"}/v1/exports/* — the surface is permanently retired, not rate-limited or temporarily down. Recreate each export mapping as a delivery binding and each export destination as a delivery destination, then point your integration at /v1/delivery/*.