Structure of Events
All event data will contain similar metadata.
The structure of a webhook event is as follows:
Event Structure
{
"event": {
"id": "e99b3bb9-25e4-484f-8a6d-6bc28edbbf39",
"type": "<TYPE OF EVENT DEFINED BELOW>",
"timestamp": "2024-04-09T13:56:37.864Z",
"tenant_id": "869d5b1c-1ae8-4ce6-96c6-73a602b407ff",
"trace_id": "0f777425-9080-4d82-b557-799f43aefcba",
"data": {
"EVENT-SPECIFIC-OBJECT": {...},
"actor": {
"id": "...",
"type": "...",
"name": "..."
}
}
},
"delivered_at": "2024-04-09T13:56:42.673Z"
}
| Name | Type | Description |
|---|
| event | object | The main event object containing event details |
| event.id | string | Unique identifier for the event |
| event.type | string | Type of event (see details below for each event) |
| event.timestamp | string | ISO 8601 formatted timestamp of when the event occurred |
| event.tenant_id | string | Unique identifier for the tenant associated with the event |
| event.trace_id | string | Unique identifier for tracing this event across systems |
| event.data.EVENT-SPECIFIC-OBJECT | object | Object containing data specific to the event type. The property name will be different based on the event. |
| event.data.actor | object | Information about the actor who triggered the event (if available) |
| event.data.actor.id | string | Unique identifier for the actor |
| event.data.actor.type | string | Type of the actor (application, user, admin, system) |
| event.data.actor.name | string | Name or identifier of the actor |
| delivered_at | string | ISO 8601 formatted timestamp of when the event was delivered |
The individual data objects are defined below by type.
3DS Sessions
Session Authenticated
3ds.session.authenticated
{
"session": {
"id": "...",
"type": "...",
"authentication_status": "...",
"created_at": "...",
"created_by": "...",
"device": "...",
"expires_at": "...",
"token_id": "...",
"card_brand": "...",
"metadata": { ... }
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.type | String | The session type (customer or merchant) |
| session.authentication_status | String | The status of the authentication. |
| session.created_at | String | The creation date of the session in ISO 8601 format. |
| session.created_by | String | The Application ID which created the session |
| session.device | String | The device used to create the session (browser or mobile). |
| session.expires_at | String | The expiration date of the session in ISO 8601 format. |
| session.token_id | String | The unique identifier for the card token referenced by this session. |
| session.token_intent_id | String | The unique identifier for the card token intent referenced by this session. |
| session.card_brand | String | The brand of the card associated with the session. |
| session.metadata | Object | A key-value map of strings containing custom data associated with the session. |
Challenge Result Retrieved
3ds.session.challenge-result-retrieved
{
"session": {
"id": "...",
"type": "...",
"tenant_id": "...",
"created_at": "...",
"created_by": "...",
"device": "...",
"expires_at": "...",
"token_id": "...",
"card_brand": "...",
"metadata": { ... }
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.type | String | The session type (customer or merchant) |
| session.tenant_id | String | The unique identifier of the Tenant associated with the session. |
| session.created_at | String | The creation date of the session in ISO 8601 format. |
| session.created_by | String | The Application ID which created the session |
| session.device | String | The device used to create the session (browser or mobile). |
| session.expires_at | String | The expiration date of the session in ISO 8601 format. |
| session.token_id | String | The unique identifier for the card token referenced by this session. |
| session.token_intent_id | String | The unique identifier for the card token intent referenced by this session. |
| session.card_brand | String | The brand of the card associated with the session. |
| session.metadata | Object | A key-value map of strings containing custom data associated with the session. |
Session Created
3ds.session.created
{
"session": {
"id": "...",
"type": "...",
"tenant_id": "...",
"created_at": "...",
"created_by": "...",
"device": "...",
"expires_at": "...",
"token_id": "...",
"card_brand": "...",
"metadata": { ... }
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.type | String | The session type (customer or merchant) |
| session.tenant_id | String | The unique identifier of the Tenant associated with the session. |
| session.created_at | String | The creation date of the session in ISO 8601 format. |
| session.created_by | String | The Application ID which created the session |
| session.device | String | The device used to create the session (browser or mobile). |
| session.expires_at | String | The expiration date of the session in ISO 8601 format. |
| session.token_id | String | The unique identifier for the card token referenced by this session. |
| session.token_intent_id | String | The unique identifier for the card token intent referenced by this session. |
| session.card_brand | String | The brand of the card associated with the session. |
| session.metadata | Object | A key-value map of strings containing custom data associated with the session. |
Method Request Completed
3ds.session.method-completed
{
"session": {
"id": "...",
"type": "...",
"tenant_id": "...",
"metadata": { ... }
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.type | String | The session type (customer or merchant) |
| session.tenant_id | String | The unique identifier of the Tenant associated with the session. |
| session.metadata | Object | A key-value map of strings containing custom data associated with the session. |
Challenge Completed
3ds.session.challenge-completed
{
"session": {
"id": "...",
"type": "...",
"tenant_id": "...",
"authentication_status": "...",
"metadata": { ... }
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.type | String | The session type (customer or merchant) |
| session.tenant_id | String | The unique identifier of the Tenant associated with the session. |
| session.authentication_status | String | The authentication status for the challenge between successful and failed. |
| session.metadata | Object | A key-value map of strings containing custom data associated with the session. |
Decoupled Challenge Notification
3ds.session.decoupled-challenge-notification
{
"session": {
"id": "...",
"type": "...",
"tenant_id": "...",
"metadata": { ... }
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.type | String | The session type (customer or merchant) |
| session.tenant_id | String | The unique identifier of the Tenant associated with the session. |
| session.metadata | Object | A key-value map of strings containing custom data associated with the session. |
Account Updater
Job Completed
account-updater.job.completed
{
"job": {
"id": "55256454-c9f9-4e79-bc9e-24bd38af5c21",
"status": "completed"
}
}
| Name | Type | Description |
|---|
| job.id | String | The unique identifier of the job. |
| job.status | String | The current status of the job. |
Job Created
account-updater.job.created
{
"job": {
"id": "55256454-c9f9-4e79-bc9e-24bd38af5c21",
"status": "pending"
}
}
| Name | Type | Description |
|---|
| job.id | String | The unique identifier of the job. |
| job.status | String | The current status of the job. |
Job Failed
account-updater.job.failed
{
"job": {
"id": "55256454-c9f9-4e79-bc9e-24bd38af5c21",
"status": "failed"
}
}
| Name | Type | Description |
|---|
| job.id | String | The unique identifier of the job. |
| job.status | String | The current status of the job. |
Agentic Payments
Agentic Payments events are triggered during the lifecycle of payment methods, allowances and payment credentials.
These events nest their fields under a fixed payload key on event.data, the same key for every event type rather than a key named after the resource, and include an actor identifying the application whose API key made the request. actor.name is null when the application name could not be resolved, and events triggered without an API key, such as a provider's browser callback, omit actor entirely.
Payment Method Created
agentic.payment-method.created
{
"payload": {
"payment_method_id": "...",
"source_type": "...",
"rails": ["...", "..."]
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.payment_method_id | String | The unique identifier of the payment method. |
| payload.source_type | String | The type of source the payment method was created from. Currently always basis_theory_card_token. |
| payload.rails | Array of Strings | The names of the rails that were provisioned, such as agentic-token or spt. A rail is listed even when its provisioning ended in error, so read the payment method to learn each rail's status before using it. |
Payment Method Rail Retried
agentic.payment-method.rail.retried
{
"payload": {
"payment_method_id": "...",
"rail": "...",
"provider": "...",
"status": "..."
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.payment_method_id | String | The unique identifier of the payment method. |
| payload.rail | String | The rail that was retried: agentic-token or spt. |
| payload.provider | String | The provider behind the rail: vic, agentpay or stripe. |
| payload.status | String | The rail's status after the retry: enabled, pending or error. A retry that failed again is delivered with status set to error, matching the error the API returned. |
Payment Method Deleted
agentic.payment-method.deleted
{
"payload": {
"payment_method_id": "..."
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.payment_method_id | String | The unique identifier of the deleted payment method. The delete also cancels the payment method's allowances, and each cancellation publishes its own agentic.allowance.deleted event. |
Allowance Created
agentic.allowance.created
{
"payload": {
"allowance_id": "...",
"payment_method_id": "...",
"amount": {
"value": "...",
"currency": "..."
},
"rails": [
{
"rail": "...",
"provider": "...",
"status": "..."
}
]
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.allowance_id | String | The unique identifier of the allowance. |
| payload.payment_method_id | String | The unique identifier of the payment method the allowance was created against. |
| payload.amount.value | String | The amount the allowance authorizes, as a decimal string. |
| payload.amount.currency | String | The ISO 4217 currency code of the amount. |
| payload.rails | Array | One entry per allowance rail. |
| payload.rails[].rail | String | The rail name: agentic-token or spt. |
| payload.rails[].provider | String | The provider behind the rail: vic, agentpay or stripe. |
| payload.rails[].status | String | The rail's status: active, pending_verification or error. A rail in pending_verification requires verification before minting. |
Allowance Updated
agentic.allowance.updated
{
"payload": {
"allowance_id": "..."
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.allowance_id | String | The unique identifier of the updated allowance. The event carries no diff, so read the allowance to learn what changed. |
Allowance Rail Retried
agentic.allowance.rail.retried
{
"payload": {
"allowance_id": "...",
"rail": "...",
"provider": "...",
"status": "..."
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.allowance_id | String | The unique identifier of the allowance. |
| payload.rail | String | The rail that was retried: agentic-token or spt. |
| payload.provider | String | The provider behind the rail: vic, agentpay or stripe. |
| payload.status | String | The rail's status after the retry: active, pending_verification or error. A retry that failed again is delivered with status set to error, matching the error the API returned. |
Allowance Verification Completed
agentic.allowance.verification.completed
{
"payload": {
"allowance_id": "...",
"rail": "...",
"provider": "..."
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.allowance_id | String | The unique identifier of the allowance whose rail became active. Credentials can now be minted from this rail. |
| payload.rail | String | The verified rail: agentic-token or spt. |
| payload.provider | String | The provider behind the rail: vic, agentpay or stripe. |
This event fires on whichever verification action reached active, for every provider's ceremony, so a backend can rely on it as the activation signal without knowing which ceremony the frontend drove.
Allowance Deleted
agentic.allowance.deleted
{
"payload": {
"allowance_id": "..."
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.allowance_id | String | The unique identifier of the cancelled allowance. No credential can be minted from it afterwards. This event is also published for each allowance cancelled by a payment method delete. |
Payment Credential Created
agentic.payment-credential.created
{
"payload": {
"credential_id": "...",
"allowance_id": "...",
"rail": "...",
"provider": "...",
"format": "..."
},
"actor": {
"id": "...",
"type": "application",
"name": "..."
}
}
| Name | Type | Description |
|---|
| payload.credential_id | String | The unique identifier of the payment credential. |
| payload.allowance_id | String | The unique identifier of the allowance the credential was minted from. |
| payload.rail | String | The rail the credential was minted on: agentic-token or spt. |
| payload.provider | String | The provider that issued the credential: vic, agentpay or stripe. |
| payload.format | String | The credential format: card, network-token, identifier or mpp. |
The event marks that a mint committed allowance spend, which makes it a natural hook for ledger reconciliation. It deliberately carries neither the credential value nor the minted amount; the value is returned once in the API response and never again.
Apple Pay
Resource Created
apple-pay.created
{
"apple_pay": {
"id": "...",
"type": "...",
"status": "...",
"ingest_source": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "..."
}
}
| Name | Type | Description |
|---|
| apple_pay.id | String | The unique identifier of the resource. |
| apple_pay.type | String | The type of the resource. See Token Types. |
| apple_pay.status | String | The status of the resource. |
| apple_pay.ingest_source | String | How the resource was ingested. device_decrypted for POST /apple-pay; stripe_forward for Stripe Forward. |
| apple_pay.created_by | String | The creator of the resource. |
| apple_pay.created_at | String | The creation date of the resource in ISO 8601 format. |
| apple_pay.expires_at | String | The expiration date of the resource in ISO 8601 format. |
Resource Deleted
apple-pay.deleted
{
"apple_pay": {
"id": "...",
"type": "...",
"status": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "...",
"modified_at": "...",
"modified_by": "..."
}
}
| Name | Type | Description |
|---|
| apple_pay.id | String | The unique identifier of the resource. |
| apple_pay.type | String | The type of the resource. |
| apple_pay.status | String | The status of the resource. |
| apple_pay.created_by | String | The creator of the resource. |
| apple_pay.created_at | String | The creation date of the resource in ISO 8601 format. |
| apple_pay.expires_at | String | The expiration date of the resource in ISO 8601 format. |
| apple_pay.modified_at | String | The modification date of the resource in ISO 8601 format. |
| apple_pay.modified_by | String | The user or application that modified the resource. |
Resource Retrieved
apple-pay.retrieved
{
"apple_pay": {
"id": "...",
"type": "..."
}
}
| Name | Type | Description |
|---|
| apple_pay.id | String | The unique identifier of the resource. |
| apple_pay.type | String | The type of the resource. |
Resource Unlinked
apple-pay.unlinked
{
"apple_pay": {
"id": "...",
"type": "...",
"status": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "...",
"modified_at": "...",
"modified_by": "..."
}
}
| Name | Type | Description |
|---|
| apple_pay.id | String | The unique identifier of the resource. |
| apple_pay.type | String | The type of the resource. |
| apple_pay.status | String | The status of the resource. |
| apple_pay.created_by | String | The creator of the resource. |
| apple_pay.created_at | String | The creation date of the resource in ISO 8601 format. |
| apple_pay.expires_at | String | The expiration date of the resource in ISO 8601 format. |
| apple_pay.modified_at | String | The modification date of the resource in ISO 8601 format. |
| apple_pay.modified_by | String | The user or application that modified the resource. |
Resource Updated
apple-pay.updated
{
"apple_pay": {
"id": "...",
"type": "...",
"status": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "...",
"modified_at": "...",
"modified_by": "..."
}
}
| Name | Type | Description |
|---|
| apple_pay.id | String | The unique identifier of the resource. |
| apple_pay.type | String | The type of the resource. |
| apple_pay.status | String | The status of the resource. |
| apple_pay.created_by | String | The creator of the resource. |
| apple_pay.created_at | String | The creation date of the resource in ISO 8601 format. |
| apple_pay.expires_at | String | The expiration date of the resource in ISO 8601 format. |
| apple_pay.modified_at | String | The modification date of the resource in ISO 8601 format. |
| apple_pay.modified_by | String | The user or application that modified the resource. |
Applications
Application Created
application.created
{
"application": {
"id": "123e4567-e89b-12d3-a456-426614174000",
"type": "...",
"name": "...",
"created_by": "...",
"created_at": "...",
"permissions": [
"..."
],
"rules": [
{
"description": "...",
"priority": 1,
"container": "...",
"transform": "...",
"conditions": [
{
"attribute": "...",
"operator": "...",
"value": "..."
}
],
"permissions": [
"..."
]
}
]
}
}
| Name | Type | Description |
|---|
| application.id | String | The unique identifier of the Application. |
| application.type | String | The type of the application. |
| application.name | String | The name of the application. |
| application.created_by | String | The user or application that created the application. |
| application.created_at | String | The creation date of the application in ISO 8601 format. |
| application.permissions | Array | An array of Permissions granted to the application |
| application.rules | Array | An array of Access Rules granted to the application |
| application.rules[].description | String | A description of the rule. |
| application.rules[].priority | Number | The priority level of the rule. |
| application.rules[].container | String | The container associated with the rule. |
| application.rules[].transform | String | The transform applied by the rule. |
| application.rules[].conditions | Array | List of conditions to be satisfied for the rule to be used. Only applies to sessions |
| application.rules[].conditions[].attribute | String | The attribute evaluated in the condition. |
| application.rules[].conditions[].operator | String | The operator used in the condition. |
| application.rules[].conditions[].value | String | The value to compare against in the condition. |
| application.rules[].permissions | Array | An array of permissions granted by the rule. |
Application Updated
application.updated
{
"application": {
"id": "...",
"name": "...",
"type": "...",
"permissions": [
"..."
],
"rules": [
{
"description": "...",
"priority": 0,
"container": "...",
"transform": "...",
"conditions": [
{
"attribute": "...",
"operator": "...",
"value": "..."
}
],
"permissions": [
"..."
]
}
],
"created_at": "...",
"created_by": "...",
"modified_at": "...",
"modified_by": "..."
}
}
| Name | Type | Description |
|---|
| application.id | String | The unique identifier of the Application. |
| application.name | String | The name of the application. |
| application.type | String | The type of the application. |
| application.permissions | Array | An array of Permissions granted to the application |
| application.rules | Array | An array of Access Rules granted to the application |
| application.rules[].description | String | A description of the rule. |
| application.rules[].priority | Number | The priority level of the rule (0 indicates the highest priority). |
| application.rules[].container | String | The container associated with the rule. |
| application.rules[].transform | String | The transform applied by the rule. |
| application.rules[].conditions | Array | List of conditions to be satisfied for the rule to be used. Only applies to sessions |
| application.rules[].conditions[].attribute | String | The attribute evaluated in the condition. |
| application.rules[].conditions[].operator | String | The operator used for the evaluation. |
| application.rules[].conditions[].value | String | The value to compare against in the condition. |
| application.rules[].permissions | Array | List of permissions granted on this Access Rule |
| application.created_at | String | The creation date of the application in ISO 8601 format. |
| application.created_by | String | The user or system that created the application. |
| application.modified_at | String | The last modified date of the application in ISO 8601 format. |
| application.modified_by | String | The last user or system that modified the application. |
Application Deleted
application.deleted
{
"application": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| application.id | String | The unique identifier of the application. |
Application Keys
Application Key Created
application.key.created
{
"application_key": {
"id": "...",
"application_id": "...",
"version": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| application_key.id | String | The unique identifier of the application key. |
| application_key.application_id | String | The unique identifier of the associated Application. |
| application_key.version | String | The version of the application key. |
| application_key.created_at | String | The creation date of the application key in ISO 8601 format. |
| application_key.created_by | String | The user or application that created the application key. |
Application Key Deleted
application.key.deleted
{
"application_key": {
"id": "...",
"application_id": "..."
}
}
| Name | Type | Description |
|---|
| application_key.id | String | The unique identifier of the application key. |
| application_key.application_id | String | The unique identifier of the associated Application. |
Enrichments
Bank Account Verification
token.bank-account.verified
{
"token": {
"id": "...",
"type": "..."
},
"bank_account": {
"status": "..."
}
}
| Name | Type | Description |
|---|
| token.id | String | The unique identifier of the token. |
| token.type | String | The token type |
| bank_account.status | String | The status of the bank account |
Http
Request
http.request
{
"request": {
"method": "POST",
"path": "/tokens",
"headers": {
"Host": [
"localhost:5090"
],
"Content-Type": [
"application/json; charset=utf-8"
],
"Content-Length": [
"279"
],
"BT-TRACE-ID": [
"6f100e49-b64b-4747-9049-78d44f1ceb13"
],
"BT-API-KEY": [
"ke***f2 (length 75)"
]
}
},
"response": {
"status": 201,
"headers": {
"Content-Type": [
"application/json; charset=utf-8"
],
"Content-Length": [
"633"
],
"BT-TRACE-ID": [
"6f100e49-b64b-4747-9049-78d44f1ceb13"
],
"Date": [
"Fr***MT (length 29)"
],
"Server": [
"*******"
],
"Location": [
"ht***3d (length 65)"
]
}
}
}
| Name | Type | Description |
|---|
| request.method | String | The HTTP method used for the request (e.g., POST). |
| request.path | String | The path of the request (e.g., /tokens). |
| request.headers | Object | The headers included in the request. |
| request.headers.Host | Array | The host header of the request. |
| request.headers.Content-Type | Array | The content type of the request. |
| request.headers.Content-Length | Array | The length of the request body. |
| request.headers.BT-TRACE-ID | Array | The trace ID for tracking the request. |
| request.headers.BT-API-KEY | Array | The API key used for the request (partially masked). |
| response.status | Number | The HTTP status code returned in the response (e.g., 201). |
| response.headers | Object | The headers returned in the response. |
| response.headers.Content-Type | Array | The content type of the response. |
| response.headers.Content-Length | Array | The length of the response body. |
| response.headers.BT-TRACE-ID | Array | The trace ID for tracking the response. |
| response.headers.Date | Array | The date header of the response (partially masked). |
| response.headers.Server | Array | The server information returned in the response (partially masked). |
| response.headers.Location | Array | The location header indicating where to find the resource (partially masked). |
Proxies
Proxy Created
proxy.created
{
"proxy": {
"id": "...",
"name": "...",
"application_id": "...",
"destination_url": "...",
"require_authentication": ...,
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| proxy.id | String | The unique identifier of the proxy. |
| proxy.name | String | The name of the proxy. |
| proxy.application_id | String | The unique identifier of the associated Application. |
| proxy.destination_url | String | The destination URL that the proxy forwards requests to. |
| proxy.require_authentication | Boolean | Indicates whether authentication is required for the proxy. |
| proxy.created_at | String | The creation date of the proxy in ISO 8601 format. |
| proxy.created_by | String | The user or application that created the proxy. |
Proxy Deleted
proxy.deleted
{
"proxy": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| proxy.id | String | The unique identifier of the proxy. |
Proxy Invoked
proxy.invoked
{
"proxy": {
"id": "...",
"name": "...",
"response": {
"error": { ... },
"status": 401
},
"type": "..."
},
"destination": {
"request": {
"body": "...",
"headers": {
"...": [
"..."
]
},
"method": "...",
"query": "",
"url": "..."
},
"response": {
"body": "...",
"elapsed_ms": 105,
"headers": {
"...": [
"..."
]
},
"status": 200
}
},
"request_transform": {
"response": {
"error": { ... }
}
},
"response_transform": {
"response": {
"error": { ... }
}
},
"request": {
"headers": "...",
"method": "...",
"url": "..."
},
"response": {
"headers": "...",
"status_code": "...",
"elapsed_ms": ...
}
}
| Name | Type | Description |
|---|
| proxy.id | String | The unique identifier of the proxy |
| proxy.name | String | The name of the proxy. |
| proxy.type | String | The type of the proxy. |
| proxy.response.error | Error | If the proxy fails with an error. See below |
| proxy.response.elapsed_ms | Number | The total time taken for the proxy to respond |
| proxy.response.status | Number | The HTTP status code returned by the proxy |
| destination.request.body | String | Sanitized body of the request sent to the destination. This is the output of a successful request transform |
| destination.request.headers | Key:List of Strings | An object containing the request headers sent to the destination |
| destination.request.method | String | HTTP Method used to call the destination |
| destination.request.query | String | The URL query parameters |
| destination.request.url | String | The destination URL |
| destination.response.body | String | Sanitized body of the response from the destination |
| destination.response.elapsed_ms | Number | The length of time for the destination to respond |
| destination.response.headers | Key:List of Strings | An object containing the request headers sent to the destination |
| destination.response.status | Number | The HTTP status code sent by the destination |
| request_transform.response.error | Error | If the request transform fails. See below |
| response_transform.response.error | Error | If the response transform fails. See below |
| request.headers | String | (Deprecated) The headers included in the request. |
| request.method | String | (Deprecated) The HTTP method used for the request (e.g., GET, POST). |
| request.url | String | (Deprecated) The URL to which the request is sent. |
| response.headers | String | (Deprecated) The headers returned in the response. |
| response.status_code | String | (Deprecated) The HTTP status code returned in the response. |
| response.elapsed_ms | Number | (Deprecated) The time taken to process the request in milliseconds. |
Proxy Invoked Errors
The .error objects in the proxy.response, request_transform.response, and response_transform.response objects will be one of two types of proxy errors.
Proxy Transform Error Handling and Reactor Error Handling
Standard proxy error
"error": {
"errors": {
"error": [
"MY-CUSTOM-API-KEY header is required"
]
},
"title": "One or more validation errors occurred.",
"status": 401,
"detail": "Authentication Failed"
}
Custom proxy error
"error": {
"body": {
"myCustomError": "My custom error message"
},
"headers": {
"Custom-Response-Header-1": "custom-value-1",
"Custom-Response-Header-2": "custom-value-2"
}
}
Proxy Updated
proxy.updated
{
"proxy": {
"id": "...",
"name": "...",
"proxy_host": "...",
"timeout": ...,
"destination_url": "...",
"require_authentication": ...,
"created_at": "...",
"created_by": "...",
"modified_at": "...",
"modified_by": "..."
}
}
| Name | Type | Description |
|---|
| proxy.id | String | The unique identifier of the proxy. |
| proxy.name | String | The name of the proxy. |
| proxy.proxy_host | String | The host address of the proxy server. |
| proxy.timeout | String | Custom timeout settings in seconds. |
| proxy.destination_url | String | The destination URL that the proxy forwards requests to. |
| proxy.require_authentication | Boolean | Indicates whether authentication is required for the proxy. |
| proxy.created_at | String | The creation date of the proxy in ISO 8601 format. |
| proxy.created_by | String | The user or system that created the proxy. |
| proxy.modified_at | String | The last modified date of the proxy in ISO 8601 format. |
| proxy.modified_by | String | The last user or system that modified the proxy. |
Proxy Vulnerabilities Discovered
proxy.vulnerabilities_discovered
{
"proxy": {
"id": "...",
"name": "..."
},
"transform": {
"type": "request"
},
"vulnerabilities": {
"count": 2,
"severity_summary": {
"critical": 0,
"high": 1,
"medium": 1,
"low": 0
},
"packages_affected": [
"jsonwebtoken",
"express"
]
},
"discovered_at": "2026-03-09T00:14:21Z"
}
| Name | Type | Description |
|---|
| proxy.id | String | The unique identifier of the proxy. |
| proxy.name | String | The name of the proxy. |
| transform.type | String | The transform type where vulnerabilities were discovered (request or response). |
| vulnerabilities.count | Number | Total number of detected vulnerabilities. |
| vulnerabilities.severity_summary | Object | Severity breakdown of the detected vulnerabilities. |
| vulnerabilities.severity_summary.critical | Number | Number of CRITICAL vulnerabilities. |
| vulnerabilities.severity_summary.high | Number | Number of HIGH vulnerabilities. |
| vulnerabilities.severity_summary.medium | Number | Number of MEDIUM vulnerabilities. |
| vulnerabilities.severity_summary.low | Number | Number of LOW vulnerabilities. |
| vulnerabilities.packages_affected | Array | Distinct package names affected by vulnerabilities (up to 20 values). |
| discovered_at | String | ISO 8601 timestamp indicating when vulnerabilities were discovered. |
Reactors
Reactor Completed
reactor.completed
{
"reactor": {
"id": "...",
"name": "..."
},
"request": {
"id": "...",
"invocation_type": "..."
},
"elapsed_ms": ...
}
| Name | Type | Description |
|---|
| reactor.id | String | The unique identifier of the reactor. |
| reactor.name | String | The name of the reactor. |
| request.id | String | (Optional) The unique identifier of the request if the invocation_type is async. Can be used to retrieve the results of the invocation. |
| request.invocation_type | String | Either sync or async |
| elapsed_ms | Number | The time taken to process the request in milliseconds. |
Reactor Created
reactor.created
{
"reactor": {
"id": "...",
"name": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| reactor.id | String | The unique identifier of the reactor. |
| reactor.name | String | The name of the reactor. |
| reactor.created_at | String | The creation date of the reactor in ISO 8601 format. |
| reactor.created_by | String | The user or application that created the reactor. |
Reactor Deleted
reactor.deleted
{
"reactor": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| reactor.id | String | The unique identifier of the reactor. |
Reactor Failed
reactor.failed
{
"reactor": {
"id": "...",
"name": "..."
},
"request": {
"id": "...",
"invocation_type": "..."
},
"error": "...",
"elapsed_ms": ...
}
| Name | Type | Description |
|---|
| reactor.id | String | The unique identifier of the reactor. |
| reactor.name | String | The name of the reactor. |
| request.id | String | (Optional) The unique identifier of the request if the invocation_type is async. Can be used to retrieve the results of the invocation. |
| request.invocation_type | String | Either sync or async |
| error | String | A message describing any error that occurred. |
| elapsed_ms | Number | The time taken to process the request in milliseconds. |
Reactor Invoked
reactor.invoked
{
"reactor": {
"id": "...",
"name": "..."
},
"request": {
"id": "...",
"invocation_type": "..."
}
}
| Name | Type | Description |
|---|
| reactor.id | String | The unique identifier of the reactor. |
| reactor.name | String | The name of the reactor. |
| request.id | String | (Optional) The unique identifier of the request if the invocation_type is async. Can be used to retrieve the results of the invocation. |
| request.invocation_type | String | Either sync or async |
Reactor Updated
reactor.updated
{
"reactor": {
"id": "...",
"name": "...",
"created_at": "...",
"created_by": "...",
"modified_by": "...",
"modified_at": "..."
}
}
| Name | Type | Description |
|---|
| reactor.id | String | The unique identifier of the reactor. |
| reactor.name | String | The name of the reactor. |
| reactor.created_at | String | The creation date of the reactor in ISO 8601 format. |
| reactor.created_by | String | The user or application that created the reactor. |
| reactor.modified_by | String | The last user or application that modified the reactor. |
| reactor.modified_at | String | The last modified date of the reactor in ISO 8601 format. |
Reactor Vulnerabilities Discovered
reactor.vulnerabilities_discovered
{
"reactor": {
"id": "...",
"name": "..."
},
"vulnerabilities": {
"count": 3,
"severity_summary": {
"critical": 1,
"high": 1,
"medium": 1,
"low": 0
},
"packages_affected": [
"axios",
"lodash",
"minimist"
]
},
"discovered_at": "2026-03-09T00:14:21Z"
}
| Name | Type | Description |
|---|
| reactor.id | String | The unique identifier of the reactor. |
| reactor.name | String | The name of the reactor. |
| vulnerabilities.count | Number | Total number of detected vulnerabilities. |
| vulnerabilities.severity_summary | Object | Severity breakdown of the detected vulnerabilities. |
| vulnerabilities.severity_summary.critical | Number | Number of CRITICAL vulnerabilities. |
| vulnerabilities.severity_summary.high | Number | Number of HIGH vulnerabilities. |
| vulnerabilities.severity_summary.medium | Number | Number of MEDIUM vulnerabilities. |
| vulnerabilities.severity_summary.low | Number | Number of LOW vulnerabilities. |
| vulnerabilities.packages_affected | Array | Distinct package names affected by vulnerabilities (up to 20 values). |
| discovered_at | String | ISO 8601 timestamp indicating when vulnerabilities were discovered. |
Runtime Logs
reactor.log and proxy.log events contain ordered application and lifecycle records from one Reactor or Proxy code-transform invocation.
reactor.log uses this data shape:
reactor.log
{
"invocation_id": "...",
"reactor": {
"id": "..."
},
"sequence_start": 0,
"sequence_end": 2,
"records": [
...
]
}
proxy.log uses this data shape:
proxy.log
{
"invocation_id": "...",
"proxy": {
"id": "..."
},
"transform_type": "request_transform",
"sequence_start": 0,
"sequence_end": 2,
"records": [
...
]
}
Runtime Log Event Data Fields
Runtime-log event batches have these data fields:
| Name | Type | Presence | Applies to | Description |
|---|
| invocation_id | String | Required | reactor.log, proxy.log | Invocation identity shared by every batch from one invocation. |
| reactor | Object | Required | reactor.log | Customer-visible Reactor resource. |
| reactor.id | String | Required | reactor.log | Reactor identifier. |
| proxy | Object | Required | proxy.log | Customer-visible Proxy resource. |
| proxy.id | String | Required | proxy.log | Proxy identifier. |
| transform_type | String | Required | proxy.log | request_transform or response_transform. |
| sequence_start | Number | Required | reactor.log, proxy.log | Sequence of the first record in this batch. |
| sequence_end | Number | Required | reactor.log, proxy.log | Sequence of the last record in this batch. |
| records | Array | Required | reactor.log, proxy.log | Non-empty ordered array. Each item follows the runtime-log record fields. |
Runtime Log Record Fields
Each runtime-log record has this shape:
| Name | Type | Presence | Description |
|---|
| occurred_at | String | Required | ISO 8601 timestamp when the record occurred. |
| sequence | Number | Required | Invocation-local record order. |
| source | String | Required | application for logger output or platform for runtime lifecycle records. |
| record_type | String | Required | log for application records or lifecycle for platform records. |
| event | String | Lifecycle only | execution.started or execution.completed. |
| level | String | Application only | debug, info, warn, or error. |
| message | String | Application only | Sanitized application message. If no message argument is supplied, this is the direct Error's message when present, otherwise an empty string. |
| attributes | Object | Optional application field | Sanitized structured attributes supplied to the logger. |
| error | Object | Optional application field | Sanitized details from a direct JavaScript Error. |
| error.type | String | When error is present | Error type or name. |
| error.message | String | When error is present | Error message. |
| error.stack_trace | String | Optional when error is present | Sanitized stack trace. |
| outcome | String | Completed lifecycle only | success, timeout, out_of_memory, application_error, or platform_error. |
| duration_ms | Number | Optional completed lifecycle field | Elapsed execution time in milliseconds. |
The event envelope, including event.trace_id, follows the common event structure. Related events can share this request-level correlation identifier, while event.data.invocation_id identifies one runtime execution. Deduplicate repeated deliveries by event.id. event.timestamp describes event creation, occurred_at describes an individual record, and delivered_at describes one delivery attempt. None of these timestamps defines record order.
See Runtime Logs for complete Reactor, request-transform, and response-transform examples, batching, ordering, sanitization, and capture limitations. See Webhooks for signature verification, retries, and idempotent processing.
Sessions
Session Authorized
session.authorized
{
"session": {
"id": "...",
"created_at": "...",
"created_by": "...",
"expires_at": "...",
"permissions": [
"..."
],
"rules": [
{
"description": "...",
"priority": 0,
"container": "...",
"transform": "...",
"conditions": [
{
"attribute": "...",
"operator": "...",
"value": "..."
}
],
"permissions": [
"..."
]
}
],
"issued_to_application": {
"id": "...",
"name": "..."
}
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.created_at | String | The creation date of the session in ISO 8601 format. |
| session.created_by | String | The user or system that created the session. |
| session.expires_at | String | The expiration date of the session in ISO 8601 format. |
| session.permissions | Array | An array of Permissions associated with the session. |
| session.rules | Array | An array of Access Rules defined for the session. |
| session.rules[].description | String | A description of the rule. |
| session.rules[].priority | Number | The priority level of the rule. |
| session.rules[].container | String | The container associated with the rule. |
| session.rules[].transform | String | The transform applied by the rule. |
| session.rules[].conditions | Array | An array of conditions that must be met for the rule. |
| session.rules[].conditions[].attribute | String | The attribute evaluated in the condition. |
| session.rules[].conditions[].operator | String | The operator used in the condition. |
| session.rules[].conditions[].value | String | The value to compare against in the condition. |
| session.rules[].permissions | Array | An array of Permissions granted by the rule. |
| session.issued_to_application.id | String | The unique identifier of the Application to which the session is issued. |
| session.issued_to_application.name | String | The name of the application to which the session is issued. |
Session Created
session.created
{
"session": {
"id": "...",
"created_at": "...",
"created_by": "...",
"expires_at": "...",
"issued_to_application": {
"id": "...",
"name": "..."
}
}
}
| Name | Type | Description |
|---|
| session.id | String | The unique identifier of the session. |
| session.created_at | String | The creation date of the session in ISO 8601 format. |
| session.created_by | String | The user or application that created the session. |
| session.expires_at | String | The expiration date of the session in ISO 8601 format. |
| session.issued_to_application.id | String | The unique identifier of the application to which the session is issued. |
| session.issued_to_application.name | String | The name of the application to which the session is issued. |
Tenants
Tenant Created
tenant.created
{
"tenant": {
"id": "...",
"name": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| tenant.id | String | The unique identifier of the Tenant. |
| tenant.name | String | The name of the tenant. |
| tenant.created_at | String | The creation date of the tenant in ISO 8601 format. |
| tenant.created_by | String | The user or application that created the tenant. |
Tenant Updated
tenant.updated
{
"tenant": {
"id": "...",
"name": "...",
"created_at": "...",
"created_by": "...",
"modified_at": "...",
"modified_by": "..."
}
}
| Name | Type | Description |
|---|
| tenant.id | String | The unique identifier of the Tenant. |
| tenant.name | String | The name of the tenant. |
| tenant.created_at | String | The creation date of the tenant in ISO 8601 format. |
| tenant.created_by | String | The creator of the tenant. |
| tenant.modified_at | String | The last modified date of the tenant in ISO 8601 format. |
| tenant.modified_by | String | The user or application that modified the tenant. |
Tenant Deleted
tenant.deleted
{
"tenant": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| tenant.id | String | The unique identifier of the Tenant. |
Tenant Vulnerabilities Notified
tenant.vulnerabilities_notified
{
"tenant": {
"id": "...",
"name": "..."
},
"notification": {
"email_address": "security@example.com",
"notified_at": "2026-03-10T09:00:00Z"
},
"affected_resources": {
"reactors": [
{
"id": "...",
"name": "..."
}
],
"proxies": [
{
"id": "...",
"name": "..."
}
]
}
}
| Name | Type | Description |
|---|
| tenant.id | String | The unique identifier of the tenant. |
| tenant.name | String | The name of the tenant. |
| notification.email_address | String | Email address used for the vulnerability notification. |
| notification.notified_at | String | ISO 8601 timestamp indicating when the notification was sent. |
| affected_resources.reactors | Array | Reactors included in the vulnerability notification email. |
| affected_resources.reactors[].id | String | The unique identifier of an affected reactor. |
| affected_resources.reactors[].name | String | The name of an affected reactor. |
| affected_resources.proxies | Array | Proxies included in the vulnerability notification email. |
| affected_resources.proxies[].id | String | The unique identifier of an affected proxy. |
| affected_resources.proxies[].name | String | The name of an affected proxy. |
Tenant Invitations
Invitation Accepted
tenant.invitation.accepted
{
"invitation": {
"id": "...",
"email": "...",
"role": "...",
"expires_at": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| invitation.id | String | The unique identifier of the invitation. |
| invitation.email | String | The email address of the invitee. |
| invitation.role | String | The role assigned to the invitee. |
| invitation.expires_at | String | The expiration date of the invitation in ISO 8601 format. |
| invitation.created_at | String | The creation date of the invitation in ISO 8601 format. |
| invitation.created_by | String | The user or application that created the invitation. |
Invitation Created
tenant.invitation.created
{
"invitation": {
"id": "...",
"email": "...",
"role": "...",
"expires_at": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| invitation.id | String | The unique identifier of the invitation. |
| invitation.email | String | The email address associated with the invitation. |
| invitation.role | String | The role assigned to the invitation. |
| invitation.expires_at | String | The expiration date of the invitation in ISO 8601 format. |
| invitation.created_at | String | The creation date of the invitation in ISO 8601 format. |
| invitation.created_by | String | The user or application that created the invitation. |
Invitation Deleted
tenant.invitation.deleted
{
"invitation": {
"id": "...",
"email": "...",
"role": "...",
"expires_at": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| invitation.id | String | The unique identifier of the invitation. |
| invitation.email | String | The email address associated with the invitation. |
| invitation.role | String | The role assigned to the invitation, formatted for readability. |
| invitation.expires_at | String | The expiration date of the invitation in ISO 8601 format. |
| invitation.created_at | String | The creation date of the invitation in ISO 8601 format. |
| invitation.created_by | String | The user or application that created the invitation. |
Invitation Resent
tenant.invitation.resent
{
"invitation": {
"id": "...",
"email": "...",
"role": "...",
"expires_at": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| invitation.id | String | The unique identifier of the invitation. |
| invitation.email | String | The email address associated with the invitation. |
| invitation.role | String | The role assigned to the invitation, formatted for readability. |
| invitation.expires_at | String | The expiration date of the invitation in ISO 8601 format. |
| invitation.created_at | String | The creation date of the invitation in ISO 8601 format. |
| invitation.created_by | String | The user or application that created the invitation. |
Tenant Members
Member Created
tenant.member.created
{
"member": {
"id": "...",
"user_id": "...",
"role": "...",
"created_at": "...",
"created_by": "..."
}
}
| Name | Type | Description |
|---|
| member.id | String | The unique identifier of the tenant member. |
| member.user_id | String | The unique identifier of the user associated with the member. |
| member.role | String | The role assigned to the member, formatted for readability. |
| member.created_at | String | The creation date of the member in ISO 8601 format. |
| member.created_by | String | The user or application that created the member. |
Member Deleted
tenant.member.deleted
{
"member": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| member.id | String | The unique identifier of the tenant member. |
Tokens
Token Created
token.created
{
"token": {
"id": "...",
"type": "...",
"metadata": "...",
"containers": ["..."],
"fingerprint": "...",
"fingerprint_expression": "...",
"search_indexes": ["..."],
"created_by": "...",
"created_at": "...",
"expires_at": "..."
}
}
| Name | Type | Description |
|---|
| token.id | String | The unique identifier of the token. |
| token.type | String | The type of the token. |
| token.metadata | map<string, string> | Additional metadata associated with the token. |
| token.containers | Array | An array containing the container associated with the token. |
| token.fingerprint | String | The fingerprint of the token. |
| token.fingerprint_expression | String | The expression used to generate the fingerprint. |
| token.search_indexes | Array | An array of search index expressions associated with the token. |
| token.created_by | String | The creator of the token. |
| token.created_at | String | The creation date of the token in ISO 8601 format. |
| token.expires_at | String | The expiration date of the token in ISO 8601 format. |
Token Deleted
token.deleted
{
"token": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| token.id | String | The unique identifier of the token. |
Token Expired
token.expired
{
"token": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| token.id | String | The unique identifier of the token. |
Token Property Expired
token.property.expired
{
"token": {
"id": "...",
"property_name": "..."
}
}
| Name | Type | Description |
|---|
| token.id | String | The unique identifier of the token. |
| token.property_name | String | The name of the property associated with the token. |
Token Read
token.read
{
"token": {
"id": "...",
"type": "..."
}
}
| Name | Type | Description |
|---|
| token.id | String | The unique identifier of the token. |
| token.type | String | The type of the token. |
Token Updated
token.updated
{
"token": {
"id": "...",
"type": "...",
"metadata": "...",
"containers": ["..."],
"fingerprint": "...",
"fingerprint_expression": "...",
"search_indexes": ["..."],
"modified_by": "...",
"modified_at": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "..."
}
}
| Name | Type | Description |
|---|
| token.id | String | The unique identifier of the token. |
| token.type | String | The type of the token. |
| token.metadata | map<string, string> | Additional metadata associated with the token. |
| token.containers | Array | An array containing the container associated with the token. |
| token.fingerprint | String | The fingerprint of the token. |
| token.fingerprint_expression | String | The expression used to generate the fingerprint. |
| token.search_indexes | Array | An array of search index expressions associated with the token. |
| token.modified_by | String | The last user who modified the token. |
| token.modified_at | String | The last modified date of the token in ISO 8601 format. |
| token.created_by | String | The creator of the token. |
| token.created_at | String | The creation date of the token in ISO 8601 format. |
| token.expires_at | String | The expiration date of the token in ISO 8601 format. |
Token Intents
Token Intent Created
token-intent.created
{
"token_intent": {
"id": "...",
"type": "...",
"fingerprint": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "..."
}
}
| Name | Type | Description |
|---|
| token_intent.id | String | The unique identifier of the token intent. |
| token_intent.type | String | The type of the token intent. |
| token_intent.fingerprint | String | The fingerprint of the token intent. |
| token_intent.created_by | String | The creator of the token intent. |
| token_intent.created_at | String | The creation date of the token intent in ISO 8601 format. |
| token_intent.expires_at | String | The expiration date of the token intent in ISO 8601 format. |
Token Intent Deleted
token-intent.deleted
{
"token_intent": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| token_intent.id | String | The unique identifier of the token intent. |
Token Intent Converted
token-intent.converted
{
"token_intent": {
"id": "...",
"type": "..."
},
"token": {
"id": "...",
"type": "..."
}
}
| Name | Type | Description |
|---|
| token_intent.id | String | The unique identifier of the token intent. |
| token_intent.type | String | The type of the token intent. |
| token.id | String | The unique identifier of the token. |
| token.type | String | The type of the token. |
Google Pay™
As mentioned in the Google Pay™ API documentation either a Google Pay™ resource or a Basis Theory's Token Intent can be created based on the provided encrypted token. Please refer to Token Intent events documentation for information about token intents created through the Google Pay™ API.
Resource Created
google-pay.created
{
"google_pay": {
"id": "...",
"type": "...",
"status": "...",
"ingest_source": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "..."
}
}
| Name | Type | Description |
|---|
| google_pay.id | String | The unique identifier of the resource. |
| google_pay.type | String | The kind of network token. Currently always dpan. |
| google_pay.status | String | The status of the resource. |
| google_pay.ingest_source | String | How the resource was ingested. device_decrypted for POST /google-pay; stripe_forward for Stripe Forward. |
| google_pay.created_by | String | The creator of the resource. |
| google_pay.created_at | String | The creation date of the resource in ISO 8601 format. |
| google_pay.expires_at | String | The expiration date of the resource in ISO 8601 format. |
Resource Deleted
google-pay.deleted
{
"google_pay": {
"id": "...",
"status": "...",
"created_by": "...",
"created_at": "...",
"expires_at": "...",
"modified_by": "...",
"modified_at": "..."
}
}
| Name | Type | Description |
|---|
| google_pay.id | String | The unique identifier of the resource. |
| google_pay.status | String | The status of the resource. |
| google_pay.created_by | String | The creator of the resource. |
| google_pay.created_at | String | The creation date of the resource in ISO 8601 format. |
| google_pay.expires_at | String | The expiration date of the resource in ISO 8601 format. |
| google_pay.modified_by | String | The user who deleted the resource. |
| google_pay.modified_at | String | The delete date of the resource in ISO 8601 format. |
Resource Retrieved
google-pay.retrieved
{
"google_pay": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| google_pay.id | String | The unique identifier of the resource. |
Network Tokens
Network Token events are triggered during the lifecycle of network tokens, which are secure, network-issued tokens that convert raw card details and automatically update on card reissues. These events include creation, updates, deletion, and cryptogram generation activities.
Network Token Created
network-token.created
{
"network_token": {
"id": "...",
"tenant_id": "...",
"created_by": "...",
"created_at": "...",
"status": "...",
"token_id": "...",
"token_intent_id": "..."
}
}
| Name | Type | Description |
|---|
| network_token.id | String | The unique identifier of the network token. |
| network_token.tenant_id | String | The unique identifier of the tenant associated with the network token. |
| network_token.created_by | String | The user or application that created the network token. |
| network_token.created_at | String | The creation date of the network token in ISO 8601 format. |
| network_token.status | String | The status of the network token. |
| network_token.token_id | String | The unique identifier of the token associated with the network token. Optional |
| network_token.token_intent_id | String | The unique identifier of the token intent associated with the network token. Optional |
Network Token Updated
network-token.updated
{
"network_token": {
"id": "...",
"tenant_id": "...",
"created_by": "...",
"created_at": "...",
"modified_by": "...",
"modified_at": "...",
"status": "...",
"token_id": "...",
"token_intent_id": "..."
}
}
| Name | Type | Description |
|---|
| network_token.id | String | The unique identifier of the network token. |
| network_token.tenant_id | String | The unique identifier of the tenant associated with the network token. |
| network_token.created_by | String | The user or application that created the network token. |
| network_token.created_at | String | The creation date of the network token in ISO 8601 format. |
| network_token.modified_by | String | The user or application that last modified the network token. |
| network_token.modified_at | String | The last modified date of the network token in ISO 8601 format. |
| network_token.status | String | The status of the network token. |
| network_token.token_id | String | The unique identifier of the token associated with the network token. Optional |
| network_token.token_intent_id | String | The unique identifier of the token intent associated with the network token. Optional |
Network Token Deleted
network-token.deleted
{
"network_token": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| network_token.id | String | The unique identifier of the network token. |
Network Token Cryptogram Created
network-token.cryptogram.created
{
"network_token": {
"id": "..."
}
}
| Name | Type | Description |
|---|
| network_token.id | String | The unique identifier of the network token. |