curl https://api.tapace.lk/v1/passes/pass_7hGk2LmQ9xVt4RnB8cYe/updates \
-H "Authorization: Bearer $TAPACE_API_KEY"
{
"object": "list",
"data": [
{
"object": "pass_update",
"id": "pupd_Lm4Xq8Vt2Nr7Kz3Pw9Bc",
"passId": "pass_7hGk2LmQ9xVt4RnB8cYe",
"actor": { "id": "cmgx4k2p90001ab12cd34ef56", "name": null, "email": null },
"notificationMode": "notify",
"walletChanged": true,
"changes": {
"fields": [
{ "key": "points", "label": "Points", "from": "120", "to": "150" }
]
},
"googleMessage": { "header": "Pass updated", "body": "Points: 150" },
"delivery": {
"apple": { "status": "delivered", "devices": 1, "error": null },
"google": { "status": "delivered", "message": "sent", "error": null }
},
"retryable": false,
"createdAt": "2026-10-13T10:30:00.000Z",
"updatedAt": "2026-10-13T10:30:04.000Z"
}
],
"hasMore": false,
"nextCursor": null
}
Passes
List pass updates
Returns a pass’s change history, newest first.
GET
/
v1
/
passes
/
{id}
/
updates
curl https://api.tapace.lk/v1/passes/pass_7hGk2LmQ9xVt4RnB8cYe/updates \
-H "Authorization: Bearer $TAPACE_API_KEY"
{
"object": "list",
"data": [
{
"object": "pass_update",
"id": "pupd_Lm4Xq8Vt2Nr7Kz3Pw9Bc",
"passId": "pass_7hGk2LmQ9xVt4RnB8cYe",
"actor": { "id": "cmgx4k2p90001ab12cd34ef56", "name": null, "email": null },
"notificationMode": "notify",
"walletChanged": true,
"changes": {
"fields": [
{ "key": "points", "label": "Points", "from": "120", "to": "150" }
]
},
"googleMessage": { "header": "Pass updated", "body": "Points: 150" },
"delivery": {
"apple": { "status": "delivered", "devices": 1, "error": null },
"google": { "status": "delivered", "message": "sent", "error": null }
},
"retryable": false,
"createdAt": "2026-10-13T10:30:00.000Z",
"updatedAt": "2026-10-13T10:30:04.000Z"
}
],
"hasMore": false,
"nextCursor": null
}
Every change to a pass is listed here, whether it came from the API, the dashboard, a new template design or voiding the pass. Results are paginated. Each item is a pass update.
Changes to
externalId and metadata aren’t listed, because they never reach the wallet.
string
required
The pass ID.
integer
default:"25"
Items per page, from 1 to 100.
string
The
nextCursor from the previous page.Errors
| Status | When |
|---|---|
404 | The pass doesn’t exist. |
curl https://api.tapace.lk/v1/passes/pass_7hGk2LmQ9xVt4RnB8cYe/updates \
-H "Authorization: Bearer $TAPACE_API_KEY"
{
"object": "list",
"data": [
{
"object": "pass_update",
"id": "pupd_Lm4Xq8Vt2Nr7Kz3Pw9Bc",
"passId": "pass_7hGk2LmQ9xVt4RnB8cYe",
"actor": { "id": "cmgx4k2p90001ab12cd34ef56", "name": null, "email": null },
"notificationMode": "notify",
"walletChanged": true,
"changes": {
"fields": [
{ "key": "points", "label": "Points", "from": "120", "to": "150" }
]
},
"googleMessage": { "header": "Pass updated", "body": "Points: 150" },
"delivery": {
"apple": { "status": "delivered", "devices": 1, "error": null },
"google": { "status": "delivered", "message": "sent", "error": null }
},
"retryable": false,
"createdAt": "2026-10-13T10:30:00.000Z",
"updatedAt": "2026-10-13T10:30:04.000Z"
}
],
"hasMore": false,
"nextCursor": null
}