Event tickets

Schemas for creating events and event ticket adaptive links. An event ticket includes both event information and an array of attendees.

View as Markdown

Attendees

An array of attendees for an event. Each object in the array represents a single attendee.

Jump to examples ↓

OBJECT PROPERTIES
  • adaptiveLinkExternalId string

    A custom identifier for a particular attendee’s adaptive link.

  • fields object

    The information about or for the individual attendee’s event ticket.

    OBJECT PROPERTIES
    • barcodeAltText object<Pass field updates>

      Like other pass creation operations, when providing barcode information,

      you need only provide the value.

      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.

    • barcode_value object<Pass field updates>

      Like other pass creation operations, when providing barcode information, you need only provide the value.

      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.

    • confirmationCode object

      The confirmation code for the ticket holder’s event reservation.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

    • faceValue object

      The face value of the ticket, matching what would be printed on a physical version of the ticket.

      OBJECT PROPERTIES
      • currencyCode string

        Determines the type of currency if the formatType is set to currency.

        Possible values:

        • USD
        • EUR
        • CNY
        • JPY
        • GPB
        • RUB
        • AUD
        • CHF
        • CAD
        • HKD
        • SEK
        • NZD
        • KRW
        • SGD
        • NOK
        • MXN
        • INR
      • micros integer

        The face value amount in micros.

        Format: int64

    • gate object

      The gate the ticket holder should use to enter the venue.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

    • row object

      The row of the ticket holder’s seat.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

    • seat object

      The seat number for the ticket holder.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

    • section object

      The section that the ticket holder’s seat is in.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

    • 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.

        Nullable: true

      • 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

        Default: multipleHolders

    • ticketHolderName object

      The name of the ticket holder, if the ticket is assigned to a person.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

    • ticketNumber object

      The number of the ticket.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

    • ticketType object

      The type of ticket, if applicable. Use this field to include information like “Adult”, “Child”, “VIP”, etc.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string

        The value for this field.

Used in:

Examples

Array of attendees

{
  "attendees": [
     {
        "adaptiveLinkExternalId": "abch3ExtId4",
        "fields": {
           "ticketHolderName": { "label": "Name", "value":"SMITH/SAM" },
           "seat": { "value":"11" },
           "ticketType": { "value":"VIP" },
           "ticketNumber": { "value":"20595923485" },
           "barcode_value": { "value": "1237" },
           "barcodeAltText": { "value": "1237" },
           "faceValue": { "value": "100" }
        }
     },
     {
        "adaptiveLinkExternalId": "abch3ExtId5",
        "fields":{
           "ticketHolderName": { "label": "Name", "value":"SMITH/MARY" },
           "seat": { "value":"12" },
           "ticketType": { "value":"VIP" },
           "ticketNumber": { "value":"20595923486" },
           "barcode_value": { "value": "1238" },
           "barcodeAltText": { "value": "1238" },
           "faceValue": { "value": "100" }
        }
     },
     {
        "fields": {
           "ticketHolderName": { "label": "Name", "value":"SMITH/SARA" },
           "seat":{ "value":"13" },
           "ticketType":{ "value":"VIP" },
           "ticketNumber":{ "value":"20595923487" },
           "barcode_value": { "value": "1239" },
           "barcodeAltText": { "value": "1239" },
           "faceValue": { "value": "100" }
        }
     }
  ]
}

Event request

Represents an event scheduled at a specific time and venue.

Jump to examples ↓

OBJECT PROPERTIES
  • fields objectREQUIRED

    Contains the objects representing an event.

    OBJECT PROPERTIES
    • doorsOpen object

      The date and time when ticket holders can begin to enter the venue.

      OBJECT PROPERTIES
      • label string

        The title for this event field as you want it to appear on a pass. Defaults to Doors Open.

        Example: Doors Open

      • value string

        Format: date-time

    • endTime object

      The date and time when the event ends.

      OBJECT PROPERTIES
      • label string

        The title for this event field, as you want it to appear on a pass. Defaults to End Time.

        Example: End Time

      • value string

        Format: date-time

    • eventName objectREQUIRED

      The value represents the event name.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string
    • startTime object

      The date and time when the event begins.

      OBJECT PROPERTIES
      • label string

        The title for this event field, as you want it to appear on a pass. Defaults to Start Time.

        Example: Start Time

      • value string

        Format: date-time

    • venueAddress objectREQUIRED

      The address of the venue.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string
    • venueTitle objectREQUIRED

      The name of the venue where the event will take place.

      OBJECT PROPERTIES
      • label string

        The label for this field, as you want it to appear on the pass. If you do not provide a label, the event will use a default based off the parent object name.

      • value string
  • passGroups array[string]

    An array of eventId or eventExternalId values representing a group. You can reference the group to make changes to all associated events.

    You can set pass groups when creating an event or when creating an event ticket adaptive link.

Used in:

Examples

Example event request object

{
  "passGroups": ["giants_2019-09-25"],
  "fields": {
    "eventName": {
      "label": "Event",
      "value": "LA Dodgers at SF Giants"
    },
    "venueTitle": {
      "label": "Venue",
      "value": "AT&T Park"
    },
    "venueAddress": {
      "label": "Address",
      "value": "24 Willie Mays Plaza\nSan Francisco, CA 94107"
    },
    "doorsOpen": {
      "label": "Doors Open",
      "value": "2019-09-25T08:35:00"
    },
    "startTime": {
      "label": "Start Time",
      "value": "2019-09-25T09:00:00"
    },
    "endTime": {
      "label": "End Time",
      "value": "2019-09-25T11:00:00"
    }
  }
}

Event response

An event response returns identifiers that you can use to reference the event in other endpoints, along with the complete event request body.

Jump to examples ↓

All of
  • Represents an event scheduled at a specific time and venue.

  • OBJECT PROPERTIES
    • createdAt string

      The date and time when the item was created.

      Format: date-time

      Read only: true

    • eventExternalId string

      An external identifier for an event. You can only assign an external identifier when creating an event. If you do assign an external identifier, requests for events or passes referencing the event will return the external ID in addition to the eventId created within Airship.

    • eventId integer

      The Airship-created identifier for an event.

      Read only: true

    • projectExternalId string

      Returned if you created the event using an external ID for the project.

    • projectId integer

      The ID of the Wallet project.

    • updatedAt string

      The date and time when the item was last updated.

      Format: date-time

      Read only: true

Used in:

Examples

Response object

{
  "eventId": 1234,
  "eventExternalId": "event123ExtId",
  "projectId": 12345,
  "projectExternalId": "project123ExtId",
  "createdAt": "2018-09-24T09:12:32Z",
  "updatedAt": "2018-09-24T09:12:32Z",
  "passGroups": ["giants_2019-09-25"],
  "fields": {
    "eventName": {
      "label": "Event",
      "value": "LA Dodgers at SF Giants"
    },
    "venueTitle": {
      "label": "Venue",
      "value": "AT&T Park"
    },
    "venueAddress": {
      "label": "Address",
      "value": "24 Willie Mays Plaza\nSan Francisco, CA 94107"
    },
    "doorsOpen": {
      "label": "Doors Open",
      "value": "2019-09-25T08:35:00"
    },
    "startTime": {
      "label": "Start Time",
      "value": "2019-09-25T09:00:00"
    },
    "endTime": {
      "label": "End Time",
      "value": "2019-09-25T11:00:00"
    }
  }
}

Event ticket Adaptive Link request

An event ticket requires similar information to other adaptive link types, but does not support some of the same fields, and requires event and attendee information.

Like other adaptive links, you must provide the id or externalId of an iOS or Android template. You can create the event within this request or specify an event by eventId or eventExternalId. In either case, you must also provide an array of attendees for the event.

Jump to examples ↓

All of
  • OBJECT PROPERTIES
    • androidTemplateExternalId string

      The custom identifier of the Google template for passes issued from this adaptive link.

    • androidTemplateId integer

      The Google template for passes issued from the adaptive link.

    • availablePasses integer

      The total number of passes that can be created from this link. If absent, the link supports 1,000,000 passes.

      Default: 1e+06

    • iosTemplateExternalId string

      The custom identifier of the Apple template for passes issued from the adaptive link, if assigned.

    • iosTemplateId integer

      The iOS template for passes issued from the adaptive link.

    • isPersonalized boolean

      If true, each request (when a recipient uses an adaptive link) generates a new pass. You can update any of the individual passes generated from the adaptive link. If you generate the adaptive link using any request parameters, isPersonalized is automatically set to true.

      If false, only the first request generates a pass; subsequent requests generate a new instance of the same pass. When isPersonalized is false, you cannot update passes generated from an adaptive link by updating the adaptive link itself. Rather, you must use the Bulk Update Passes endpoint to push updates to the pass instances generated from the adaptive link.

    • landingPageUrl string

      The address users are redirected to if their device type cannot be detected or they cannot install the pass for another reason.

      Format: url

    • parameterEncoding string

      When set, allows url-encoded parameters to set or modify values when creating passes from the adaptive link.

      Possible values:

      • base64
  • OBJECT PROPERTIES
    • payload object
      OBJECT PROPERTIES
      • events array

        Each object in the array represents an event. Each event object must specify the eventId or eventExternalId of an existing event, or contain the fields object sufficient to create a new event.

        You can also provide the eventExternalId in conjunction with the fields object to assign an eventExternalId to a new event.

        One of
        • allOf

          If you specify the eventId or eventExternalId of an existing event, you need only provide the attendees for the event ticket.

        • allOf

          If creating an event, you can provide an external ID for the event. You must then provide a complete event object.

Used in:

Examples

Example event ticket request object

{
    "iosTemplateExternalId": "ios123ExtId",
    "androidTemplateExternalId": "android123ExtId",
    "payload": {
        "events": [
            {
                "eventExternalId": "event123ExtId",
                "passGroups": [
                    "giants_2019-09-25"
                ],
                "fields": {
                    "eventName": {
                        "value": "LA Dodgers at SF Giants"
                    },
                    "venueTitle": {
                        "value": "AT&T Park"
                    },
                    "venueAddress": {
                        "label": "Address",
                        "value": "24 Willie Mays Plaza\nSan Francisco, CA 94107"
                    },
                    "doorsOpen": {
                        "label": "Doors Open",
                        "value": "2019-09-25T08:35:00"
                    },
                    "startTime": {
                        "label": "Start Time",
                        "value": "2019-09-25T09:00:00"
                    },
                    "endTime": {
                        "label": "End Time",
                        "value": "2019-09-25T11:00:00"
                    }
                },
                "attendees": [
                    {
                        "adaptiveLinkExternalId": "abch3ExtId1",
                        "fields": {
                            "ticketHolderName": {
                                "label": "Name",
                                "value": "SMITH/JOE"
                            },
                            "seat": {
                                "value": "33"
                            },
                            "ticketType": {
                                "value": "VIP"
                            },
                            "barcode_value": {
                                "value": "1234"
                            },
                            "barcodeAltText": {
                                "value": "1234"
                            },
                            "faceValue": {
                                "value": "50"
                            }
                        }
                    },
                    {
                        "adaptiveLinkExternalId": "abch3ExtId2",
                        "fields": {
                            "ticketHolderName": {
                                "label": "Name",
                                "value": "SMITH/SALLY"
                            },
                            "seat": {
                                "value": "34"
                            },
                            "ticketType": {
                                "value": "VIP"
                            },
                            "barcode_value": {
                                "value": "1235"
                            },
                            "barcodeAltText": {
                                "value": "1235"
                            },
                            "faceValue": {
                                "value": "50"
                            }
                        }
                    },
                    {
                        "adaptiveLinkExternalId": "abch3ExtId2",
                        "fields": {
                            "ticketHolderName": {
                                "label": "Name",
                                "value": "SMITH/JACK"
                            },
                            "seat": {
                                "value": "35"
                            },
                            "ticketType": {
                                "value": "VIP"
                            },
                            "barcode_value": {
                                "value": "1236"
                            },
                            "barcodeAltText": {
                                "value": "1236"
                            },
                            "faceValue": {
                                "value": "50"
                            }
                        }
                    }
                ]
            }
        ]
    }
}

Event ticket Adaptive Link response

The response for event ticket operations is much like any other adaptive link, with the addition of the identifier of the event and an HTTP status for each individual adaptive link.

Jump to examples ↓

All of
  • An adaptive link response includes URLs that users can access to detect and install a pass.

  • OBJECT PROPERTIES
    • eventExternalId string

      An external identifier for an event. You can only assign an external identifier when creating an event. If you do assign an external identifier, requests for events or passes referencing the event will return the external ID in addition to the eventId created within Airship.

    • eventId integer

      The Airship-created identifier for an event.

      Read only: true

    • status integer

      The HTTP status code for the adaptive link operation.

      Example: 200

Used in:

Examples

Example event ticket response array

[
 {
    "adaptiveLinkId": "abchd345678",
    "adaptiveLinkExternalId": "abch3ExtId1",
    "iosTemplateId": 12345,
    "iosTemplateExternalId": "ios123ExtId",
    "androidTemplateId": 154321,
    "androidTemplateExternalId": "android123ExtId",
    "eventId": 476,
    "eventExternalId": "event123ExtId",
    "url": "https://wallet-api.urbanairship.com/v1/pass/adaptive/abchd345678",
    "iosUrl": "https://wallet-api.urbanairship.com/v1/pass/adaptive/abchd345678/ios",
    "androidUrl": "https://wallet-api.urbanairship.com/v1/pass/adaptive/abchd345678/android",
    "createdAt": "2018-09-24T09:12:32Z",
    "updatedAt": "2018-09-24T09:15:32Z",
    "isPersonalized": "false",
    "availablePasses": 1000000,
    "iosPassLinkId": "a5711a29-7b38-41f2-8202-8f792df89b0b",
    "androidPassLinkId": "c1f512e5-fda3-4ddf-82c6-066c5681161d",
    "status": 200
 },
 {...},
 {...}
]