AwardWallet Account Access API
Introduction
The AwardWallet Account Access API provides access to the loyalty account data that belongs to AwardWallet users. Once authorized by the end user, the API provides access to the loyalty accounts that the user shared with you.
To use this API you need to have a business account, which can be registered here, if you already have a personal AwardWallet account, or here if you don’t have a personal AwardWallet account.
Your API key and other API settings can be found under your business account.
This API will allow you to retrieve information about any of the users that linked their accounts to your business account. You don’t need to have a paid business account in order to use the API. However, if you need a nice UI interface to see all of the users who shared their loyalty accounts with your business, you can use our business interface to do that.
If you wish to be able to invite users to link their accounts to your business interface you need to request that form the AwardWallet team by sending a description of your business and intended use case.
Once approved by AwardWallet you could start inviting users by using create-auth-url method.
Finally, you can have two types of members under your business interface:
- Connected Users – these are the users who have their own personal AwardWallet credentials who chose to connect their accounts to your business account. They can choose granularly what exactly they wish to share with you.
- Members – basically these are just names you add under your business interface. They make your life easier when organizing stuff under your business interface. These members don’t have an AwardWallet account and therefore are not linked to you the same way as Connected Users are.
Since these two entities are quite different you need to use two different API calls to get info about them.
Authentication
To authorize, use this code:
# With shell, you can just pass the correct header with each request
curl "api_endpoint_here"
-H "X-Authentication: userapikey"
Every API call needs to be authenticated with an API key. This key is passed in the "X-Authentication" field with the https request header. You can get your personal API key in the account settings of your business account.
X-Authentication: userapikey
Connect
Get Connection Link
POST Request Example
{
"platform": "mobile",
"access": 1,
"state": "Y2kRhAvHoJRqECgkZfFUUMgMZADboqbnQJzs",
"granularSharing": false
}
Response Example
{
"url": "https://awardwallet.com/user/connections/approve?access=1&authKey=lkqjwebrlsfdkds&id=lkwqsdf"
}
Use this method to get a unique URL to securely connect an AwardWallet user to your business account.
HTTP Request
POST https://business.awardwallet.com/api/export/v1/create-auth-url
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
platform |
string | true | There are two possible values:
|
access |
integer | true | This attribute accepts values 0 – 3. It identifies the level of account access the User will be prompted to grant to the business. The possible values are: 0 - Read account numbers / usernames and elite statuses only 1 - Read account balances and elite statuses only 2 - Read all information excluding passwords 3 - Full control (edit, delete, auto-login, view passwords) |
granularSharing |
boolean | false | First of all this option (if set to |
state |
string | false | Specifies any string value that your application uses to maintain state between your authorization
request and the authorization server's response. The server returns the exact value that you send
as a |
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
url |
string | true | This is the JSON-encoded URL string that you will need to redirect your user's browser to in order for the user to authorize your access. |
You can redirect your users to the URL that gets returned to you in a number of ways. One way to do this is to open up a separate small window like this:
Get Connected User Info
Response Example
{
"userId": "123"
}
Use this method after a successful connection to receive a newly connected userId
HTTP Request
GET https://business.awardwallet.com/api/export/v1/get-connection-info/{code}
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| code | string | true | This code will be sent to your endpoint via a browser redirect after a successful authentication (initiated by the |
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
userId |
integer | false | This is the ID of the newly connected user. |
Accounts
Get Account Details
Response Example
{
"account": [
{
"accountId": 7654321,
"code": "british",
"displayName": "British Airways (Executive Club)",
"kind": "Airlines",
"login": "johnsmith",
"autologinUrl": "https://business.awardwallet.com/account/redirect?ID=7654321",
"updateUrl": "https://business.awardwallet.com/account/edit/7654321?autosubmit=1",
"editUrl": "https://business.awardwallet.com/account/edit/7654321",
"balance": "146,780",
"balanceRaw": 146780,
"owner": "John Smith",
"errorCode": 1,
"lastDetectedChange": "+750",
"expirationDate": "2018-12-10T00:00:00+00:00",
"lastRetrieveDate": "2016-01-15T00:00:00+00:00",
"lastChangeDate": "2016-01-15T00:49:33+00:00",
"properties": [
{
"name": "Next Elite Level",
"value": "Bronze",
"kind": 9
},
{
"name": "Date of joining the club",
"value": "20 Jun 2013",
"kind": 5
},
{
"name": "Lifetime Tier Points",
"value": "35,000"
},
{
"name": "Executive Club Tier Points",
"value": "35,000"
},
{
"name": "Card expiry date",
"value": "31 Mar 2017"
},
{
"name": "Membership year ends",
"value": "08 Feb 2016"
},
{
"name": "Last Activity",
"value": "10-Dec-15",
"kind": 13
},
{
"name": "Name",
"value": "Mr Smith",
"kind": 12
},
{
"name": "Level",
"value": "Blue",
"rank": 0,
"kind": 3
},
{
"name": "Membership no",
"value": "1122334455",
"kind": 1
}
],
"history": [
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "3/31/14"
},
{
"name": "Description",
"code": "Description",
"value": "Expired Points"
},
{
"name": "Type",
"code": "Info",
"value": "Adjustments"
},
{
"name": "Points",
"code": "Miles",
"value": "-100"
}
]
},
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "12/11/13"
},
{
"name": "Description",
"code": "Description",
"value": "Google Wallet"
},
{
"name": "Type",
"code": "Info",
"value": "Other Earning"
},
{
"name": "Points",
"code": "Miles",
"value": "+100"
}
]
},
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "9/30/12"
},
{
"name": "Description",
"code": "Description",
"value": "Expired Points"
},
{
"name": "Type",
"code": "Info",
"value": "Adjustments"
},
{
"name": "Points",
"code": "Miles",
"value": "-1,042"
}
]
}
]
}
],
"connectedUser": {
"userId": 12345,
"fullName": "John Smith",
"status": "Free",
"userName": "JSmith",
"email": "JSmith@email.com",
"forwardingEmail": "JSmith@AwardWallet.com",
"accessLevel": "Regular",
"connectionType": "Connected",
"accountsAccessLevel": "Full control",
"accountsSharedByDefault": true,
"editConnectionUrl": "https://business.awardwallet.com/members/connection/112233",
"accountListUrl": "https://business.awardwallet.com/account/list#/?agentId=112233",
"timelineUrl": "https://business.awardwallet.com/timeline/?agentId=166765#/112233",
"bookingRequestsUrl": "https://business.awardwallet.com/awardBooking/queue?user_filter=332211"
}
}
Using the accountId found in either the /member, /member/{id}, /connectedUser, or /connectedUser/{id} methods you can get a comprehensive list of all the account details including the entire transaction history list for that specific account.
HTTP Request
GET https://business.awardwallet.com/api/export/v1/account/{id}
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | true | accountId |
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | true | An object that describes the Account |
|
| object | false | An object that describes the Member to whom this account is linked. |
|
| object | false | An object that describes the ConnectedUser to whom this account is linked. |
Account data
ConnectedUser
| Parameter | Type | Required | Description |
|---|---|---|---|
userId |
integer | true | Unique ID that identifies a given User |
fullName |
string | true | Full name that User provided during registration |
| string | true | Email address of a User |
|
forwardingEmail |
string | true | AwardWallet email address of a User that can be used for forwarding User itineraries (as well as loyalty program statements) in order to update that User's travel plans on the timeline. |
userName |
string | true | The logon name that User picked during registration |
status |
string | true | User's status on AwardWallet. Possible values are:
|
accessLevel |
string | false | Status of a User in the business account. Possible values are:
|
connectionType |
string | true | User connection status. Possible values are:
Pending - is the status for those users who have not yet accepted an invitation to connect to the Business Account. |
accountsAccessLevel |
string | true | Identifies the level of account access the User granted to the business. Possible values are: 0 - Read numbers 1 - Read balances 2 - Read all 3 - Full control When inviting the users, you can pass one of these numbers as a value to the |
accountsSharedByDefault |
boolean | true | Identifies if the User is configured to share newly added accounts by default with the Business Account |
editConnectionUrl |
string | true | URL address of the page where business administrator can manage the connection settings with this user. |
accountListUrl |
string | true | URL address of the page where business administrator can see all of the loyalty accounts shared by the user with the business account. |
timelineUrl |
string | true | URL address of the page where business administrator can see the travel timeline (i.e. all of their travel reservations) of this connected user. |
bookingRequestsUrl |
string | false | URL address of the page where business administrator can see all the reward booking requests made by the user with the business. |
Member
| Parameter | Type | Required | Description |
|---|---|---|---|
memberId |
integer | true | Unique ID that identifies a given Member |
fullName |
string | true | Full name of a Member |
| string | false | Email address of a Member |
|
forwardingEmail |
string | false | AwardWallet email address of a Member that can be used for forwarding Member itineraries (as well as loyalty program statements) in order to update that Member’s travel plans on the timeline. |
editMemberUrl |
string | true | URL address of the page where business administrator can edit this member’s settings such as name or email address. |
accountListUrl |
string | true | URL address of the page where business administrator can see all of the loyalty accounts that belong to this member. |
timelineUrl |
string | true | URL address of the page where business administrator can see the travel timeline (i.e. all of their travel reservations) of this member. |
Account
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId |
integer | true | Unique identifier of an Account |
code |
string | true | Alpha-numeric value with no spaces that uniquely identifies any given provider. |
displayName |
string | true | Name of the provider to which the Account belongs to. This is a user-friendly name that shows both the name the company as well as the actual name of the loyalty program. I.e. British Airways (Executive Club) |
kind |
string | true | Type of account provider. Possible values are:
|
login |
string | true | Account login value. Could be "n/a" if the value is empty. |
autologinUrl |
string | true | The auto-login URL that will automatically log you into that account on the provider’s website. Auto-login is only available on the accounts that provided the Business Account with Full Control. If the Business Account doesn’t have Full Control this value will be set to "n/a". |
updateUrl |
string | true | The URL where you can retrieve all account details from the prover’s website. Account updating is only available on the accounts that provided the Business Account with Full Control. If the Business Account doesn’t have Full Control this value will be set to "n/a". |
editUrl |
string | true | The URL where you can change account details, such as username and password values. Changing accounts is only available on the accounts that provided the Business Account with Full Control. If the Business Account doesn’t have Full Control this value will be set to "n/a". |
balance |
string | true | Current account balance presented as a formatted number |
balanceRaw |
number | true | Current account balance |
lastDetectedChange |
string | false | Last change in the account balance as detected by AwardWallet. This change may or may not correlate with the actual change in the history of the account on the provider’s website. |
expirationDate |
date-time | false | The date when all or part of the account balance will expire. In most cases this date was calculated by AwardWallet. |
barcode |
string | false | Zeros and ones representing the bar code of the account. If available, and drawn properly, can be used with the provider’s bar code readers. |
owner |
string | true | Full name of the account owner. Keep in mind that a Connected User could share accounts of his or her family members. In that case that person would show up as the account owner. |
errorCode |
integer | true | The result of the last account update. Possible values are: 0 - Account has never been updated 1 – Account was successfully updated 2 – Account has Invalid credentials 3 – Account is locked out 4 – The provider returned some error, or requires some user action 5 – The provider is disabled by AwardWallet 6 - AwardWallet failed to parse the provider’s web site for unknown reason 7 – Account password is missing 8 – Account is disabled to prevent lockouts on the prover’s website 9 – Account was successfully updated, but there is a warning message returned 10 – The user needs to answer a security question, to update this account 11 - Account updating timed out. |
errorMessage |
string | false | Account error message as shown on the provider’s website. |
lastChangeDate |
date-time | false | Last time AwardWallet detected a change in the account balance. This date will probably not correlate with the date last time account actually changed on the provider’s website. |
lastRetrieveDate |
date-time | false | Last time AwardWallet successfully logged into the account and successfully retrieved the account information |
| array | false | Whenever Account History is available it will be presented as a History array. Please note that all providers choose to show account history in different formats, so unfortunately there is no standard column definitions across all providers. If you need to work with Account History you would need to evaluate the History array on per provider basis. |
|
| array | false | Account properties are so called "secondary attributes" that we gather from providers' websites whenever possible. Each provider has a different set of these secondary properties. To standardize some of them, properties may have a |
|
| array | false | Some accounts have subaccounts. For example, a single Capital One account can have multiple credit cards with individual balances under each card. Those separate balances would be tracked as subaccounts under that Capital One account. |
SubAccount
| Parameter | Type | Required | Description |
|---|---|---|---|
subAccountId |
integer | true | Unique identifier of a sub-account |
displayName |
string | true | User friendly name of a sub-account |
balance |
string | true | Current sub-account balance presented as a formatted number |
balanceRaw |
number | false | Current sub-account balance |
lastDetectedChange |
string | false | Last change in the sub-account balance as detected by AwardWallet. This change may or may not correlate with the actual change in the history of that sub-account on the provider’s website. |
| array | false | Sub-account properties are so called "secondary attributes" that we gather from providers' websites whenever possible. Each provider has a different set of these secondary properties. |
|
| array | false | Whenever SubAccount History is available it will be presented as a History array. Please note that all providers choose to show account history in different formats, so unfortunately there is no standard column definitions across all providers. If you need to work with Account History you would need to evaluate the History array on per provider basis. |
AccountProperty
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | true | Attribute name |
value |
string | true | Attribute value |
rank |
integer | false | Only used to provide a numeric representation of the elite status of an Account so that elite statuses could be standardized across all providers. It is only used for the Status property (Kind = 3) |
kind |
integer | false | Used to standardize properties across different providers as they all may call conceptually the same attributes slightly differently. Possible values are:
|
History
Account history row
| Parameter | Type | Required | Description |
|---|---|---|---|
| array | false | History fields |
HistoryField
Account history field
| Parameter | Type | Required | Description |
|---|---|---|---|
code |
string | true | There are 4 predefined field codes: PostingDate - The date when miles or points were posted to the account Description - Description of the transaction Miles - Shows the numerical change in the miles or points Bonus - Shows the bonus miles or points For everything else this code value will be set to Info |
name |
string | true | Human readable name of the attribute, such as "Transaction Date" |
value |
string | true | Attribute value, such as "Finance Card - BA VISA NON BA SPEND" |
Timeline
Get Travel Timeline Details
Using the userId found in the /connectedUser method you can get a comprehensive list of itineraries saved for that user.
On your first call you would request this method without the pageToken attribute. If the number of itineraries is too much for one call, to fetch the next page you need to pass the nextPageToken from the response body of your previous request. When you stop receiving the nextPageToken, it means there are no more records to fetch
Request Example
{
"start": "2020-01-01",
"end": "2030-01-01",
"pageToken": "das89hhdv9fqklm302"
}
Request
POST https://business.awardwallet.com/api/export/v1/travel-timeline/{id}
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | true | userId |
| start | string | true | Lower bound for the itinerary date |
| end | string | true | Upper bound for the itinerary date |
| pageToken | string | false | Token for retrieving the next page of itineraries |
Response Example
{
"itineraries": [
{
"travelAgency": {
"providerInfo": {
"code": "expedia",
"name": "Expedia.com",
"accountNumbers": [
{
"number": "EXP-11298"
}
],
"earnedRewards": "1 booking"
},
"confirmationNumbers": [
{
"number": "J3HND-8776"
},
{
"number": "88376495"
}
],
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-44-EXPEDIA"
}
]
},
"pricingInfo": {
"total": 4179.6,
"cost": 3200,
"discount": 300,
"spentAwards": "1000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 199.02
},
{
"name": "Additional services",
"charge": 780.58
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "spg",
"name": "Starwood Hotels",
"accountNumbers": [
{
"number": "1234567"
}
],
"earnedRewards": "4 nights"
},
"confirmationNumbers": [
{
"number": "1122334455"
},
{
"number": "887756"
}
],
"hotelName": "Sheraton Philadelphia Downtown Hotel",
"address": {
"text": "201 North 17th Street, Philadelphia, Pennsylvania 19103 United States",
"addressLine": "201 North 17th Street",
"city": "Philadelphia",
"stateName": "Pennsylvania",
"countryName": "United States",
"postalCode": "19103",
"lat": 39.9569828,
"lng": -75.1674669,
"timezone": -14400
},
"checkInDate": "2030-01-01T13:30:00",
"checkOutDate": "2030-01-05T12:00:00",
"phone": "+1-22-3333",
"fax": "+1-66-77899",
"guests": [
{
"name": "John D.",
"accountNumbers": [
{
"number": "87654321"
}
]
}
],
"guestCount": 2,
"kidsCount": 3,
"roomsCount": 1,
"cancellationPolicy": "Cancellation is free prior to check-in",
"rooms": [
{
"type": "King bed",
"description": "Traditional, TV, free wi-fi",
"rate": "30$/night",
"rateType": "King bed"
}
],
"notes": "Use the secondary entrance if you're carrying large luggage",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"type": "hotelReservation"
}
],
"nextPageToken": "RS44NDQ3ODMyLjMwMDA"
}
Response
Timeline data
| Parameter | Type | Required | Description |
|---|---|---|---|
| array | false | An array of the itineraries |
|
nextPageToken |
string | false | Token for the next page |
Members
List Members
Response Example
{
"members": [
{
"memberId": 1234,
"fullName": "John Smith",
"email": "JSmith@email.com",
"forwardingEmail": "BusinessABC.JSmith@AwardWallet.com",
"editMemberUrl": "https://business.awardwallet.com/agent/editFamilyMember.php?ID=998877&Source=M",
"accountListUrl": "https://business.awardwallet.com/account/list#/?agentId=998877",
"timelineUrl": "https://business.awardwallet.com/timeline/?agentId=998877#/998877",
"accountsIndex": [
{
"accountId": 12345,
"lastChangeDate": "2016-07-20T17:17:17+00:00",
"lastRetrieveDate": "2016-07-20T17:17:17+00:00"
},
{
"accountId": 12346,
"lastChangeDate": "2016-07-10T17:17:37+00:00",
"lastRetrieveDate": "2016-07-22T17:17:37+00:00"
}
]
}
]
}
Members are just names you add under your business interface. They make your life easier when organizing stuff under your business interface. These members don’t have an AwardWallet account and therefore are not linked to your business account the same way as Connected Users are. You can use this method to retrieve all the members under your business account.
HTTP Request
GET https://business.awardwallet.com/api/export/v1/member
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
| array | true | array of MembersListItem |
An array of Members
MembersListItem
| Parameter | Type | Required | Description |
|---|---|---|---|
memberId |
integer | true | Unique ID that identifies a given Member |
fullName |
string | true | Full name of a Member |
| string | false | Email address of a Member |
|
forwardingEmail |
string | false | AwardWallet email address of a Member that can be used for forwarding Member itineraries (as well as loyalty program statements) in order to update that Member’s travel plans on the timeline. |
editMemberUrl |
string | true | URL address of the page where business administrator can edit this member’s settings such as name or email address. |
accountListUrl |
string | true | URL address of the page where business administrator can see all of the loyalty accounts that belong to this member. |
timelineUrl |
string | true | URL address of the page where business administrator can see the travel timeline (i.e. all of their travel reservations) of this member. |
| array | true | An index of all Member accounts that can be used to determine if calling the |
AccountsIndexItem
| Parameter | Type | Required | Description |
|---|---|---|---|
accountId |
integer | true | Unique identifier of an Account |
lastChangeDate |
date-time | true | Last time AwardWallet detected a change in the account balance. This date will probably not correlate with the date last time account actually changed on the provider’s website. |
lastRetrieveDate |
date-time | false | Last time AwardWallet successfully logged into the account and successfully retrieved the account information |
Get Member Details
Response Example
{
"memberId": 1234,
"fullName": "John Smith",
"email": "JSmith@email.com",
"forwardingEmail": "BusinessABC.JSmith@AwardWallet.com",
"editMemberUrl": "https://business.awardwallet.com/agent/editFamilyMember.php?ID=998877&Source=M",
"accountListUrl": "https://business.awardwallet.com/account/list#/?agentId=998877",
"timelineUrl": "https://business.awardwallet.com/timeline/?agentId=998877#/998877",
"accounts": [
{
"accountId": 7654321,
"code": "british",
"displayName": "British Airways (Executive Club)",
"kind": "Airlines",
"login": "johnsmith",
"autologinUrl": "https://business.awardwallet.com/account/redirect?ID=7654321",
"updateUrl": "https://business.awardwallet.com/account/edit/7654321?autosubmit=1",
"editUrl": "https://business.awardwallet.com/account/edit/7654321",
"balance": "146,780",
"balanceRaw": 146780,
"owner": "John Smith",
"errorCode": 1,
"lastDetectedChange": "+750",
"expirationDate": "2018-12-10T00:00:00+00:00",
"lastRetrieveDate": "2016-01-15T00:00:00+00:00",
"lastChangeDate": "2016-01-15T00:49:33+00:00",
"properties": [
{
"name": "Next Elite Level",
"value": "Bronze",
"kind": 9
},
{
"name": "Date of joining the club",
"value": "20 Jun 2013",
"kind": 5
},
{
"name": "Lifetime Tier Points",
"value": "35,000"
},
{
"name": "Executive Club Tier Points",
"value": "35,000"
},
{
"name": "Card expiry date",
"value": "31 Mar 2017"
},
{
"name": "Membership year ends",
"value": "08 Feb 2016"
},
{
"name": "Last Activity",
"value": "10-Dec-15",
"kind": 13
},
{
"name": "Name",
"value": "Mr Smith",
"kind": 12
},
{
"name": "Level",
"value": "Blue",
"rank": 0,
"kind": 3
},
{
"name": "Membership no",
"value": "1122334455",
"kind": 1
}
],
"history": [
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "3/31/14"
},
{
"name": "Description",
"code": "Description",
"value": "Expired Points"
},
{
"name": "Type",
"code": "Info",
"value": "Adjustments"
},
{
"name": "Points",
"code": "Miles",
"value": "-100"
}
]
},
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "12/11/13"
},
{
"name": "Description",
"code": "Description",
"value": "Google Wallet"
},
{
"name": "Type",
"code": "Info",
"value": "Other Earning"
},
{
"name": "Points",
"code": "Miles",
"value": "+100"
}
]
},
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "9/30/12"
},
{
"name": "Description",
"code": "Description",
"value": "Expired Points"
},
{
"name": "Type",
"code": "Info",
"value": "Adjustments"
},
{
"name": "Points",
"code": "Miles",
"value": "-1,042"
}
]
}
]
}
]
}
Using a memberId, received from the /member method you are able to retrieve all of the loyalty accounts that this member has, as well as other member-specific attributes, such as name and email of the member.
HTTP Request
GET https://business.awardwallet.com/api/export/v1/member/{id}
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | true | memberId |
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
memberId |
integer | true | Unique ID that identifies a given Member |
fullName |
string | true | Full name of a Member |
| string | false | Email address of a Member |
|
forwardingEmail |
string | false | AwardWallet email address of a Member that can be used for forwarding Member itineraries (as well as loyalty program statements) in order to update that Member’s travel plans on the timeline. |
editMemberUrl |
string | true | URL address of the page where business administrator can edit this member’s settings such as name or email address. |
accountListUrl |
string | true | URL address of the page where business administrator can see all of the loyalty accounts that belong to this member. |
timelineUrl |
string | true | URL address of the page where business administrator can see the travel timeline (i.e. all of their travel reservations) of this member. |
| array | true | Array of Member accounts |
Member data and array of accounts
Connected Users
List Connected Users
Response Example
{
"connectedUsers": [
{
"userId": 12345,
"fullName": "John Smith",
"status": "Free",
"userName": "JSmith",
"email": "JSmith@email.com",
"forwardingEmail": "JSmith@AwardWallet.com",
"accessLevel": "Regular",
"connectionType": "Connected",
"accountsAccessLevel": "Full control",
"accountsSharedByDefault": true,
"editConnectionUrl": "https://business.awardwallet.com/members/connection/112233",
"accountListUrl": "https://business.awardwallet.com/account/list#/?agentId=112233",
"timelineUrl": "https://business.awardwallet.com/timeline/?agentId=166765#/112233",
"bookingRequestsUrl": "https://business.awardwallet.com/awardBooking/queue?user_filter=332211",
"accountsIndex": [
{
"accountId": 12345,
"lastChangeDate": "2016-07-20T17:17:17+00:00",
"lastRetrieveDate": "2016-07-20T17:17:17+00:00"
},
{
"accountId": 12346,
"lastChangeDate": "2016-07-10T17:17:37+00:00",
"lastRetrieveDate": "2016-07-22T17:17:37+00:00"
}
]
}
]
}
Connected Users are the users who have their own personal AwardWallet credentials who chose to connect their accounts to your business account. They can granularly choose what exactly they wish to share with you.
This method will list all such users as well as an index of the loyalty accounts that they own.
HTTP Request
GET https://business.awardwallet.com/api/export/v1/connectedUser
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
| array | true | array of users |
An array of users
ConnectedUsersListItem
| Parameter | Type | Required | Description |
|---|---|---|---|
userId |
integer | true | Unique ID that identifies a given User |
fullName |
string | true | Full name that User provided during registration |
| string | true | Email address of a User |
|
forwardingEmail |
string | true | AwardWallet email address of a User that can be used for forwarding User itineraries (as well as loyalty program statements) in order to update that User's travel plans on the timeline. |
userName |
string | true | The logon name that User picked during registration |
status |
string | true | User's status on AwardWallet. Possible values are:
|
accessLevel |
string | false | Status of a User in the business account. Possible values are:
|
connectionType |
string | true | User connection status. Possible values are:
Pending - is the status for those users who have not yet accepted an invitation to connect to the Business Account. |
accountsAccessLevel |
string | true | Identifies the level of account access the User granted to the business. Possible values are: 0 - Read numbers 1 - Read balances 2 - Read all 3 - Full control When inviting the users, you can pass one of these numbers as a value to the |
accountsSharedByDefault |
boolean | true | Identifies if the User is configured to share newly added accounts by default with the Business Account |
editConnectionUrl |
string | true | URL address of the page where business administrator can manage the connection settings with this user. |
accountListUrl |
string | true | URL address of the page where business administrator can see all of the loyalty accounts shared by the user with the business account. |
timelineUrl |
string | true | URL address of the page where business administrator can see the travel timeline (i.e. all of their travel reservations) of this connected user. |
bookingRequestsUrl |
string | false | URL address of the page where business administrator can see all the reward booking requests made by the user with the business. |
| array | true | An index of all Member accounts that can be used to determine if calling the |
Get Connected User Details
Response Example
{
"userId": 12345,
"fullName": "John Smith",
"status": "Free",
"userName": "JSmith",
"email": "JSmith@email.com",
"forwardingEmail": "JSmith@AwardWallet.com",
"accessLevel": "Regular",
"connectionType": "Connected",
"accountsAccessLevel": "Full control",
"accountsSharedByDefault": true,
"editConnectionUrl": "https://business.awardwallet.com/members/connection/112233",
"accountListUrl": "https://business.awardwallet.com/account/list#/?agentId=112233",
"timelineUrl": "https://business.awardwallet.com/timeline/?agentId=166765#/112233",
"bookingRequestsUrl": "https://business.awardwallet.com/awardBooking/queue?user_filter=332211",
"accounts": [
{
"accountId": 7654321,
"code": "british",
"displayName": "British Airways (Executive Club)",
"kind": "Airlines",
"login": "johnsmith",
"autologinUrl": "https://business.awardwallet.com/account/redirect?ID=7654321",
"updateUrl": "https://business.awardwallet.com/account/edit/7654321?autosubmit=1",
"editUrl": "https://business.awardwallet.com/account/edit/7654321",
"balance": "146,780",
"balanceRaw": 146780,
"owner": "John Smith",
"errorCode": 1,
"lastDetectedChange": "+750",
"expirationDate": "2018-12-10T00:00:00+00:00",
"lastRetrieveDate": "2016-01-15T00:00:00+00:00",
"lastChangeDate": "2016-01-15T00:49:33+00:00",
"properties": [
{
"name": "Next Elite Level",
"value": "Bronze",
"kind": 9
},
{
"name": "Date of joining the club",
"value": "20 Jun 2013",
"kind": 5
},
{
"name": "Lifetime Tier Points",
"value": "35,000"
},
{
"name": "Executive Club Tier Points",
"value": "35,000"
},
{
"name": "Card expiry date",
"value": "31 Mar 2017"
},
{
"name": "Membership year ends",
"value": "08 Feb 2016"
},
{
"name": "Last Activity",
"value": "10-Dec-15",
"kind": 13
},
{
"name": "Name",
"value": "Mr Smith",
"kind": 12
},
{
"name": "Level",
"value": "Blue",
"rank": 0,
"kind": 3
},
{
"name": "Membership no",
"value": "1122334455",
"kind": 1
}
],
"history": [
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "3/31/14"
},
{
"name": "Description",
"code": "Description",
"value": "Expired Points"
},
{
"name": "Type",
"code": "Info",
"value": "Adjustments"
},
{
"name": "Points",
"code": "Miles",
"value": "-100"
}
]
},
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "12/11/13"
},
{
"name": "Description",
"code": "Description",
"value": "Google Wallet"
},
{
"name": "Type",
"code": "Info",
"value": "Other Earning"
},
{
"name": "Points",
"code": "Miles",
"value": "+100"
}
]
},
{
"fields": [
{
"name": "Transaction Date",
"code": "PostingDate",
"value": "9/30/12"
},
{
"name": "Description",
"code": "Description",
"value": "Expired Points"
},
{
"name": "Type",
"code": "Info",
"value": "Adjustments"
},
{
"name": "Points",
"code": "Miles",
"value": "-1,042"
}
]
}
]
}
]
}
Using a userId, received from the /connectedUser method you are able to retrieve all of the loyalty accounts that this user has shared with your business account, as well as other user-specific attributes, such as their name, email, level of access they provided you with, etc.
HTTP Request
GET https://business.awardwallet.com/api/export/v1/connectedUser/{id}
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| id | integer | true | userId |
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
userId |
integer | true | Unique ID that identifies a given User |
fullName |
string | true | Full name that User provided during registration |
| string | true | Email address of a User |
|
forwardingEmail |
string | true | AwardWallet email address of a User that can be used for forwarding User itineraries (as well as loyalty program statements) in order to update that User's travel plans on the timeline. |
userName |
string | true | The logon name that User picked during registration |
status |
string | true | User's status on AwardWallet. Possible values are:
|
accessLevel |
string | false | Status of a User in the business account. Possible values are:
|
connectionType |
string | true | User connection status. Possible values are:
Pending - is the status for those users who have not yet accepted an invitation to connect to the Business Account. |
accountsAccessLevel |
string | true | Identifies the level of account access the User granted to the business. Possible values are: 0 - Read numbers 1 - Read balances 2 - Read all 3 - Full control When inviting the users, you can pass one of these numbers as a value to the |
accountsSharedByDefault |
boolean | true | Identifies if the User is configured to share newly added accounts by default with the Business Account |
editConnectionUrl |
string | true | URL address of the page where business administrator can manage the connection settings with this user. |
accountListUrl |
string | true | URL address of the page where business administrator can see all of the loyalty accounts shared by the user with the business account. |
timelineUrl |
string | true | URL address of the page where business administrator can see the travel timeline (i.e. all of their travel reservations) of this connected user. |
bookingRequestsUrl |
string | false | URL address of the page where business administrator can see all the reward booking requests made by the user with the business. |
| array | true | Array of accounts the User has shared with the Business Account. It includes all account details as described below, except the array of History items is limited to the first 10 records. |
User data and array of accounts
Providers
List providers
Response Example
[
{
"code": "aa",
"displayName": "American Airlines (AAdvantage)",
"kind": 1
},
{
"code": "hhonors",
"displayName": "Hilton (HHonors)",
"kind": 2
}
]
The providers/list method gives you all the providers that we support at any given point in time. This list will change over time, so you need to periodically call this method to get any changes.
HTTP Request
GET https://business.awardwallet.com/api/export/v1/providers/list
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
code |
string | true | Alpha-numeric value with no spaces that uniquely identifies any given provider. This code can be used to query all the details of that provider as follows: |
displayName |
string | true | User friendly display name of the provider. Typically includes both the company name and the name of the loyalty program, i.e. American Airlines (AAdvantage). |
kind |
integer | false | Type of the provider. The possible values are: 1 - Airline 2 - Hotel 3 - Car rental 4 - Train 5 - Other 6 - Credit card 7 - Shopping 8 - Dining 9 - Survey |
Supported providers information
Provider info
Response Example
{
"kind": 2,
"code": "marriott",
"displayName": "Marriott Rewards",
"providerName": "Marriott",
"programName": "Marriott Rewards, Ritz-Carlton",
"login": {
"code": "Login",
"title": "Email or Rewards No.",
"options": [
],
"required": true,
"defaultValue": ""
},
"login2": {
"code": "Login2",
"title": "Hotel",
"options": [
{
"code": "",
"name": "Select your hotel",
"kind": "0"
},
{
"code": "marriott",
"name": "Marriott",
"kind": "0"
},
{
"code": "ritz",
"name": "Ritz-Carlton",
"kind": "0"
}
],
"required": true,
"defaultValue": ""
},
"login3": {
"code": "Login3",
"options": [
],
"required": false,
"defaultValue": ""
},
"password": {
"code": "Password",
"options": [
],
"required": true,
"defaultValue": ""
},
"properties": [
{
"code": "Name",
"name": "Name",
"kind": "12"
},
{
"code": "Number",
"name": "Rewards #",
"kind": "1"
},
{
"code": "Level",
"name": "Membership Level",
"kind": "3"
},
{
"code": "Nights",
"name": "Nights this year",
"kind": "8"
},
{
"code": "LastActivity",
"name": "Last qualifying activity",
"kind": "13"
},
{
"code": "YearBegins",
"name": "Beginning of the Year",
"kind": "0"
},
{
"code": "PointsValue",
"name": "Points Value",
"kind": "0"
},
{
"code": "ExpirationDate",
"name": "Expiration Date",
"kind": "2"
}
],
"autoLogin": true,
"deepLinking": true,
"canCheckConfirmation": true,
"canCheckItinerary": true,
"canCheckExpiration": 1,
"confirmationNumberFields": [
{
"code": "RecordLocator",
"title": "Confirmation #",
"required": true,
"defaultValue": ""
},
{
"code": "FirstName",
"title": "First Name",
"required": true,
"defaultValue": ""
},
{
"code": "LastName",
"title": "Last Name",
"required": true,
"defaultValue": ""
},
{
"code": "CheckInDate",
"title": "Check In Date",
"required": true,
"defaultValue": ""
}
],
"historyColumns": [
{
"code": "Info",
"name": "Type",
"kind": "0"
},
{
"code": "PostingDate",
"name": "Date Posted",
"kind": "0"
},
{
"code": "Description",
"name": "Description",
"kind": "0"
},
{
"code": "Miles",
"name": "Points earned",
"kind": "0"
},
{
"code": "Info",
"name": "Actions",
"kind": "0"
},
{
"code": "Bonus",
"name": "Bonus points earned",
"kind": "0"
}
],
"eliteLevelsCount": 4,
"canParseHistory": true,
"canParseFiles": false
}
This method gives you all the details that you need to know about a given provider. For instance, this method will tell you what information you need to request from your users in order to update a given account and it also tells you what to expect in return once that account is updated. It tells you what features are supported for a given provider, such as if we support retrieving account history or travel reservations from that provider.
HTTP Request
GET https://business.awardwallet.com/api/export/v1/providers/{code}
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| code | string | true | Alpha-numeric value with no spaces that uniquely identifies any given provider. Can be retrieved from the |
Response
| Parameter | Type | Required | Description |
|---|---|---|---|
kind |
integer | false | Type of the provider. The possible values are: 1 - Airline 2 - Hotel 3 - Car rental 4 - Train 5 - Other 6 - Credit card 7 - Shopping 8 - Dining 9 - Survey |
code |
string | false | Alpha-numeric value with no spaces that uniquely identifies any given provider. |
displayName |
string | false | User friendly display name of the provider. Typically includes both the company name and the name of the loyalty program, i.e. American Airlines (AAdvantage). |
providerName |
string | false | Provider company name, i.e. "American Airlines". |
programName |
string | false | Loyalty program name, i.e. "AAdvantage". |
| object | false | An array describing the login field of that provider. You can use this data to build your UI. For example, |
|
| object | false | An array describing the login2 field of that provider (whenever applicable). A common example would be a drop down list of countries that we support. For example, for BestBuy we may support the USA and the Canada regions (completely different websites). |
|
| object | false | Similar in concept to |
|
| object | false | The password field caption you can use in your interface, i.e. Password, PIN, etc. |
|
| array | false | The array of account properties (secondary attributes) that we may gather from the account on top of the account balance. |
|
autoLogin |
boolean | false | Tells you if our server-side auto login is supported for this provider. Unfortunately, you can’t rely on this attribute 100% as first of all it may change without us detecting it and second it may work in some browsers but not in others. |
deepLinking |
boolean | false | Deep linking is an auto-login to a specific URL on the provider’s website. Similarly, to the |
canCheckConfirmation |
boolean | false | Tells you if we are able to retrieve travel itineraries from this provider using a confirmation number |
canCheckItinerary |
boolean | false | Tells you if we support retrieving travel reservations from this provider. |
canCheckExpiration |
integer | false | Tells you if we support retrieving the expiration dates for accounts that belong to this provider. Possible values are: 0 - No 1 - Yes 2 - Balance never expires |
| array | false | Array of fields that are required to retrieve itineraries by confirmation number |
|
| array | false | Array of columns that you can expect in return for account history. Empty, if provider does not support history parsing. |
|
eliteLevelsCount |
integer | false | The total number of elite statuses this provider has. Can be used in calculating elite status progress to the highest level. |
canParseHistory |
boolean | false | Tells you if we support retrieving historical account transactions for accounts belonging to this provider. |
canParseFiles |
boolean | false | Tells you if we support retrieving account statements in a pdf (or similar) format. |
Supported provider definition
Input
| Parameter | Type | Required | Description |
|---|---|---|---|
code |
string | false | Field code is used by developers to identify the type of this field, i.e. “Login” |
title |
string | false | Field title is a user-friendly name of the field that you can show as a caption in your UI. |
| array | false | If there is a limited set of values that can go into this field, those options would be listed in this array. Use this array to create a drop down list in your UI. |
|
required |
boolean | false | Even if the |
defaultValue |
string | false | The default value that we expect for this field. |
PropertyInfo
| Parameter | Type | Required | Description |
|---|---|---|---|
code |
string | false | Property code name – unique within a single provider. Can only have English numbers and letters with no spaces. |
name |
string | false | User friendly name of the property such as “Account number”. You can display this to your end users. |
kind |
string | false | Type of property, the possible values are: 0 - Basic property 1 - Account number 2 - Expiration 3 - Elite Status 4 - Lifetime points 5 - Member since 6 - Expiring balance (in some cases only a portion of the entire balance may expire) 7 - Points / miles earned year-to-date (YTD). 8 - Segments earned year-to-date (YTD). 9 - Next elite level 10 - Points / miles needed to get to the next elite level 11 - Flights / nights needed to get to the next elite level. 12 - Name of the account holder, as listed on the account. 13 - Date of the last account activity. 14 - Points / miles needed to get the next reward 15 - Elite level expiration date 16 - Points / miles needed to retain the current elite level 17 - Segments / flights needed to retain the current elite level |
Itineraries
Flight
Example
{
"itineraries": [
{
"travelAgency": {
"providerInfo": {
"code": "expedia",
"name": "Expedia.com",
"accountNumbers": [
{
"number": "EXP-11298",
"masked": false
}
],
"earnedRewards": "1 booking"
},
"confirmationNumbers": [
{
"number": "J3HND-8776",
"description": "Trip Locator",
"isPrimary": true
},
{
"number": "88376495",
"description": "Booking ID",
"isPrimary": false
}
],
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-44-EXPEDIA"
}
]
},
"pricingInfo": {
"total": 150,
"cost": 100,
"discount": 28.34,
"spentAwards": "3 segments",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 30
},
{
"name": "Seat selection",
"charge": 5.5
},
{
"name": "Baggage fee",
"charge": 14.5
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "delta",
"name": "Delta Air Lines",
"accountNumbers": [
{
"number": "1234****",
"masked": true
},
{
"number": "4321****",
"masked": true
}
],
"earnedRewards": "300 award miles"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "Transfer shuttle will be located at the terminal exit",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"travelers": [
{
"name": "John Doe",
"full": true,
"accountNumbers": [
{
"number": "1234****",
"masked": true
}
],
"ticketNumbers": [
{
"number": "006 123321",
"masked": false
}
],
"seats": [
{
"seatNumber": "3E",
"segmentNumber": 0
},
{
"seatNumber": "1B",
"segmentNumber": 1
}
]
},
{
"name": "Jane Doe",
"full": true,
"accountNumbers": [
{
"number": "4321****",
"masked": true
}
],
"ticketNumbers": [
{
"number": "006 456654",
"masked": false
}
],
"seats": [
{
"seatNumber": "3F",
"segmentNumber": 0
},
{
"seatNumber": "1C",
"segmentNumber": 1
}
]
}
],
"segments": [
{
"departure": {
"airportCode": "LAX",
"terminal": "A",
"name": "Los Angeles International Airport",
"localDateTime": "2030-01-01T13:30:00",
"address": {
"text": "LAX",
"addressLine": "1 World Way",
"city": "Los Angeles",
"stateName": "California",
"countryName": "United States",
"countryCode": "US",
"postalCode": "90045",
"lat": 33.9415889,
"lng": -118.40853,
"timezone": -25200,
"timezoneId": "America/Los_Angeles"
}
},
"arrival": {
"airportCode": "SFO",
"terminal": "2",
"name": "San Francisco International Airport",
"localDateTime": "2030-01-01T15:00:00",
"address": {
"text": "SFO",
"addressLine": "San Francisco International Airport",
"city": "San Francisco",
"stateName": "California",
"countryName": "United States",
"countryCode": "US",
"postalCode": "94128",
"lat": 37.615215,
"lng": -122.389881,
"timezone": -25200,
"timezoneId": "America/Los_Angeles"
}
},
"marketingCarrier": {
"airline": {
"name": "Delta Air Lines",
"iata": "DL",
"icao": "DAL"
},
"flightNumber": "0013",
"confirmationNumber": "MRTG67",
"phoneNumbers": [
{
"description": null,
"number": "+1-404-714-2300"
}
],
"isCodeshare": true
},
"operatingCarrier": {
"airline": {
"name": "British Airways",
"iata": "BA",
"icao": "BAW"
},
"flightNumber": "5566",
"confirmationNumber": "CARR23",
"phoneNumbers": [
{
"description": null,
"number": "+1-718-335-7070"
}
]
},
"wetleaseCarrier": {
"name": "Sky Express",
"iata": null,
"icao": null
},
"seats": [
"3E",
"3F"
],
"aircraft": {
"iataCode": "7M7",
"name": "Boeing 737MAX 7 Passenger",
"turboProp": false,
"jet": true,
"wideBody": false,
"regional": false,
"registrationNumber": "N345DL"
},
"traveledMiles": "300mi",
"cabin": "Coach",
"bookingCode": "CL",
"duration": "1h30min",
"meal": "Snacks",
"smoking": false,
"status": "Confirmed",
"stops": 0,
"flightStatsMethodUsed": "ScheduleByFlight"
},
{
"departure": {
"airportCode": "SFO",
"terminal": "2",
"name": "San Francisco International Airport",
"localDateTime": "2030-01-05T06:00:00",
"address": {
"text": "SFO",
"addressLine": "San Francisco International Airport",
"city": "San Francisco",
"stateName": "California",
"countryName": "United States",
"countryCode": "US",
"postalCode": "94128",
"lat": 37.615215,
"lng": -122.389881,
"timezone": -25200,
"timezoneId": "America/Los_Angeles"
}
},
"arrival": {
"airportCode": "LAX",
"terminal": "A",
"name": "Los Angeles International Airport",
"localDateTime": "2030-01-05T07:30:00",
"address": {
"text": "LAX",
"addressLine": "1 World Way",
"city": "Los Angeles",
"stateName": "California",
"countryName": "United States",
"countryCode": "US",
"postalCode": "90045",
"lat": 33.9415889,
"lng": -118.40853,
"timezone": -25200,
"timezoneId": "America/Los_Angeles"
}
},
"marketingCarrier": {
"airline": {
"name": "Delta Air Lines",
"iata": "DL",
"icao": "DAL"
},
"flightNumber": "0014",
"confirmationNumber": "MRTG67",
"phoneNumbers": [
{
"description": null,
"number": "+1-404-714-2300"
}
],
"isCodeshare": true
},
"operatingCarrier": {
"airline": {
"name": "British Airways",
"iata": "BA",
"icao": "BAW"
},
"flightNumber": "9009",
"confirmationNumber": "CARR23",
"phoneNumbers": [
{
"description": "Contact phone number",
"number": "+1-718-335-7070"
}
]
},
"wetleaseCarrier": null,
"seats": [
"1B",
"1C"
],
"aircraft": {
"iataCode": "7M7",
"name": "Boeing 737MAX 7 Passenger",
"turboProp": false,
"jet": true,
"wideBody": false,
"regional": false,
"registrationNumber": "N345DL"
},
"traveledMiles": "300mi",
"cabin": "First class",
"bookingCode": "I",
"duration": "1h30min",
"meal": "Snacks",
"smoking": false,
"status": "Confirmed",
"stops": 0,
"flightStatsMethodUsed": "ScheduleByAirport"
}
],
"nonCommercial": false,
"issuingCarrier": {
"airline": {
"name": "Delta Air Lines",
"iata": "DL",
"icao": "DAL"
},
"confirmationNumber": "ISSD12",
"phoneNumbers": [
{
"description": "Contact phone number",
"number": "+1-404-714-2300"
}
],
"ticketNumbers": [
{
"number": "006 123321",
"masked": false
},
{
"number": "006 456654",
"masked": false
}
]
},
"type": "flight"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
type |
string | true | Type of reservation. Value: |
| array | false | Names of the people listed on the reservation |
|
| array | true | An array describing individual flight segments of the itinerary. |
|
| object | false | Object that defines the airline that issued the ticket, could be the same as the |
|
nonCommercial |
boolean | false | It will be set to |
Issuing Carrier
Any air ticket is always issued by some airline, this object defines the airline that actually issued the ticket.
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | Object describing the airline that issued the ticket. |
|
confirmationNumber |
string | false | PNR which corresponds to the airline that issued the ticket. |
| array | false | If there are multiple travelers, all their ticket numbers will be listed in this array. However, if we can link ticket numbers to travelers' names from the email, these ticket numbers will also be available in the |
|
| array | false | Contact phone numbers |
Flight Segment
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | true | An object describing the departure event such as the departing airport (code, name, address, etc.) as well as the time of the departure. |
|
| object | true | An object describing the arrival event such as the arriving airport (code, name, address, etc.) as well as the time of the arrival. |
|
| object | true | Object that defines the flight as it was ticketed. In other words, this is the information that the users would see on their ticket or boarding pass. |
|
| object | false | If an email contains information about an “operating airline” that is different from the airline listed under the |
|
| object | false | Wet lease airline is an airline that is DBA (doing business as) the operating airline. It wouldn’t have its own flight number or ticket numbers or confirmation numbers but you may see the wet lease airline listed on the ticket as “ExpressJet” or “KLM Cityhopper”, etc. |
|
seats |
array | false | Assigned passenger seats. Please note that if there are multiple travelers and we are able to link their seat numbers to their names from the email, you can grab the seat numbers from the |
| array | false | Seat locations |
|
| object | false | Object defining the aircraft. |
|
traveledMiles |
string | false | Number of miles traveled on this flight segment, as we gathered it from the provider's website. |
calculatedTraveledMiles |
integer | false | Estimated number of miles traveled on this flight segment, calculated based on the destination and arrival airports |
cabin |
string | false | Cabin class, i.e. “Economy” |
bookingCode |
string | false | Booking class code, i.e. “T” |
duration |
string | false | Flight duration, as a string, as we gathered it from the provider’s website. Don’t expect to be able to use it programmatically to add or subtract time without some type of transformation on your end that would be specific to each provider. |
calculatedDuration |
integer | false | Flight duration in minutes, calculated based on the departure and arrival times |
status |
string | false | Status of the segment. I.e. cancelled, confirmed, etc. |
cancelled |
boolean | false | Will be set to “true” if this flight was canceled |
meal |
string | false | Meal, if any, that will be offered on the flight. |
smoking |
boolean | false | Most flights nowadays are non-smoking; however, in case if the airline identifies the flight as a smoking flight it would be identified in this field. |
stops |
integer | false | Number of stops this flight has. |
flightStatsMethodUsed |
string | false | If FlightStats API was called to retrieve some missing files that are not present in the email and are required for this flight segment the name of the FlightStats API call will be returned in this field. The possible values are:
|
Aircraft
| Parameter | Type | Required | Description |
|---|---|---|---|
iataCode |
string | false | Aircraft IATA code |
name |
string | true | Aircraft name |
turboProp |
boolean | false | Indicates if this is a turboprop aircraft |
jet |
boolean | false | Indicates if this is a jet engine aircraft |
wideBody |
boolean | false | Indicates if this is a wide-body aircraft |
regional |
boolean | false | Indicates if this is a regional aircraft |
registrationNumber |
string | false | Registration number of the aircraft |
SeatType
| Parameter | Type | Required | Description |
|---|---|---|---|
seat |
string | false | Seat number |
type |
string | false | Location of the seat. Possible values are |
Operating Carrier
Whenever the operating airline is different from the airline listed on the ticket (next to the flight number), that operating airline flight info would be listed in this object as the operating carrier. Don’t confuse this with a wet lease airline.
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | Object describing the operating airline if this airline is different from the one that was listed on the passenger’s ticket. |
|
flightNumber |
string | false | Operating airline flight number |
confirmationNumber |
string | false | PNR issued by the operating airline, in most cases will be unknown, i.e. |
| array | false | Contact phone numbers |
Marketing Carrier
The flight and airline information as it shows up on the ticket.
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | true | Object describing the airline that is listed on the ticket, sometimes it is the 2 letter prefix that goes before the flight number as listed on the issued ticket. |
|
flightNumber |
string | true | Flight number that is listed on the passenger’s ticket. |
confirmationNumber |
string | false | Passenger name record, a.k.a. PNR that is associated with the airline the passenger was ticketed for. |
| array | false | Airline phone numbers as shown in the email or the number(s) could be populated by AwardWallet automatically based on the airline even if the numbers were not present in the email. |
|
isCodeshare |
boolean | false | If this is a codeshare flight and we know the actual operating airline, we would set this attribute to |
Airline
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | true | Airline name |
iata |
string | false | IATA code of the airline |
icao |
string | false | International Civil Aviation Organization airline code. |
Flight Departure or Arrival
This object is describing the arrival or departure events of air travel.
| Parameter | Type | Required | Description |
|---|---|---|---|
airportCode |
string | true | If this location happened to be an airport this field will return a Validated IATA airport code. |
terminal |
string | false | In cases when terminal is known it will be returned in this field. |
name |
string | true | Train station name or airport name such as “John F. Kennedy International Airport”. |
localDateTime |
string | true | Local date and time of arrival or departure (depending on the type of this location). |
| object | true | Object defining the address of this location. |
Address
| Parameter | Type | Required | Description |
|---|---|---|---|
text |
string | true | Non-validated address string. You can usually use this line to search some API (i.e. Google API) to get detailed / structured information about that address. We usually just grab this text as-is from the provider’s website. |
addressLine |
string | false | Validated address line of the address (without the city, state, country and zip code) that we got from either Google API or another authoritative source. |
city |
string | false | Name of the city validated either by Google API or another authoritative source |
stateName |
string | false | Name of the state validated either by Google API or another authoritative source |
countryName |
string | false | Name of the country validated either by Google API or another authoritative source |
countryCode |
string | false | 2 letter country code validated either by Google API or another authoritative source |
postalCode |
string | false | Zip / postal code validated either by Google API or another authoritative source |
lat |
number | false | Latitude coordinate of the address |
lng |
number | false | Longitude coordinate of the address |
timezone |
integer | false | Time zone in which this address is located. |
timezoneId |
string | false | Name of the time zone |
Person
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | true | Name of the person listed on the reservation. |
full |
boolean | false | Sometimes passenger or guest names are shortened on the reservation, if we are able to detect it, this field will reflect that. It will be set to |
type |
string | false | If this passenger is an infant, we will return |
| array | false | Sometimes, especially when there are multiple travelers, we are able to associate their account numbers with their names. In this case, you can find account numbers linked to each traveler in this attribute. Otherwise, you should check |
|
| array | false | Sometimes, especially when there are multiple travelers, we are able to associate their ticket numbers with their names. In this case, ticket numbers are linked to each traveler via this attribute. Otherwise, you should check |
|
| array | false | Sometimes, we are able to associate individual travelers' seat numbers with their names, especially when there are multiple travelers. In this case, seat numbers are linked to each traveler via this attribute. Otherwise, you should check |
NumberedSeat
Seat number
| Parameter | Type | Required | Description |
|---|---|---|---|
seatNumber |
string | false | Seat number |
segmentNumber |
integer | false | If the parsed itinerary has multiple segments and the travelers have different seats on each segment, this number will tell which segment the seat is associated with. Please note, that the very first segment will be identified as zero, not one. |
seatType |
string | false | Location of the seat. Possible values are |
Pricing Info
| Parameter | Type | Required | Description |
|---|---|---|---|
total |
number | false | Total cost of the reservation including all taxes and fees. |
cost |
number | false | Cost of the reservation before taxes. |
discount |
number | false | Total amount of discounts, if any. |
spentAwards |
string | false | Frequent flier miles, points, or other kinds or bonuses spent on this reservation. |
currencyCode |
string | false | Currency code as gathered from the website. I.e. |
| array | false | Various fees associated with the reservation. |
Fee
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | true | Fee description. |
charge |
number | true | Fee amount. |
Travel Agency
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | This object describes the travel agency, specifically the loyalty information as it pertains to this travel agency. |
|
| array | false | Confirmation numbers that were assigned to this trip by the travel agency. Different from the PNRs assigned by the airline. |
|
| array | false | Phone numbers of the travel agency. |
Phone Number
| Parameter | Type | Required | Description |
|---|---|---|---|
description |
string | false | Description of the phone number. |
number |
string | true | Phone number |
Confirmation Numbers
| Parameter | Type | Required | Description |
|---|---|---|---|
number |
string | true | Confirmation number |
description |
string | false | Confirmation number description |
isPrimary |
boolean | false | Indicates whether this confirmation number can be considered as primary |
Provider Info
If there is a loyalty program associated with this reservation, the details specific to that program will be listed in this object.
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | false | Loyalty program name |
code |
string | false | Alpha-numeric value with no spaces that uniquely identifies any given loyalty program within AwardWallet. |
| array | false | An array of related loyalty program account numbers. Please note that if there are multiple travelers and we are able to link their loyalty program account numbers to their names from the email, you can grab them from the |
|
earnedRewards |
string | false | Rewards earned for booking the reservation |
Number
This object represents a ticket or an account number.
| Parameter | Type | Required | Description |
|---|---|---|---|
number |
string | true | Number as it was parsed from the email |
masked |
boolean | true | Will be set to |
description |
string | false | This attribute describes the number, usually identifying the associated loyalty program or airline. Note that this data is unstructured and is extracted directly from the email as-is. |
Car Rental
Rental car reservation
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 251.41,
"cost": 193.75,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 34.56
},
{
"name": "Insurance",
"charge": 23.1
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "avis",
"name": "Avis",
"accountNumbers": [
{
"number": "AVS454545",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "$50 penalty if cancelled",
"notes": "Make a note of any damages before leaving the pickup area",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "1122334455",
"description": "Confirmation number",
"isPrimary": true
},
{
"number": "887756",
"description": "Reference",
"isPrimary": false
}
],
"pickup": {
"address": {
"text": "Palm Beach Intl Airport,PBI, 2500 Turnage Boulevard, West Palm Beach, FL 33406 US",
"addressLine": "1000 James L Turnage Boulevard",
"city": "West Palm Beach",
"stateName": "Florida",
"countryName": "United States",
"countryCode": "US",
"postalCode": "33415",
"lat": 26.6857475,
"lng": -80.0928165,
"timezone": -14400,
"timezoneId": "America/New_York"
},
"localDateTime": "2030-01-01T13:30:00",
"openingHours": "Sun - Sat open 24 hrs",
"phone": "+1-13-PICKUP",
"fax": "+1-14-FAX"
},
"dropoff": {
"address": {
"text": "Palm Beach Intl Airport,PBI, 2500 Turnage Boulevard, West Palm Beach, FL 33406 US",
"addressLine": "1000 James L Turnage Boulevard",
"city": "West Palm Beach",
"stateName": "Florida",
"countryName": "United States",
"countryCode": "US",
"postalCode": "33415",
"lat": 26.6857475,
"lng": -80.0928165,
"timezone": -14400,
"timezoneId": "America/New_York"
},
"localDateTime": "2030-01-05T13:30:00",
"openingHours": "Sun - Sat open 24 hrs",
"phone": "+1-13-DROPOFF",
"fax": "+1-14-FAX"
},
"car": {
"type": "Regular",
"model": "Ford Edge or similar",
"imageUrl": "http://car.image/url"
},
"discounts": null,
"driver": {
"name": "John Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
},
"pricedEquipment": null,
"rentalCompany": null,
"type": "carRental"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
type |
string | true | Type of reservation. Value: |
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| object | true | Object defining the pickup event (time and location) of the rental car. |
|
| object | true | Object defining the dropoff event (time and location) of the rental car. |
|
| object | false | Object defining the rental car. |
|
| array | false | An array of various discounts that were applied to the reservation. |
|
| object | false | Object describing the driver of the car. |
|
| array | false | An array of additional equipment that was added to the reservation. |
|
rentalCompany |
string | false | Name of the rental company. |
Car Rental Discount
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | true | Discount name, such as “Your Rate has been discounted based on the Hertz CDP provided”. |
code |
string | true | Discount code, such as “AAA SOUTHERN NEW ENGLAND” |
Car
| Parameter | Type | Required | Description |
|---|---|---|---|
type |
string | false | Type of the rental car, i.e. “Intermediate SUV”. |
model |
string | false | Model of the rental car, i.e. “Ford Escape or similar”. |
imageUrl |
string | false | URL of the image of the car. |
Car Rental Location
Pickup or drop off location of the rental car.
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | true | Rental car facility address. |
|
localDateTime |
string | true | Scheduled date and time of the car pickup or drop-off in the time zone of the location of the rental car facility. |
openingHours |
string | false | Rental car facility hours of operation. |
phone |
string | false | Rental car facility phone number. |
fax |
string | false | Rental car facility fax number. |
Hotel Reservation
Hotel reservation
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 300,
"cost": 200,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 100
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "spg",
"name": "Starwood Hotels",
"accountNumbers": [
{
"number": "xxxxxx345",
"masked": true
}
],
"earnedRewards": "4 nights"
},
"cancelled": false,
"cancellationPolicy": "Cancellation is free 24 hours prior to check-in",
"cancellationDeadline": "2029-12-31T13:30:00",
"isNonRefundable": null,
"notes": "Use the secondary entrance if you're carrying large luggage",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "1122334455",
"description": "Confirmation number",
"isPrimary": true
},
{
"number": "887756",
"description": "Reference",
"isPrimary": false
}
],
"hotelName": "Sheraton Philadelphia Downtown Hotel",
"chainName": null,
"address": {
"text": "201 North 17th Street, Philadelphia, Pennsylvania 19103 United States",
"addressLine": "201 North 17th Street",
"city": "Philadelphia",
"stateName": "Pennsylvania",
"countryName": "United States",
"countryCode": "US",
"postalCode": "19103",
"lat": 39.9569828,
"lng": -75.1674669,
"timezone": -14400,
"timezoneId": "America/New_York"
},
"checkInDate": "2030-01-01T13:30:00",
"checkOutDate": "2030-01-05T12:00:00",
"phone": "+1-22-3333",
"fax": "+1-66-77899",
"guests": [
{
"name": "John D.",
"full": false,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
},
{
"name": "Jane D.",
"full": false,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
}
],
"guestCount": 2,
"kidsCount": 3,
"roomsCount": 1,
"rooms": [
{
"type": "King bed",
"description": "Traditional, TV, free wi-fi",
"rate": "30$/night",
"rateType": "King bed"
}
],
"type": "hotelReservation"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
cancellationNumber |
string | false | Cancellation number if the reservation has been cancelled |
cancellationDeadline |
string | false | Deadline date for changing or cancelling the reservation without additional penalties |
isNonRefundable |
boolean | false | Set to |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
type |
string | true | Type of reservation. Value: |
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
hotelName |
string | true | Name of the hotel, i.e. “Hilton Garden Inn Atlanta Perimeter Center” |
chainName |
string | false | Name of the hotel chain. |
| object | true | An object describing all the details of the address of the hotel. |
|
checkInDate |
string | true | Check-in date. |
checkOutDate |
string | true | Check-out date. |
phone |
string | false | Hotel’s phone number. |
fax |
string | false | Hotel’s fax number. |
| array | false | An array describing guests that are listed on the reservation. |
|
guestCount |
integer | false | Number of guests on the reservation. |
kidsCount |
integer | false | Number of kids listed on the reservation. |
roomsCount |
integer | false | Number of rooms listed on the reservation. |
| array | false | An array describing the room(s) listed on the reservation. |
|
freeNights |
integer | false | Number of free nights obtained via a certificate or a promo |
Room
| Parameter | Type | Required | Description |
|---|---|---|---|
type |
string | false | Room type, i.e. “2 QUEEN BEDS NONSMOKING” |
description |
string | false | Room description, i.e. “Non-Smoking Room Confirmed” |
rate |
string | false | Room rate per night. |
rateType |
string | false | Room rate type, i.e. “2 QUEEN BEDS NONSMOKING”. |
Bus
Bus ride
Example
{
"itineraries": [
{
"travelAgency": {
"providerInfo": {
"code": "expedia",
"name": "Expedia.com",
"accountNumbers": [
{
"number": "EXP-11298",
"masked": false
}
],
"earnedRewards": "1 booking"
},
"confirmationNumbers": [
{
"number": "J3HND-8776",
"description": "Trip Locator",
"isPrimary": true
},
{
"number": "88376495",
"description": "Booking ID",
"isPrimary": false
}
],
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-44-EXPEDIA"
}
]
},
"pricingInfo": {
"total": 251.41,
"cost": 193.75,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 34.56
},
{
"name": "Insurance",
"charge": 23.1
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "boltbus",
"name": "BoltBus",
"accountNumbers": [
{
"number": "BB3398",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "Keep your ticket at your person at all times",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "A04-33984-12",
"description": "Confirmation #",
"isPrimary": true
},
{
"number": "887756",
"description": "Transaction number",
"isPrimary": false
}
],
"travelers": [
{
"name": "John Doe",
"full": true,
"type": null,
"accountNumbers": [
{
"number": "4321****",
"masked": true
}
],
"ticketNumbers": null,
"seats": null
},
{
"name": "Jane Doe",
"full": true,
"type": "infant",
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
}
],
"segments": [
{
"scheduleNumber": "2023",
"departure": {
"stationCode": "BSS",
"name": "Boston South Station - Gate 9 NYC-Gate 10 NWK\\/PHL",
"localDateTime": "2030-01-01T13:30:00",
"address": {
"text": "Boston South Station - Gate 9 NYC-Gate 10 NWK\\/PHL",
"addressLine": "700 Atlantic Avenue",
"city": "Boston",
"stateName": "Massachusetts",
"countryName": "United States",
"countryCode": "US",
"postalCode": "02111",
"lat": 42.3504505,
"lng": -71.0561242,
"timezone": -14400,
"timezoneId": "America/New_York"
}
},
"arrival": {
"stationCode": "NWW",
"name": "New York W 33rd St & 11-12th Ave (DC,BAL,BOS,PHL)",
"localDateTime": "2030-01-01T20:34:00",
"address": {
"text": "New York W 33rd St & 11-12th Ave (DC,BAL,BOS,PHL)",
"addressLine": null,
"city": null,
"stateName": null,
"countryName": null,
"countryCode": null,
"postalCode": null,
"lat": null,
"lng": null,
"timezone": null,
"timezoneId": null
}
},
"busInfo": {
"type": "Regular",
"model": "Mercedes"
},
"seats": [
"11",
"12"
],
"traveledMiles": "43mi",
"cabin": null,
"bookingCode": null,
"duration": "7h",
"meal": null,
"smoking": null,
"stops": null
}
],
"ticketNumbers": [
{
"number": "345667",
"masked": false
},
{
"number": "345668",
"masked": false
}
],
"type": "bus"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| array | false | Names of the people listed on the reservation |
|
type |
string | true | Type of reservation. Value: |
| array | true | An array describing individual travel segments of the itinerary. |
|
| array | false | There may be different ticket numbers associated with an itinerary. All the ticket numbers that we gather would be presented as an array in this field. However, if we can link ticket numbers to travelers' names from the email, these ticket numbers will also be available in the |
Bus segment
| Parameter | Type | Required | Description |
|---|---|---|---|
scheduleNumber |
string | false | ScheduleNumber is similar in concept to FlightNumber but applicable to Trains or Busses, etc. So it is designed to define a route number for various types of transportation itineraries. |
| object | true | An object describing the departure event of this trip segment, such as a bus stop location and the time of departure. |
|
| object | true | An object describing the arrival event of this trip segment, such as a bus stop location and the time of arrival. |
|
| object | false | And object describing the bus |
|
seats |
array | false | Assigned passenger seats. Please note that if there are multiple travelers and we are able to link their seat numbers to their names from the email, you can grab the seat numbers from the |
traveledMiles |
string | false | Number of miles traveled on this segment. |
cabin |
string | false | Cabin class, i.e. “Economy” |
bookingCode |
string | false | Booking class code, i.e. “SL” for “Sleeper class” booking code. |
duration |
string | false | Trip duration |
meal |
string | false | Meal, if any, that will be offered on the train, ferry, bus, etc. |
smoking |
boolean | false | Most transporation services nowadays are non-smoking; however, in case if the provider identifies the car / train / bus as smoking it would be listed in this field. |
stops |
integer | false | Number of stops this transportation segment has. |
Vehicle
This object describes the vehicle used to trasport a passenger
| Parameter | Type | Required | Description |
|---|---|---|---|
type |
string | false | Short description |
model |
string | false | Model of the vehicle |
Transportation Departure or Arrival
This object describes the transportation departure and arrival events
| Parameter | Type | Required | Description |
|---|---|---|---|
stationCode |
string | false | This attribute shows the bus station or train station or port code as it shows up on the email. This field is not validated. |
name |
string | true | Station or location name |
localDateTime |
string | true | Local date and time of arrival or departure (depending on the type of this location). |
| object | true | Object defining the address of this location. |
Train
Train ride
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 251.41,
"cost": 193.75,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 34.56
},
{
"name": "Insurance",
"charge": 23.1
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "amtrak",
"name": "Amtrak",
"accountNumbers": [
{
"number": "AM3398",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "Taxi will be waiting for you in the parking area",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "A04-33984-12",
"description": "Confirmation #",
"isPrimary": true
},
{
"number": "887756",
"description": "Transaction number",
"isPrimary": false
}
],
"travelers": [
{
"name": "John Doe",
"full": true,
"type": null,
"accountNumbers": [
{
"number": "AM3398",
"masked": false
}
],
"ticketNumbers": [
{
"number": "345667",
"masked": false
}
],
"seats": null
},
{
"name": "Jane Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": [
{
"number": "345668",
"masked": false
}
],
"seats": null
}
],
"segments": [
{
"departure": {
"stationCode": "BBSS",
"name": "Boston South Station - Gate 9 NYC-Gate 10 NWK\\/PHL",
"localDateTime": "2030-01-01T13:30:00",
"address": {
"text": "Boston South Station - Gate 9 NYC-Gate 10 NWK\\/PHL",
"addressLine": "700 Atlantic Avenue",
"city": "Boston",
"stateName": "Massachusetts",
"countryName": "United States",
"countryCode": "US",
"postalCode": "02111",
"lat": 42.3504505,
"lng": -71.0561242,
"timezone": -14400,
"timezoneId": "America/New_York"
}
},
"arrival": {
"stationCode": "NNYW",
"name": "New York W 33rd St & 11-12th Ave (DC,BAL,BOS,PHL)",
"localDateTime": "2030-01-01T20:34:00",
"address": {
"text": "New York W 33rd St & 11-12th Ave (DC,BAL,BOS,PHL)",
"addressLine": null,
"city": null,
"stateName": null,
"countryName": null,
"countryCode": null,
"postalCode": null,
"lat": null,
"lng": null,
"timezone": null,
"timezoneId": null
}
},
"scheduleNumber": "2023",
"serviceName": "Amtrak Express",
"trainInfo": {
"type": "Regular",
"model": null
},
"car": "4",
"seats": [
"11",
"12"
],
"traveledMiles": "43mi",
"cabin": "coach",
"bookingCode": null,
"duration": "7h",
"meal": null,
"smoking": null,
"stops": null
}
],
"ticketNumbers": [
{
"number": "345667",
"masked": false
},
{
"number": "345668",
"masked": false
}
],
"type": "train"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| array | false | Names of the people listed on the reservation |
|
type |
string | true | Type of reservation. Value: |
| array | true | An array describing individual travel segments of the itinerary. |
|
| array | false | There may be different ticket numbers associated with an itinerary. All the ticket numbers that we gather would be presented as an array in this field. However, if we can link ticket numbers to travelers' names from the email, these ticket numbers will also be available in the |
Train segment
| Parameter | Type | Required | Description |
|---|---|---|---|
scheduleNumber |
string | false | ScheduleNumber is similar in concept to FlightNumber but applicable to Trains or Busses, etc. So it is designed to define a route number for various types of transportation itineraries. |
| object | true | An object describing the departure event of this trip segment, such as a train station and the time of departure. |
|
| object | true | An object describing the arrival event of this trip segment, such as a train station and the time of arrival. |
|
serviceName |
string | false | Short name of the particular service or route |
| object | false | And object describing the train |
|
car |
string | false | Train car number. |
seats |
array | false | Assigned passenger seats in a car. Please note that if there are multiple travelers and we are able to link their seat numbers to their names from the email, you can grab the seat numbers from the |
| array | false | Seat locations |
|
traveledMiles |
string | false | Number of miles traveled on this segment. |
cabin |
string | false | Cabin class, i.e. “Economy” |
bookingCode |
string | false | Booking class code, i.e. “SL” for “Sleeper class” booking code. |
duration |
string | false | Trip duration |
meal |
string | false | Meal, if any, that will be offered on the train, ferry, bus, etc. |
smoking |
boolean | false | Most transporation services nowadays are non-smoking; however, in case if the provider identifies the car / train / bus as smoking it would be listed in this field. |
stops |
integer | false | Number of stops this transportation segment has. |
| array | false | Array of links to train tickets or boarding passes for this segment |
Link to a ticket or a boarding pass
| Parameter | Type | Required | Description |
|---|---|---|---|
link |
string | false | Link to a downloadable ticket, which is usually a PDF file with a QR code |
name |
string | false | Name of the ticket owner |
Transfer
Car or shuttle bus ride
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 251.41,
"cost": 193.75,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 34.56
},
{
"name": "Insurance",
"charge": 23.1
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "uber",
"name": "Uber.com",
"accountNumbers": [
{
"number": "AM3398",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "You may be asked to provide an ID",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "A04-33984-12",
"description": "Confirmation #",
"isPrimary": true
},
{
"number": "887756",
"description": "Transaction number",
"isPrimary": false
}
],
"travelers": [
{
"name": "John Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
},
{
"name": "Jane Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
}
],
"segments": [
{
"departure": {
"airportCode": "SFO",
"name": "San Francisco International Airport",
"localDateTime": "2030-01-01T13:30:00",
"address": {
"text": "SFO",
"addressLine": "San Francisco International Airport",
"city": "San Francisco",
"stateName": "California",
"countryName": "United States",
"countryCode": "US",
"postalCode": null,
"lat": 37.615215,
"lng": -122.389881,
"timezone": -25200,
"timezoneId": "America/Los_Angeles"
}
},
"arrival": {
"airportCode": null,
"name": "315 Walnut Ave, South San Francisco, CA 94080, USA",
"localDateTime": "2030-01-01T14:34:00",
"address": {
"text": "315 Walnut Ave, South San Francisco, CA 94080, USA",
"addressLine": "315 Walnut Avenue",
"city": "South San Francisco",
"stateName": "California",
"countryName": "United States",
"countryCode": "US",
"postalCode": "94080",
"lat": 37.6569251,
"lng": -122.4143844,
"timezone": -25200,
"timezoneId": "America/Los_Angeles"
}
},
"vehicleInfo": {
"type": "Regular",
"model": "Ford Focus",
"imageUrl": "http://car.image/url"
},
"adults": 1,
"kids": 0,
"traveledMiles": "4.3mi",
"duration": "7h"
}
],
"type": "transfer"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| array | false | Names of the people listed on the reservation |
|
type |
string | true | Type of reservation. Value: |
| array | true | An array describing individual travel segments of the itinerary. |
Transfer segment
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | true | An object describing the departure event of this trip segment, such as an address or an airport and the time of departure. |
|
| object | true | An object describing the arrival event of this trip segment, such as an address or an airport and the time of arrival. |
|
| object | false | And object describing the vehicle |
|
adults |
integer | false | |
kids |
integer | false | |
traveledMiles |
string | false | Number of miles traveled on this segment. |
duration |
string | false | Trip duration |
Transfer Departure or Arrival
This object describes the transfer departure and arrival events
| Parameter | Type | Required | Description |
|---|---|---|---|
airportCode |
string | false | Iata code of an airport. |
name |
string | true | Location name |
localDateTime |
string | true | Local date and time of arrival or departure (depending on the type of this location). |
| object | true | Object defining the address of this location. |
Cruise
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 251.41,
"cost": 193.75,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 34.56
},
{
"name": "Insurance",
"charge": 23.1
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "disneycruise",
"name": "Disney Cruise Line",
"accountNumbers": [
{
"number": "AM3398",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "Do not forget to check in with the receptionist at the main deck",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "A04-33984-12",
"description": "Confirmation #",
"isPrimary": true
},
{
"number": "887756",
"description": "Transaction number",
"isPrimary": false
}
],
"travelers": [
{
"name": "John Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
},
{
"name": "Jane Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
}
],
"segments": [
{
"departure": {
"stationCode": null,
"name": "PORT CANAVERAL",
"localDateTime": "2030-01-01T13:30:00",
"address": {
"text": "PORT CANAVERAL",
"addressLine": null,
"city": null,
"stateName": null,
"countryName": null,
"countryCode": null,
"postalCode": null,
"lat": null,
"lng": null,
"timezone": null,
"timezoneId": null
}
},
"arrival": {
"stationCode": null,
"name": "NASSAU",
"localDateTime": "2030-01-02T08:00:00",
"address": {
"text": "NASSAU",
"addressLine": null,
"city": null,
"stateName": null,
"countryName": null,
"countryCode": null,
"postalCode": null,
"lat": 25.0479835,
"lng": -77.355413,
"timezone": -14400,
"timezoneId": "America/Nassau"
}
}
},
{
"departure": {
"stationCode": null,
"name": "NASSAU",
"localDateTime": "2030-01-02T12:00:00",
"address": {
"text": "NASSAU",
"addressLine": null,
"city": null,
"stateName": null,
"countryName": null,
"countryCode": null,
"postalCode": null,
"lat": 25.0479835,
"lng": -77.355413,
"timezone": -14400,
"timezoneId": "America/Nassau"
}
},
"arrival": {
"stationCode": null,
"name": "PORT CANAVERAL",
"localDateTime": "2030-01-03T14:00:00",
"address": {
"text": "PORT CANAVERAL",
"addressLine": null,
"city": null,
"stateName": null,
"countryName": null,
"countryCode": null,
"postalCode": null,
"lat": null,
"lng": null,
"timezone": null,
"timezoneId": null
}
}
}
],
"cruiseDetails": {
"description": "Long cruise",
"class": "Regular",
"deck": "3",
"room": "342",
"ship": "Disney Dream",
"shipCode": "SHCD",
"voyageNumber": "K229"
},
"type": "cruise"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
type |
string | true | Type of reservation. Value: |
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| array | false | Names of the people listed on the reservation |
|
| array | true | An array describing individual travel segments of the itinerary. |
|
| object | false | Cruise Details |
Cruise Details
| Parameter | Type | Required | Description |
|---|---|---|---|
description |
string | false | Cruise description, such as “7-Day Eastern Caribbean from Orlando (Port Canaveral)” |
class |
string | false | Room class |
deck |
string | false | Name of the deck, i.e. “The Haven Stateroom” |
room |
string | false | Room number |
ship |
string | false | The name of the ship, i.e. “Norwegian Epic” |
shipCode |
string | false | This is usually a two-letter code that identifies the ship |
voyageNumber |
string | false | Voyage number |
Cruise Segment
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | true | Object describing the departure port |
|
| object | true | Object describing the arrival port |
Event
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 251.41,
"cost": 193.75,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 34.56
},
{
"name": "Insurance",
"charge": 23.1
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "opentable",
"name": "OpenTable.com",
"accountNumbers": [
{
"number": "AM3398",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "Receipt will be available in your mobile application",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "A04-33984-12",
"description": "Confirmation #",
"isPrimary": true
},
{
"number": "887756",
"description": "Transaction number",
"isPrimary": false
}
],
"address": {
"text": "132 West 58th Street New York, NY 10019",
"addressLine": "132 West 58th Street",
"city": "New York",
"stateName": "New York",
"countryName": "United States",
"countryCode": "US",
"postalCode": "10019",
"lat": 40.7653771,
"lng": -73.9779742,
"timezone": -14400,
"timezoneId": "America/New_York"
},
"eventName": "Loi Estiatorio",
"eventType": 1,
"startDateTime": "2030-01-01T18:00:00",
"endDateTime": "2030-01-01T23:00:00",
"phone": "+1-23-44556",
"fax": "+1-99-33434",
"guestCount": 2,
"guests": [
{
"name": "John Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
},
{
"name": "Jane Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
}
],
"seats": [
"table 13"
],
"type": "event"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
type |
string | true | Type of reservation. Value: |
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| object | true | The address of the event. |
|
eventName |
string | true | Event name such as the name of the restaurant. |
eventType |
integer | true | Type of the event. The possible values are: 1 - for “Restaurant” 2 - for “Meeting” 3 - for “Show” 4 - for “Event” 5 - for “Conference” 6 - for “Festival” |
startDateTime |
string | true | Date and time when the event starts. |
endDateTime |
string | false | Date and time when the event ends. |
phone |
string | false | Phone number associated with the event, such as restaurant’s phone number. |
fax |
string | false | Fax number associated with the event, such as show organizer’s fax number. |
guestCount |
integer | false | Number of adult guests participating in the event. |
kidsCount |
integer | false | Number of children participating in the event. |
| array | false | Arrays of guests participating in the event. |
|
seats |
array | false | Array of reserved seats |
Parking
Parking spot reservations (usually for airport long-term parking)
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 105.15,
"cost": 99.12,
"discount": null,
"spentAwards": null,
"currencyCode": "USD",
"fees": [
{
"name": "Taxes",
"charge": 6.03
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "parkingspot",
"name": "The Parking Spot",
"accountNumbers": [
{
"number": "AM3398",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "Look at the overhead signs for directions to the desired spot",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "A04-33984-12",
"description": "Transcation number",
"isPrimary": true
},
{
"number": "887756",
"description": "Invoice number",
"isPrimary": false
}
],
"address": {
"text": "132 West 58th Street New York, NY 10019",
"addressLine": "132 West 58th Street",
"city": "New York",
"stateName": "New York",
"countryName": "United States",
"countryCode": "US",
"postalCode": "10019",
"lat": 40.7653771,
"lng": -73.9779742,
"timezone": -14400,
"timezoneId": "America/New_York"
},
"locationName": "Downtown 2 hr",
"spotNumber": "4",
"licensePlate": "ABC GHY",
"startDateTime": "2030-01-01T18:00:00",
"endDateTime": "2030-01-01T23:00:00",
"phone": "+1-234-56789",
"openingHours": "Sun - Sat open 24 hrs",
"owner": {
"name": "John Doe",
"full": true
},
"rateType": "STANDARD SPOT",
"carDescription": "Volkswagen white",
"type": "parking"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
type |
string | true | Type of reservation. Value: |
| array | false | Reservation confirmation number(s) specific to the parking provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| object | true | The address of the parking location. |
|
locationName |
string | false | Parking location name. |
spotNumber |
string | false | Parking spot number. |
licensePlate |
string | false | Licanse plate. |
startDateTime |
string | true | Parking start date and time. |
endDateTime |
string | true | Parking end date and time. |
phone |
string | false | Parking facility phone number. |
openingHours |
string | false | Parking facility hours of operation. |
| object | false | Car owner's name. |
|
rateType |
string | false | Rate type. |
carDescription |
string | false | Information about the parked vehicle |
Ferry
Example
{
"itineraries": [
{
"travelAgency": null,
"pricingInfo": {
"total": 251.41,
"cost": 193.75,
"discount": 40,
"spentAwards": "10000 points",
"currencyCode": "USD",
"fees": [
{
"name": "Tax",
"charge": 34.56
},
{
"name": "Insurance",
"charge": 23.1
}
]
},
"status": "Confirmed",
"reservationDate": "2000-01-01T00:00:00",
"providerInfo": {
"code": "aferry",
"name": "AFerry",
"accountNumbers": [
{
"number": "AM3398",
"masked": false
}
],
"earnedRewards": "50 points"
},
"cancelled": false,
"cancellationPolicy": "Ticket is non-refundable",
"notes": "Access to your vehicle will be restricted during the trip",
"phoneNumbers": [
{
"description": "Help Desk",
"number": "+1-123-456-7890"
}
],
"confirmationNumbers": [
{
"number": "A04-33984-12",
"description": "Confirmation #",
"isPrimary": true
},
{
"number": "887756",
"description": "Transaction number",
"isPrimary": false
}
],
"travelers": [
{
"name": "John Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
},
{
"name": "Jane Doe",
"full": true,
"type": null,
"accountNumbers": null,
"ticketNumbers": null,
"seats": null
}
],
"segments": [
{
"departure": {
"stationCode": "NO OSL",
"name": "Oslo, Norway",
"localDateTime": "2030-01-01T14:00:00",
"address": {
"text": "Akershusstranda 19, 0102 Oslo, Norway",
"addressLine": "Akershusstranda 19",
"city": "Oslo",
"stateName": null,
"countryName": "Norway",
"countryCode": "NO",
"postalCode": "0102",
"lat": 59.904139,
"lng": 10.738278,
"timezone": null,
"timezoneId": null
}
},
"arrival": {
"stationCode": "DEKEL",
"name": "Kiel, Germany",
"localDateTime": "2030-01-02T10:00:00",
"address": {
"text": "Norwegenkai, 24143 Kiel, Germany",
"addressLine": null,
"city": "Kiel",
"stateName": null,
"countryName": "Germany",
"countryCode": "DE",
"postalCode": null,
"lat": 54.316333,
"lng": 10.138806,
"timezone": null,
"timezoneId": null
}
},
"accommodations": [
"4-Bed inside cabin, shower/WC",
"4-Bed inside cabin, shower/WC"
],
"carrier": "ANEK SUPERFAST",
"vessel": "Hellenic Spirit",
"traveledMiles": "10km",
"duration": "2h",
"meal": "none",
"cabin": "economy",
"smoking": false,
"adultsCount": 2,
"kidsCount": 1,
"pets": "1 cat",
"vehicles": [
{
"type": "Auto",
"model": "Audi",
"length": "<5m",
"height": "1.8",
"width": "1.8-3m"
}
],
"trailers": [
{
"type": "Regular",
"model": "Standard",
"length": "<=2m",
"height": "<=2",
"width": "<=2"
}
]
}
],
"ticketNumbers": [
{
"number": "345667",
"masked": false
},
{
"number": "345668",
"masked": false
}
],
"type": "ferry"
}
]
}
| Parameter | Type | Required | Description |
|---|---|---|---|
| object | false | If this reservation was booked through a travel agency this object would define the properties of that travel agency. |
|
| object | false | An object that describes what was paid for this reservation, i.e. fees, taxes, miles, points, etc. |
|
status |
string | false | Status of the reservation. I.e. cancelled, confirmed, etc. |
reservationDate |
string | false | Date when the reservation was booked |
| object | false | This object describes the provider, specifically the loyalty information as it pertains to this provider. |
|
cancelled |
boolean | false | Indicates whether this itinerary has been cancelled. Cancelled reservations may not contain all required data. |
cancellationPolicy |
string | false | Cancelation policy of this specific reservation. |
notes |
string | false | This field may contain additional information which may be helpful to the traveler. It may include notes from the travel agent, such as meeting or pickup instructions. |
| array | false | Phone numbers related to the itinerary |
|
| array | false | Reservation confirmation number(s) specific to the travel provider. If there are other confirmation numbers specific to a travel agency, those would be listed under the |
|
| array | false | Names of the people listed on the reservation |
|
type |
string | true | Type of reservation. Value: |
| array | true | An array describing individual travel segments of the itinerary. |
|
| array | false | There may be different ticket numbers associated with an itinerary. All the ticket numbers that we gather would be presented as an array in this field. |
Ferry segment
| Parameter | Type | Required | Description |
|---|---|---|---|
carrier |
string | false | The name of the company operating the ferry. |
vessel |
string | false | Name or type of the vessel / ferry. |
| object | true | An object describing the departure event of this trip segment, such as a port and the time of departure. |
|
| object | true | An object describing the arrival event of this trip segment, such as a port and the time of arrival. |
|
adultsCount |
integer | false | Number of adults listed on the reservation. |
kidsCount |
integer | false | Number of kids listed on the reservation. |
pets |
string | false | Information about the pets listed on the ticket. |
accommodations |
array | false | Assigned passenger accommodations on a ferry |
traveledMiles |
string | false | Number of miles traveled on this segment. |
duration |
string | false | Trip duration. |
meal |
string | false | Meal, if any, that will be offered on the ferry. |
cabin |
string | false | Cabin class, i.e. “Economy” |
smoking |
boolean | false | If accomodation is identified as a smoking place it would be identified in this field. |
| array | false | An array describing the vehicle(s) listed on the reservation. |
|
| array | false | An array describing the trailer(s) listed on the reservation. |
Vehicle or Trailer
This object describes a vehicle/trailer
| Parameter | Type | Required | Description |
|---|---|---|---|
type |
string | false | Short description |
model |
string | false | Model of the vehicle/trailer |
length |
string | false | Length of the vehicle/trailer (size description, includes number, e.g. "Less than 6.00 metres") |
height |
string | false | Height of the vehicle/trailer (size description, includes number, e.g. "Less than 1.80 metres") |
width |
string | false | Width of the vehicle/trailer (size description, includes number.) |
Errors
| Error Code | Meaning |
|---|---|
| 400 | Bad Request |
| 401 | Unauthorized – Your API key is wrong |
| 403 | Forbidden |
| 404 | Not Found |
| 405 | Method Not Allowed – You tried to access an API with an invalid method |
| 500 | Internal Server Error – We had a problem with our server. Try again later. |
| 503 | Service Unavailable |