Event tickets
Schemas for creating events and event ticket adaptive links. An event ticket includes both event information and an array of attendees.
Attendees
An array of attendees for an event. Each object in the array represents a single attendee.
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
formatTypeis set tocurrency.Possible values:
USDEURCNYJPYGPBRUBAUDCHFCADHKDSEKNZDKRWSGDNOKMXNINR
- 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
fielddetermining 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 otherfields, you only need to set thevaluewithin 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,
oneUserOneDeviceprohibits 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:
oneUserOneDeviceprohibits sharing; all other values allow sharing.Possible values:
multipleHoldersoneUserAllDevicesoneUserOneDevice
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.
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:
- Create boarding pass or event ticket Adaptive Links
- Create event
- Create event with external ID
- Get event
- Update event
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.
All ofRepresents 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
eventIdcreated 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.
- 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,
isPersonalizedis automatically set totrue.If false, only the first request generates a pass; subsequent requests generate a new instance of the same pass. When
isPersonalizedisfalse, 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 objectOBJECT PROPERTIES
- events array
Each object in the array represents an event. Each event object must specify the
eventIdoreventExternalIdof an existing event, or contain thefieldsobject sufficient to create a new event.You can also provide the
One ofeventExternalIdin conjunction with thefieldsobject to assign an eventExternalId to a new event.- allOf
If you specify the
eventIdoreventExternalIdof 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.
All ofAn 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
eventIdcreated 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
},
{...},
{...}
]