Event Structure
Bridge currently supports webhook events for the following API objects:
customer
kyc_link
liquidation_address.drain
static_memo.activity
transfer
virtual_account.activity
More event types will be added over time — your feedback is welcome. Let us know which event categories you'd like to see prioritized.
Example Events
virtual_account.activity.created
{
"api_version": "v0",
"event_id": "wh_t8TAhPPYrRV2v8Asi9ed3sw",
"event_developer_id": "371983-uery-1238-1238971",
"event_category": "virtual_account.activity",
"event_type": "virtual_account.activity.created",
"event_object_id": "fecffc8b-ed5e-48ae-bd24-b36268330b32",
"event_object_status": null,
"event_object": {
"id": "fecffc8b-ed5e-48ae-bd24-b36268330b32",
"type": "payment_submitted",
"amount": "1970.0",
"source": {
"description": "EXAMPLE TRANSACTION Brown-Beer Arnoldo Schimmel MD 01202024",
"sender_name": "Brown-Beer",
"payment_rail": "ach_push",
"sender_bank_routing_number": "023883013"
},
"gas_fee": "0.0",
"currency": "usdc",
"created_at": "2024-02-01T04:31:43.342Z",
"deposit_id": "c7fab38f-7b65-42d3-bc8d-a694cd1901c1",
"customer_id": "6ed47d9c-03be-420c-8699-369707ca02e9",
"subtotal_amount": "1970.0",
"virtual_account_id": "22033ca5-a991-476c-ade9-911d10f0ece6",
"exchange_fee_amount": "10.0",
"developer_fee_amount": "20.0"
},
"event_object_changes": {
},
"event_created_at": "2024-02-01T04:32:28.978Z"
}
virtual_account.activity.updated
For update events, the field event_object_changes will be populated with diffs from the previous webhook event in the event_object:
{
"api_version": "v0",
"event_id": "wh_t8trBtrPEqeFYLrQD9Zjog4",
"event_category": "virtual_account.activity",
"event_type": "virtual_account.activity.updated",
"event_object_id": "fecffc8b-ed5e-48ae-bd24-b36268330b32",
"event_object_status": null,
"event_object": {
"id": "fecffc8b-ed5e-48ae-bd24-b36268330b32",
"type": "payment_submitted",
"amount": "1970.0",
"source": {
"description": "EXAMPLE TRANSACTION Brown-Beer Arnoldo Schimmel MD 01202024",
"sender_name": "Brown-Beer",
"payment_rail": "ach_push",
"sender_bank_routing_number": "023883013"
},
"gas_fee": "0.0",
"currency": "usdc",
"created_at": "2024-02-01T04:31:43.342Z",
"deposit_id": "c7fab38f-7b65-42d3-bc8d-a694cd1901c1",
"customer_id": "6ed47d9c-03be-420c-8699-369707ca02e9",
"subtotal_amount": "1970.0",
"virtual_account_id": "22033ca5-a991-476c-ade9-911d10f0ece6",
"destination_tx_hash": "0xa7de792daa970f89cdb36dbce93026d10942ea24",
"exchange_fee_amount": "10.0",
"developer_fee_amount": "20.0"
},
"event_object_changes": {
"destination_tx_hash": [ null, "0xa7de792daa970f89cdb36dbce93026d10942ea24" ]
},
"event_created_at": "2024-02-01T04:34:13.763Z"
}
Event Definition
Metadata
Field | Description |
---|---|
api_version | API version, currently always "v0" |
event_id | Unique, immutable ID for this event. Useful for idempotency and deduplication. |
event_created_at | ISO 8601 timestamp of when the event was generated. |
event_developer_id | ID associated with the developer account receiving the event. |
Once an
event_id
gets assigned to an event, it remains unchanged. It’s a good candidate to use as anidempotency key
by the application logic on the receiving end.
Event Routing
Field | Description |
---|---|
event_category | Category of the event, e.g. transfer , kyc_link , customer , virtual_account.activity , etc. |
event_type | Fully qualified event type in the format <event_category>.<mutation_type> . |
Supported mutation types:
created
updated
updated.status_transitioned
(if status changed)deleted
(where applicable)
Object Details
Field | Description |
---|---|
event_object_id | Shortcut reference to the object's id (also found in event_object.id) |
event_object_status | High-level status of the object, when applicable (e.g., incomplete , approved ) |
event_object | The full resource object payload, structured identically to its API representation. |
event_object_changes | For updated events: a dictionary showing the diff between previous and current values. The format is { "field_name": ["old_value", "new_value"] } |
Supported Event Types
Event Category | Supported Event Types |
---|---|
customer | customer.created ,customer.updated ,customer.updated.status_transitioned ,customer.deleted |
kyc_link | kyc_link.created ,kyc_link.updated ,kyc_link.updated.status_transitioned |
liquidation_address.drain | liquidation_address.drain.created ,liquidation_address.drain.updated ,liquidation_address.drain.updated.status_transitioned |
static_memo.activity | static_memo.activity.created ,static_memo.activity.updated |
transfer | transfer.created ,transfer.updated ,transfer.updated.status_transitioned |
virtual_account.activity | virtual_account.activity.created ,virtual_account.activity.updated |
Updated 19 days ago