Additional Schemas

Schemas that are not grouped by a specific tag. These include core data objects and shared schemas used across multiple operations.

Apple template header object

An object in headers for an iOS template or pass contains the following items.

OBJECT PROPERTIES
  • fieldType string

    The type of field for the iOS header.

    Possible values: topLevel, image, barcode

  • formatType integer

    Indicates that the formatType for the field is a string.

    Possible values: 1

  • value string

    The default value for the field/header. While the value is always a string, it takes on a different format based on the fieldType and purpose.

Callback object

Jump to examples ↓

OBJECT PROPERTIES
  • createdAt string

    The date-time when the pass was created.

  • externalId string

    The external ID for the pass, if set.

  • passId integer

    The ID of the pass installed or uninstalled.

  • platform string

    The platform on which the pass is installed.

    Possible values: android, ios

  • serialNumber string

    The serial number of the pass. This string is generated by the vendor — Apple or Google.

  • templateId integer

    The ID of the template the pass was created from.

  • updatedAt string

    The date-time when the pass was last updated.

Examples

Example callback object

{
    "passId": 149440311,
    "templateId": 158327,
    "serialNumber": "3388000000005047792.158327_92a3e4d1-5110-3aca-a26e-fb21618aa5f2_149440311",
    "createdAt": "2020-09-11T22:47:22.000Z",
    "updatedAt": "2020-09-11T22:47:22.000Z",
    "externalId": "coolexample",
    "platform": "android"
}

Callback personalization object

You must add personalization requirements to Apple templates before users can personalize passes created from them.

Jump to examples ↓

All of

Examples

Example callback with personalization object

{
  "passId": "12345",
  "templateId": "25035",
  "serialNumber": "6779a823-7c8f-4145-a640-c688069a3465",
  "createdAt": "2022-01-23T20:46:50Z",
  "platform": "ios",
  "personalizationInfo": {
      "fullName": "John LastName",
      "givenName": "John",
      "familyName": "LastName",
      "emailAddress": "test@example.com",
      "postalCode": "95051",
      "ISOCountryCode": "US",
      "phoneNumber": "408-409-1234"
  }
}

Certificate object

Jump to examples ↓

OBJECT PROPERTIES
  • baseName string
  • certificate string

    A base64-encoded string of the p12 certificate with the private key.

  • comment string

    A description for the certificate.

  • createdAt string

    The date and time when the item was created.

  • default boolean

    If true, the certificate is the default for new projects. If you have multiple certificates and set a new default to true, the current default is set to false.

  • enabled boolean

    Indicates whether or not the certificate is in use.

  • expired boolean

    If true, the certificate has expired and cannot be used to generate new passes.

  • name string

    A name for the certificate.

  • nfcSupport boolean

    If true, the certificate supports passes that can make use of NFC.

  • password string

    The password for the p12 file, if the certificate was exported with a password.

  • teamIdentifier string
  • updatedAt string

    The date and time when the item was last updated.

  • vendor string

    The vendor of the certificate.

    Possible values: Apple

Used in:

Examples

Example Apple certificate response

{
    "id": "40adce15-5c52-479d-8620-54c21cd851a6",
    "vendor": "Apple",
    "baseName": "pass.com.myName.test",
    "name": "editable name",
    "comment": "something about this cert",
    "teamIdentifier": "9M8MY376H5",
    "nfcSupport": false,
    "enabled": false,
    "createdAt": "2018-05-26T23:23:21Z",
    "updatedAt": "2019-05-26T22:23:21Z",
    "expired": false,
    "validityStart": "2018-05-26T23:45:00Z",
    "validityEnd": "2019-05-26T23:45:00Z",
    "templates": [
        {"id": 123,"name": "templateName1"},
        {"id": 221,"name": "templateName2"}
    ]
}

General template headers

Meta information about templates; this object appears on all templates and identifies templates associated with a project.

Jump to examples ↓

OBJECT PROPERTIES
  • deleted boolean

    If true, the template is deleted. You can no longer create passes from this template.

  • description string

    A description for the template.

  • disabled boolean

    If true, the template is disabled; you cannot create new passes for this template until you update the template and enable it again.

  • expiryInfo object

    Determine when passes generated from the template should expire.

    One of
    • Expire on a date object

      Set the specific expiration date for passes generated from this template. Passes expire at 12:00 AM on the date you provide.

      OBJECT PROPERTIES
      • expiryDate string

        The date when passes expire.

      • expiryTimeZone string

        Passes expire at 12:00 AM in the time zone you set.

    • Expire after object

      Expire passes generated from this template after the specified number of minutes after creation.

      OBJECT PROPERTIES
      • expiryDuration integer

        The number of days after creation that passes will expire.

    • Never expire object

      Passes generated from the template will never expire.

      OBJECT PROPERTIES
      • expireNever string

        Any string value (or null) will prevent passes generated from this template from expiring.

  • name stringREQUIRED

    The name of the template.

  • projectId integer

    The ID of the Wallet project.

  • projectType string

    The type of pass the template supports; matches the type setting for the parent project.

    Possible values: memberCard, coupon, boardingPass, eventTicket, generic, loyalty, giftCard

  • type string

    The type of pass the template supports. This value corresponds to the projectType.

    Possible values: memberCard, coupon, boardingPass, eventTicket, generic, loyalty, giftCard

  • vendor stringREQUIRED

    The device vendor the template is designed for.

    Possible values: Apple, Google

  • vendorId integerREQUIRED

    Corresponds to the vendor the template supports. 1 indicates an Apple template; 2 indicates a Google template.

    Possible values: 1, 2

Used in:

Examples

Example template headers

{
  "vendor": "Google",
  "projectType": "memberCard",
  "type": "Loyalty1",
  "vendorId": 2,
  "deleted": "False",
  "description": "description",
  "name": "Adding Google"
}

Google fields

Fields on a Google pass are organized into modules. Modules define how fields on the pass are organized and appear. Fields within each module are objects with a string names.

Jump to examples ↓

OBJECT PROPERTIES
  • acctModule object

    Information associated with an account or membership. These are typically items like the accountIdLabel on Loyalty cards or balance items on a gift card.

  • headers object<Google headers>

    Google template headers define barcode and top-level information for passes.

    Fields appearing in the headers object for a Google pass template. Header fields typically follow the same model as other fields for Google Wallet templates and passes, but often have specific value, fieldType, and formatType values.

  • imageModulesData object

    Contains an image on the pass outside the header.

  • infoModuleData object

    Info module

  • linkModulesData object

    Contains links including URLs, phone numbers, and email addresses, that you want to make available on the pass. This module typically appears at the bottom of the pass.

  • offerModule object

    Specific to google coupons, this module contains information about redeeming the coupon.

    OBJECT PROPERTIES
    • endTime string

      The expiration date for the offer.

    • multiUseOffer boolean

      Indicates whether the coupon/offer is available for multiple users or just a single user.

    • provider string

      The offer provider name.

    • redemptionChannel string

      Indicates whether the user can redeem the offer at a physical location or online.

      Possible values: online, instore, both, temporaryPriceReduction

  • pointsModule object

    Contains information related to points that pass users accrue or spend. This module is typically used on loyalty passes.

  • textModulesData object

    Contains text information for a pass. The text module typically has information in a header-body format.

  • titleModule object

    Contains title and header information specific to each pass type (as opposed to common items held within headers). These are items typically referenced by class in Google pass designs.

Used in:

Examples

Example Google fields


{
  "infoModuleData": {
     "hexFontColor": "#666666",
     "hexBackgroundColor": "#0096e1",
     "Program ID": {
        "label": "Program ID",
        "value": "12345678",
        "row": 0,
        "col": 0,
        "formatType": "String"
     },
     "Tier Name": {
        "label": "Tier Name",
        "value": "Silver",
        "row": 0,
        "col": 1,
        "formatType": "String"
     },
     "Last Updated": {
        "label": "Last Updated",
        "value": "Five days ago",
        "row": 1,
        "col": 0,
        "formatType": "String"
     }
  },
  "textModulesData": {
     "Program Details": {
        "header": "Program Details",
        "body": "Some Basic Text",
        "row": 0,
        "col": 0,
        "formatType": "String"
     }
  },
  "linksModuleData": {
     "Merchant Website": {
        "description": "Merchant Website",
        "uri": "http:\/\/www.example.com",
        "order": 1,
        "formatType": "URL"
     }
  },
  "messageModule": {
  },
  "imageModulesData": {
  },
  "pointsModule": {
     "Tier": {
        "label": "Tier",
        "value": 2,
        "row": 0,
        "col": 1,
        "formatType": "Number",
        "numberStyle": "PKNumberStyleDecimal"
     },
     "Points": {
        "label": "Points",
        "value": 1234,
        "row": 0,
        "col": 0,
        "formatType": "Number"
     }
  },
  "notAssigned": {
  },
  "titleModule": {
     "image": "https:\/\/s3.amazonaws.com\/passtools_prod\/1\/images\/default-pass-icon.png",
     "imageDescription": "Logo Image",
     "Program Name": {
        "label": "Program Name",
        "value": "UA",
        "row": 0,
        "col": 0,
        "formatType": "String"
    }
  }
}

Google headers

Fields appearing in the headers object for a Google pass template. Header fields typically follow the same model as other fields for Google Wallet templates and passes, but often have specific value, fieldType, and formatType values.

Jump to examples ↓

OBJECT PROPERTIES
  • background_color object

    Sets the background color for the pass.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to topLevel for color and text headers.

        Possible values: topLevel

      • value string

        The color objects take an rgb value in the format rgb(255, 255, 255).

  • background_image object

    A background image for the pass.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Indicates that the value is an image.

        Possible values: image

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The URL for the header image.

  • barcodeAltText object

    Alternate text displayed below the barcode.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to barcode for all barcode headers.

        Possible values: barcode

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The alternate text for the barcode on the template.

  • barcode_encoding object

    The encoding format for the barcode.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to barcode for all barcode headers.

        Possible values: barcode

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        Presently, iso-8859-1 is the only supported value.

        Possible values: iso-8859-1

  • barcode_type object

    The type of barcode supported by the template. This value must be the same as the barcode_type set at the project level.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to barcode for all barcode headers.

        Possible values: barcode

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The format of the barcode supported by the project and resulting passes.

        Possible values: pdf417, aztec, code128, qr, upc-a, ean-13, code-39

  • barcode_value object

    The default value for the barcode used by the template.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to barcode for all barcode headers.

        Possible values: barcode

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        This value is a default for the barcode. You may set a new or personalized value when creating adaptive links or passes.

  • The footer image for a template.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Indicates that the value is an image.

        Possible values: image

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The URL for the header image.

  • foreground_color object

    Sets the foreground color for the template.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to topLevel for color and text headers.

        Possible values: topLevel

      • value string

        The color objects take an rgb value in the format rgb(255, 255, 255).

  • header object

    Sets the generic pass header. Required for the generic pass type.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to topLevel for text headers.

        Possible values: topLevel

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        Header text field.

  • icon_image object

    The icon image for the template.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Indicates that the value is an image.

        Possible values: image

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The URL for the header image.

  • logo_image object

    Specifies the template logo image.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Indicates that the value is an image.

        Possible values: image

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The URL for the header image.

  • logo_text object

    Sets the text under the logo image.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType string

      Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

      In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

      Possible values: String

    • value string

      The alternate text for the logo_image.

  • sharingStatus object

    A field determining whether passes can be shared across users, devices, or not at all. By default, there are no restrictions with regard to users or devices (multipleHolders). While this setting uses the same format as other fields, you only need to set the value within the object. Most other keys are irrelevant this setting, even though they appear in responses; this field should not be visible on passes, so you should not populate label, order, etc.

    On iOS devices, oneUserOneDevice prohibits sharing ("sharingProhibited": true); all other values allow sharing.

    You can override the template setting on Apple Wallet passes. If you set this field in an adaptive link payload, it will only apply to Apple Wallet passes resulting from the adaptive link; Google Wallet passes will always use the sharing setting set at the template level.

    OBJECT PROPERTIES
    • changeMessage string

      The message that appears when you update this field.

    • value stringREQUIRED

      Determines whether a pass supports sharing across users, devices, or both. iOS interprets this as a boolean setting: oneUserOneDevice prohibits sharing; all other values allow sharing.

      Possible values: multipleHolders, oneUserAllDevices, oneUserOneDevice

  • strip_image object

    The image residing in the barcode strip.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Indicates that the value is an image.

        Possible values: image

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The URL for the header image.

  • subheader object

    Sets the optional generic pass subheader.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to topLevel for text headers.

        Possible values: topLevel

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        Header text field.

  • suppress_strip_shine object

    Determines whether or not to suppress the strip shine effect on barcodes.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Set to barcode for all barcode headers.

        Possible values: barcode

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value boolean
  • thumbnail_image object

    An object containing the URL for the thumbnail image.

    All of
    • Header objects for Google Wallet templates use many of the same keys as fields on the template/pass. Populate these keys as necessary. Template responses include these keys with their default values.

    • OBJECT PROPERTIES
      • fieldType string

        Indicates that the value is an image.

        Possible values: image

      • formatType string

        Indicates that the field takes a string value. While the formatType for non-header fields can be another data type, header fields always take string values.

        In general, you do not have to set this value. Airship can determine the formatType from the fieldType, and objects in the headers array are always String types.

        Possible values: String

      • value string

        The URL for the header image.

Used in:

Examples

Example Google headers

{
  "headers": {
     "barcode_type": {
        "fieldType": "barcode",
        "value": "",
        "notShared": true
     },
     "barcode_value": {
        "fieldType": "barcode",
        "value": "",
        "notShared": true
     },
     "barcode_label": {
        "fieldType": "barcode",
        "value": "",
        "notShared": true
     },
     "barcode_encoding": {
        "fieldType": "barcode",
        "value": "",
        "notShared": true
     },
     "barcodeAltText": {
        "fieldType": "barcode",
        "value": "",
        "notShared": true
     }
  }
}

iOS fields

Defines fields on iOS templates and subsequent passes generated from the template.

Jump to examples ↓

OBJECT PROPERTIES
  • fields object

    All non-header fields on an iOS template sit inside this object.

Used in:

Examples

Example iOS field

{
  "fields": {
    "Coupon": {
      "formatType": "String",
      "changeMessage": "Enjoy %@ off your next order!",
      "order": 1,
      "fieldType": "primary",
      "textAlignment": "textAlignmentRight",
      "value": "20%",
      "label": "coupon",
      "required": false,
      "hideEmpty": true
    }
  }
}

iOS template headers

The iOS template headers object can contain the following objects. Each object has a formatType, fieldType, and value.

  • formatType is always 1, indicating that the value is a string.

  • fieldType is topLevel — a text or color value on the top-front of the pass, image, or barcode.

  • value is the default value for the header field.

Jump to examples ↓

OBJECT PROPERTIES
  • background_color object

    Sets the background color for the pass.

    OBJECT PROPERTIES
    • fieldType string

      Set to topLevel for color and text headers.

      Possible values: topLevel

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The color objects take an rgb value in the format rgb(255, 255, 255).

  • background_image object

    A background image for the pass.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The URL for the header image.

  • barcodeAltText object

    Alternate text displayed below the barcode.

    OBJECT PROPERTIES
    • fieldType string

      Set to barcode for all barcode headers.

      Possible values: barcode

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The alternate text for the barcode on the template.

  • barcode_encoding object

    The encoding format for the barcode.

    OBJECT PROPERTIES
    • fieldType string

      Set to barcode for all barcode headers.

      Possible values: barcode

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      Presently, iso-8859-1 is the only supported value.

      Possible values: iso-8859-1

  • barcode_type object

    The type of barcode supported by the template. This value must be the same as the barcode_type set at the project level.

    OBJECT PROPERTIES
    • fieldType string

      Set to barcode for all barcode headers.

      Possible values: barcode

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The format of the barcode supported by the project and resulting passes.

      Possible values: pdf417, aztec, code128, qr, upc-a, ean-13, code-39

  • barcode_value object

    The default value for the barcode used by the template.

    OBJECT PROPERTIES
    • fieldType string

      Set to barcode for all barcode headers.

      Possible values: barcode

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      This value is a default for the barcode. You may set a new or personalized value when creating adaptive links or passes.

  • The footer image for a template.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The URL for the header image.

  • foreground_color object

    Sets the foreground color for the template.

    OBJECT PROPERTIES
    • fieldType string

      Set to topLevel for color and text headers.

      Possible values: topLevel

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The color objects take an rgb value in the format rgb(255, 255, 255).

  • icon_image object

    The icon image for the template.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The URL for the header image.

  • logo_color object

    Specifies the color of the logo on the template.

    OBJECT PROPERTIES
    • fieldType string

      Set to topLevel for color and text headers.

      Possible values: topLevel

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The color objects take an rgb value in the format rgb(255, 255, 255).

  • logo_image object

    Specifies the template logo image.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The URL for the header image.

  • logo_text object

    Sets the text under the logo image.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The alternate text for the logo_image.

  • sharingStatus object

    A field determining whether passes can be shared across users, devices, or not at all. By default, there are no restrictions with regard to users or devices (multipleHolders). While this setting uses the same format as other fields, you only need to set the value within the object. Most other keys are irrelevant this setting, even though they appear in responses; this field should not be visible on passes, so you should not populate label, order, etc.

    On iOS devices, oneUserOneDevice prohibits sharing ("sharingProhibited": true); all other values allow sharing.

    You can override the template setting on Apple Wallet passes. If you set this field in an adaptive link payload, it will only apply to Apple Wallet passes resulting from the adaptive link; Google Wallet passes will always use the sharing setting set at the template level.

    OBJECT PROPERTIES
    • changeMessage string

      The message that appears when you update this field.

    • value stringREQUIRED

      Determines whether a pass supports sharing across users, devices, or both. iOS interprets this as a boolean setting: oneUserOneDevice prohibits sharing; all other values allow sharing.

      Possible values: multipleHolders, oneUserAllDevices, oneUserOneDevice

  • strip_image object

    The image residing in the barcode strip.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The URL for the header image.

  • suppress_strip_shine object

    Determines whether or not to suppress the strip shine effect on barcodes.

    OBJECT PROPERTIES
    • fieldType string

      Set to barcode for all barcode headers.

      Possible values: barcode

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value boolean
  • thumbnail_image object

    An object containing the URL for the thumbnail image.

    OBJECT PROPERTIES
    • fieldType string

      Indicates that the value is an image.

      Possible values: image

    • formatType integer

      For iOS, a value of 1 indicates that the formatType for the field is a string.

      Possible values: 1

    • value string

      The URL for the header image.

Used in:

Examples

Example iOS headers

{
  "headers": {
    "logo_color": {
      "formatType": 1,
      "fieldType": "topLevel",
      "value": "rgb(24,86,148)"
    },
    "icon_image": {
      "formatType": 1,
      "fieldType": "image",
      "value": "https:\/\/s3.amazonaws.com\/passtools_prod\/1\/images\/default-pass-icon.png"
    },
    "logo_text": {
      "formatType": 1,
      "fieldType": "topLevel",
      "value": "Logo Text"
    },
    "barcode_encoding": {
      "formatType": 1,
      "fieldType": "barcode",
      "value": "iso-8859-1"
    },
    "suppress_strip_shine": {
      "formatType": 1,
      "fieldType": "topLevel",
      "value": "true"
    },
    "logo_image": {
      "formatType": 1,
      "fieldType": "image",
      "value": "https:\/\/s3.amazonaws.com\/passtools_prod\/1\/images\/default-pass-logo.png"
    },
    "foreground_color": {
      "formatType": 1,
      "fieldType": "topLevel",
      "value": "rgb(255,255,255)"
    },
    "background_color": {
      "formatType": 1,
      "fieldType": "topLevel",
      "value": "rgb(49,159,196)"
    }
  }
}

Location object

Represents a location on a pass or an adaptive link.

Place objects in the locations array to add location information to passes and templates. Updating locations on a pass or template will replace all locations on that pass; if you want to add to the locations on a pass, you must provide all locations already included on the pass and any additional locations you want to add.

Apple Wallet supports up to 10 locations per pass. If you exceed this limit for an iOS pass, we will use the 10 locations nearest to a user (located by IP address) when they install the pass.

Jump to examples ↓

OBJECT PROPERTIES
  • city string

    The location city.

  • country string

    The country abbreviation or name.

  • latitude numberREQUIRED

    The latitude of the location.

  • longitude numberREQUIRED

    The longitude of the location.

  • region string

    The region or state name.

  • regionCode string

    The region or zip code.

  • relevantText string

    An optional value shown as lock screen text for iOS when the device is close to this location.

  • streetAddress1 string

    The first line of the location address.

  • streetAddress2 string

    The second line of the location address.

Used in:

Examples

Example location object

{
   "longitude": -122.374,
   "latitude": 37.618,
   "relevantText": "Hello loc0",
   "streetAddress1": "address line #1",
   "streetAddress2": "address line #2",
   "city": "San Francisco",
   "region": "CA",
   "regionCode": "94404",
   "country": "US"
}

Pagination object

Contains information about pagination, according to your query parameters.

Jump to examples ↓

OBJECT PROPERTIES
  • The direction of results, ascending, or descending.

    Possible values: ASC, DESC

  • The key in the result set that you want to order results by. Defaults to id.

  • The page you are on. Multiply by the page size to determine the result set on the page.

  • The number of results per page.

  • The first result on the page; results begin with 0.

Used in:

Examples

Example list pagination

{
  "pagination": {
    "order": "id",
    "page": 1,
    "start": 0,
    "direction": "DESC",
    "pageSize": 10
  }
}

Pass field updates

When updating a field on a pass or an adaptive link, you need only provide the following items. You cannot update the position of the field or other information held by the template — only the field label, value, and the message the user receives when their pass is updated.

Jump to examples ↓

OBJECT PROPERTIES
  • changeMessage string

    The message that appears when you change the value or label for a field. Use %@ to pass variables to the field.

  • label string

    The field label, usually represented as a title on the pass. Only provide the label if you want to use a different label than is provided by the template.

  • semantics object<Boarding pass semantics>APPLE ONLY

    Field-level semantics.

    For Apple boarding passes only, a JSON object that uses key-value pairs to add rich, machine-readable data that enhances passes. You can nest this object within fields.

  • value stringREQUIRED

    The default value for the field.

Used in:

Examples

Example update to a field called "Coupon"

{
  "Coupon": {
      "changeMessage": "Enjoy %@ off your next order!",
      "value": "20%",
      "label": "Coupon"
   }
}

Passenger capabilities

List of passenger capabilities.

Used in:

Passenger information SSRs

A list of Special Service Requests (SSRs) information for passengers; supports any valid four-letter IATA SSR code in addition to those listed.

Used in:

Passenger name object

OBJECT PROPERTIES
  • familyName string

    The person’s family name or last name.

  • givenName string

    The person’s given name; also called the forename or first name in some countries.

  • middleName string

    The person’s middle name.

  • namePrefix string

    The prefix for the person’s name, such as “Dr”.

  • nameSuffix string

    The suffix for the person’s name, such as “Junior”.

  • nickname string

    The person’s nickname.

  • phoneticRepresentation string

    The phonetic representation of the person’s name.

Used in:

Passenger seat object

Seating information, including cabin class.

OBJECT PROPERTIES
  • seatAisle string

    The aisle that contains the seat.

  • seatDescription string

    A description of the seat, such as a flat bed seat.

  • seatIdentifier string

    The identifier code for the seat.

  • seatLevel string

    The level that contains the seat.

  • seatNumber string

    The number of the seat.

  • seatRow string

    The row that contains the seat.

  • seatSection string

    The section that contains the seat.

  • seatSectionColor string

    A color associated with identifying the seat, specified as a CSS-style RGB triple, such as rgb(23, 187, 82).

  • seatType string

    The type of seat, such as reserved seating.

Used in:

Passenger service SSRs

A list of Special Service Requests (SSRs) for passengers; supports any valid four-letter IATA SSR code in addition to those listed.

Used in:

Schedule update object

Specifies updates to passes or adaptive links at a particular date and time.

Jump to examples ↓

OBJECT PROPERTIES
  • name string

    A name for the schedule.

  • schedule object
    OBJECT PROPERTIES
    • scheduled_time string

      The ISO 8601 inclusive date, optionally including an offset, e.g., 2007-03-01T13:00:00+08:00. The value will be converted and stored as UTC.

  • update object

    The updates you want to make to an audience or pass, generated from a template within the project. Cannot also use the “notify” object when using “update”.

    OBJECT PROPERTIES
    • audience object<Audience selector>

      Determines the passes you want to target.

    • pass object
      OBJECT PROPERTIES
      • fields object
    • url string

      A URL to get the schedule object.

Used in:

Examples

Scheduled pass update

{
  "name": "New Offer Update",
  "schedule": {
     "scheduled_time": "2017-04-10T18:45:00"
  },
  "update": {
     "audience": {
        "tag": "TZ_ET"
     },
     "pass": {
        "fields": {
           "primary1": {
              "value": "$20 Off"
           },
           "secondary1": {
              "value": "Mega Offer"
           }
        }
     },
     "template": "12345"
  }
}

Segment selector

Boolean tag selectors specifying a group of passes. You can nest AND and OR selectors.

Jump to examples ↓

Any of
  • AND selector

    OBJECT PROPERTIES
    • and array
  • OR selector

    OBJECT PROPERTIES
    • or array
  • object

    NOT selector

Used in:

Examples

Segment selector

{
    "and": [
       {
          "tag": "TZ_PST"
       },
       {
          "not": {
             "tag": "TZ_ET"
          }
       }
    ]
 }

Transit security programs

Security program names.

Used in:

Universal links

A list of key-value pairs that represents partner URLs.

OBJECT PROPERTIES
  • The URL for special assistance.

  • The URL for the bag policy information.

  • The URL for seat change.

  • The URL for inflight entertainment.

  • The URL for managing the reservation.

  • The URL for ordering a meal.

  • The URL for adding/purchasing additional bags.

  • The URL for purchasing lounge access.

  • The URL for purchasing inflight Wi-Fi.

  • The URL for registering a service animal.

  • The URL for reporting a lost bag.

  • The URL for requesting a wheelchair.

  • The URL for the airline email address.

  • The URL for the airline phone number.

  • The URL for the airline website.

  • The URL for upgrading a seat or fare.

Used in: