Overview#
To help clients stay in sync with the latest resource data, we provide a Resource Update Push Service.This service bundles the following three event topics into a single push subscription. Once the service is enabled, all three event topics will be delivered automatically; they cannot be enabled or disabled individually.resource.metadata.updated
transportHub.metadata.updated
resource.availability.changed
This event notifies clients when resource metadata is updated, allowing real-time synchronization of the latest resource details.Triggered when metadata of available resources under a specific program is updated.
Delivery Rules#
Resources are returned by module.
Each batch may contain multiple push messages.
Each push message includes up to 100 resources.
Only one module is included per push message.
Message Example#
{
"eventType": "resource.metadata.updated",
"batchId": "20251028T010000Z",
"sequence": 1,
"totalSequence": 3,
"updatedAt": "2024-12-31T00:00:00+00:00",
"programId": "123321",
"module": 1,
"resources": [
"N00003",
"N00004"
]
}
Field Descriptions#
| Column | Description | Example |
|---|
| eventType | Specifies the type of push event. Used to distinguish between different kinds of notifications, e.g., walkin.redemption, prebooking.statusChanged. | resource.metadata.updated |
| batchId | Unique identifier of the callback batch used for recovery or synchronization. | 20251028T010000Z |
| sequence | Current sequence number within the batch, starting from 1. | 1 |
| totalSequence | Total number of sequences in this batch, used to ensure complete data retrieval. | 3 |
| updatedAt | Timestamp when the resource data was last updated. | 2024-12-31T00:00:00+00:00 |
| programId | Unique identifier of the program. Assigned by DragonPass when a new program was onboarded. | 1888000000000001 |
| module | Specifies the module associated with the order(s), e.g. "Lounge", "Fast Track". | 1 |
| resources | List of resource IDs that were updated in this batch. | ["N00001","N00002"] |
Response#
A push notification is considered successfully received only when the client responds with HTTP 200 OK and returns the following JSON payload, echoing back the corresponding batchId and sequence values:{
"batchId": "20251028T010000Z",
"sequence": 1,
"status": "success"
}
This event notifies clients when transport hub metadata is updated, enabling real-time synchronization of the latest transport hub details.Triggered when metadata of transport hubs associated with available resources under a specific program is updated.
Delivery Rules#
Each batch may contain multiple push messages.
Each push message includes up to 100 transport hubs.
Message Example#
{
"eventType": "transportHub.metadata.updated",
"batchId": "20251028T010000Z",
"sequence": 1,
"totalSequence": 3,
"updatedAt": "2024-12-31T00:00:00+00:00",
"programId": "123321",
"transportHubs": [
"A00003",
"A00004"
]
}
Field Descriptions#
| Column | Description | Example |
|---|
| eventType | Specifies the type of push event. Used to distinguish between different kinds of notifications, e.g., walkin.redemption, prebooking.statusChanged. | transportHub.metadata.updated |
| batchId | Unique identifier of the callback batch used for recovery or synchronization. | 20251028T010000Z |
| sequence | Current sequence number within the batch, starting from 1. | 1 |
| totalSequence | Total number of sequences in this batch, used to ensure complete data retrieval. | 3 |
| updatedAt | Timestamp when the resource data was last updated. | 2024-12-31T00:00:00+00:00 |
| programId | Unique identifier of the program. Assigned by DragonPass when a new program was onboarded. | 1888000000000001 |
| transportHubs | List of transport hub IDs that were updated in this batch. | ["A00001","A00002"] |
Response#
A push notification is considered successfully received only when the client responds with HTTP 200 OK and returns the following JSON payload, echoing back the corresponding batchId and sequence values:{
"batchId": "20251028T010000Z",
"sequence": 1,
"status": "success"
}
resource.availability.changed#
This event notifies clients when the availability of resources changes, allowing them to keep an up-to-date view of which resources are currently usable.Triggered when changes in resource availability are detected, including resources being added to or removed from the available list.
Delivery Rules#
Resources are returned by module.
Only one module is included per push message.
Each push message may include up to: Message Example#
{
"eventType": "resource.availability.changed",
"batchId": "20251028T010000Z",
"sequence": 1,
"totalSequence": 3,
"updatedAt": "2024-12-31T00:00:00+00:00",
"programId": "123321",
"module": 1,
"data": [
{
"changeAction": "added",
"resources": [
"N00003",
"N00004"
]
},
{
"changeAction": "removed",
"resources": [
"N00001",
"N00002"
]
}
]
}
Field Descriptions#
| Column | Description | Example |
|---|
| eventType | Specifies the type of push event. Used to distinguish between different kinds of notifications, e.g., walkin.redemption, prebooking.statusChanged. | resource.availability.changed |
| batchId | Unique identifier of the callback batch used for recovery or synchronization. | 20251028T010000Z |
| sequence | Current sequence number within the batch, starting from 1. | 1 |
| totalSequence | Total number of sequences in this batch, used to ensure complete data retrieval. | 3 |
| updatedAt | Timestamp when the resource data was last updated. | 2024-12-31T00:00:00+00:00 |
| programId | Unique identifier of the program. Assigned by DragonPass when a new program was onboarded. | 1888000000000001 |
| module | Specifies the module associated with the order(s), e.g. "Lounge", "Fast Track". | 1 |
| data | List of resource availability changes grouped by change action. | |
| changeAction | Type of availability change applied to the resources. Possible values: added, removed. | added |
| resources | List of resource IDs affected by the corresponding change action. | ["N00003", "N00004"] |
Response#
A push notification is considered successfully received only when the client responds with HTTP 200 OK and returns the following JSON payload, echoing back the corresponding batchId and sequence values:{
"batchId": "20251028T010000Z",
"sequence": 1,
"status": "success"
}
Event Recovery API#
To improve delivery reliability, a Recovery API is provided for the following event types:resource.metadata.updated
transportHub.metadata.updated
resource.availability.changed is not recoverable via this API.
Callback endpoint timeout or failure
Temporary network interruption
Manual reconciliation or data verification
Endpoint#
→ /v2/event this API allows clients to re-fetch historical push events in case of delivery failures, network issues, or missed callbacks.The recovery API returns exactly the same payload structure as the original push event.This ensures clients can reuse the same processing logic for both push and recovery scenarios.Time Limitation#
Only events generated within the last 48 hours are available for recovery.
Requests outside this time window will not return any data.