Wallet passes API
Create, list, fetch, update and delete Apple Wallet and Google Wallet passes with the Shakewell Wallet API, including identifiers, statuses and pagination.
Last updated 2026-11-05
A pass is one customer's card. Endpoints live under /wallet-passes.
| Method and path | Purpose |
|---|---|
GET /wallet-passes | List passes, paginated |
POST /wallet-passes | Create a pass from a template |
GET /wallet-passes/{passId} | Fetch one pass |
PUT /wallet-passes/{passId} | Update a pass (PATCH also works) |
DELETE /wallet-passes/{passId} | Void the pass in the wallets and delete it |
Identifiers
{passId} accepts the string pass_id returned on create, or the numeric id. Only passes on your own account are found; anything else returns 404 WALLET_PASS_NOT_FOUND.
Create
{
"template_id": 38,
"person": {
"forename": "Ada",
"surname": "Lovelace",
"emailAddress": "ada@example.com"
}
}| Field | Required | Notes |
|---|---|---|
template_id | yes | a template on your account |
person | yes | object with forename, surname, emailAddress, mobileNumber, dateOfBirth, displayName, salutation. Template rules decide which are mandatory |
meta | no | template field values, shaped by the template |
universal | no | extras such as a gift card expiry |
barcode_value | no | up to 64 printable ASCII characters, unique on your account. Generated if omitted |
List
Query parameters: per_page (default 10), current_page, template_id, query, sort_by (default created_at) and sort_order (default desc). Page details are in data.meta.
Update
Send status (active, inactive, suspended, expired or voided), expires_at, pass_data, field_values or meta. The change is pushed to the pass in the customer's wallet. If the template was removed the call returns 409 WALLET_PASS_TEMPLATE_MISSING; a wallet-side failure returns 500 WALLET_PASS_UPDATE_FAILED.
Delete
Apple and Google do not support hard deletion of an issued pass, so Shakewell voids it in the wallet with the reason deleted, then removes the record. If the wallet-side call fails, the record is still deleted.