Appendix¶
In the following Appendix section, you will find additional documentation, such as Timezone Names, to be used in the API calls or for your reference.
Timezone Names¶
In the following section, you will find a list of the Timezone long names to reference when the API calls.
Timezone Names:
Africa/Accra\ Africa/Algiers\ Africa/Cairo\ Africa/Casablanca\ Africa/Johannesburg\ Africa/Lagos\ Africa/Libreville\ Africa/Lome\ Africa/Nairobi\ America/Anchorage\ America/Argentina/Buenos_Aires\ America/Barbados\ America/Bogota\ America/Caracas\ America/Chicago\ America/Chihuahua\ America/Denver\ America/Godthab\ America/Halifax\ America/Indiana/Indianapolis\ America/Jamaica\ America/Los_Angeles\ America/Managua\ America/Mexico_City\ America/Miquelon\ America/Nassau\ America/New_York\ America/Noronha\ America/Phoenix\ America/Puerto_Rico\ America/Regina\ America/Santiago\ America/Santo_Domingo\ America/Sao_Paulo\ America/St_Johns\ Antarctica/DumontDUrville\ Asia/Aden\ Asia/Amman\ Asia/Baghdad\ Asia/Bangkok\ Asia/Colombo\ Asia/Dhaka\ Asia/Hong_Kong\ Asia/Irkutsk\ Asia/Jerusalem\ Asia/Kabul\ Asia/Karachi\ Asia/Kathmandu\ Asia/Kolkata\ Asia/Krasnoyarsk\ Asia/Magadan\ Asia/Manila\ Asia/Muscat\ Asia/Novosibirsk\ Asia/Phnom_Penh\ Asia/Qatar\ Asia/Rangoon\ Asia/Riyadh\ Asia/Seoul\ Asia/Singapore\ Asia/Taipei\ Asia/Tbilisi\ Asia/Tehran\ Asia/Tokyo\ Asia/Vladivostok\ Asia/Yakutsk\ Asia/Yekaterinburg\ Atlantic/Azores\ Atlantic/Bermuda\ Atlantic/Cape_Verde\ Australia/Adelaide\ Australia/Brisbane\ Australia/Darwin\ Australia/Hobart\ Australia/Perth\ Australia/Sydney\ Etc/GMT-3\ Europe/Andorra\ Europe/Belgrade\ Europe/Berlin\ Europe/Bucharest\ Europe/Helsinki\ Europe/Istanbul\ Europe/London\ Europe/Moscow\ Europe/Oslo\ Europe/Paris\ Europe/Sarajevo\ Europe/Tirane\ Indian/Kerguelen\ Pacific/Apia\ Pacific/Auckland\ Pacific/Fiji\ Pacific/Guam\ Pacific/Honolulu\ Pacific/Midway\ Pacific/Tongatapu\ Pacific/Wake
Timestamp Values¶
Timestamp values in Wallet v3 API calls must use ISO 8601. Other formats are rejected with error E930. See Date and Time Formats for the full rules. Examples:
2026-12-31\ 2026-12-31T17:30\ 2026-12-31T17:30:00\ 2026-12-31T17:30:00Z\ 2026-12-31T17:30:00-04:00
General Error Codes¶
The following tables provide information on the generic error codes and texts that you may receive if the API call fails.
| Code | Description |
|---|---|
| E100 | Invalid request. Make a valid request via JSON POST with all the required variables. |
| E104 | Account Authentication Failed. |
| E105 | This account does not have API access. |
| E107 | This account is not allowed to use this action. |
| E108 | Corrupt JSON in the request. $error. |
| E112 | API call rejected. IP is not white listed. |
| E113 | API call rejected. Set throughput exceeded for this API action. |
| E114 | API call rejected. Phone number is blacklisted. |
| E503 | Internal error. |
The API key (E104), IP whitelist (E112) and throughput (E113) checks run before the request body is validated. If a request fails one of these checks, you receive that error code and no validation errors for the request fields.
Issuance Link Error Codes¶
The following tables provide information on the error codes and texts that you may receive if the API calls for CreatePassIssuanceLink or UpdatePassIssuanceLink fails.
| Code | Description |
|---|---|
| E832 | The is required. |
| E1532 | The has duplicate mapping. |
| E1533 | The encryption-settings are empty or invalid but is set to be encrypted. |
| E1534 | The length is invalid. Valid length |
| E1535 | Relevance address should always contain relevance latitude and longitude both for |
| E1536 | Both relevance latitude and relevance longitude is required for . |
| E1537 | IBeacon UUID is missing for . |
| E1538 | The link-generation-limit is invalid. |
| E1539 | The link-generation-limit cannot be less than already generated link count. |
| E1540 | The link-expiration-timezone is required. |
| E1541 | Pass Issuance Link Template creation failed. Please try again later. |
| E1542 | Please add the required parameter in pass-variable. |
| E1543 | Either the pass variables provided are invalid or empty. |
| E1544 | The is a required parameter. "is-required" option must be true. |
| E1545 | The encryption-settings are missing/invalid. |
Other Error Codes¶
| Code | Description |
|---|---|
| E801 | The pass-template-id value is required. |
| E802 | The pass-template-id value is invalid. |
| E803 | The barcode value is required. |
| E806 | Internal Error. The pass data ID was not created. |
| E807 | There was some problem while creating/updating the Google Wallet pass. |
| E808 | The pass-template-id value is invalid. |
| E809 | Internal Error. The pass was not updated. |
| E810 | The pass-id value is required. |
| E811 | Authentication failed. The pass was not generated. |
| E812 | The pass-id value is already taken. |
| E815 | Nothing to update. pass-data field is empty. |
| E816 | is invalid. Please remove if any special characters and try again. |
| E821 | Internal Error. The pass was not deleted. |
| E827 | is invalid. Only numeric values are allowed. |
| E830 | Internal Error. The pass was not generated. |
| E831 | The download limit has reached. The pass was not generated. |
| E834 | The card-number value is required to generate the Gift Card with Google Wallet. |
| E835 | The passenger-name value is required to generate the Boarding Pass with Google Wallet. |
| E836 | The confirmation-number value is required to generate the Boarding Pass with Google Wallet. |
| E837 | The URI provided for is invalid. |
| E838 | The label is not accepted. The Dynamic Labels, under Advanced tab needs to be set in the pass template. |
| E839 | The value is not accepted. It has to be set as Dynamic in the pass template. |
| E920 | The value is not accepted. It has to be set with corresponding latitude and longitude values. |
| E921 | The value is empty. |
| E922 | The value is invalid. |
| E923 | The value is missing or invalid. |
| E925 | The is not accepted. It has to be set as Dynamic in the pass template. |
| E926 | The is not accepted for this pass type. |
| E928 | The Install page message exceeds 500 character limit. Value is invalid. |
| E930 | The value is invalid. Only ISO 8601 date/time format is accepted (e.g., 2026-12-31 for a date, 2026-12-31T17:30:00 for a date and time). |
| E1526 | The key name for relevant-locations is not correct. It should be from relevant-1 to relevant-10 |
| E1527 | The key name for ibeacons is not correct. It should be from ibeacon-1 to ibeacon-10 |
| E1521 | The message varies with the cause. On UpdatePassTemplate it is returned when the pass-update-notification could not be sent, for example: “This notification couldn't be queued because no one has installed a Pass yet for this Pass Template. Once at least one Pass is installed, you'll be able to send notifications.” See the UpdatePassTemplate section for your Pass Type. |
| E1552 | The redemption-profile value is required when redemption-system is "use-walletthats-url-redemption". |
| E1553 | The redemption-profile value is invalid, deleted, or does not belong to the authenticated account. |
| E1605 | The period value is required. Allowed values are: today, last_7_days, last_30_days, last_60_days, last_year, custom. |
| E1606 | The period value is invalid. Allowed values are: today, last_7_days, last_30_days, last_60_days, last_year, custom. |
| E1607 | The value is required when period is set to custom. |
| E1608 | The value is invalid. Dates must be in ISO 8601 date format (YYYY-MM-DD). |
| E1609 | The requested date range is too large. A custom range may cover at most 366 days. |
| E1610 | The end-date must be the same as or later than the start-date. |
| E1611 | The value is out of range. Dates must be between 1970-01-01 and the current date (YYYY-MM-DD). |
E802 is also returned when the pass-template-id belongs to another account. The GeneratePass, UpdatePassTemplate, UpdatePassData, GeneratePassById, DeletePassData and GetPassData API calls check that the Pass Template belongs to your account before any other validation, so another account's Pass Template gets the same response as one that doesn't exist. E808 is returned only for a pass-id that doesn't exist under one of your own Pass Templates.
Encryption Algorithms¶
- AES-CBC: Advanced Encryption Standard (AES) is a symmetric encryption algorithm. AES is the industry standard as of now as it allows 128 bit, 192 bit and 256-bit encryption. There are also 2 modes of encryption. Currently, we support 256 bit CBC mode encryption.
Checksum Algorithms¶
-
- CRC32: CRC (Cyclic Redundancy Check) is an error-detecting code which is used to verify the raw data passed from accidental change or data corruption. A short check value is generated for a block of data and on retrieval, the short check code is again generated and matched with the previous code. CRC 32 is a 32 bit variant of CRC algorithm
-
SHA256: A SHA-256 (Secure Hash Algorithm) is a 256 bit variant of SHA-2 cryptographic hashing algorithm family which is used for cryptographic security. This algorithm produces irreversible and unique hashes of the data passed.
-
SHA384: A SHA-384 (Secure Hash Algorithm) is a 384 bit variant of SHA-2 cryptographic hashing algorithms which is used for cryptographic security. It is not a unique hash algorithm but is instead a truncated version of SHA-512.
- SHA512: A SHA-512 (Secure Hash Algorithm) is a 512 bit variant of SHA-2 cryptographic hashing algorithms that is used for cryptographic security. This algorithm produces irreversible and unique hashes.