Note: This page has not yet been converted to the new developer portal format. Please use Swagger to test this API.
Itineraries APIs
POST /itineraries/{organizationId}
Description
Add an itinerary.
- Generate the itinerary and expected locations for a non-empty and NOT canceled trip itinerary
- Remove existing itinerary and expected locations for a canceled trip itinerary.
Path Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
organizationId | Yes | The Everbridge Organization ID. | ||
emailCaseSensitiveInExternalId | No | boolean | Yes | Toggle case sensitivity checemailCaseSensitiveInExternalIdk for 'employeeId' during contact matching if the value is a valid email address. Set to 'true' to enforce case sensitivity, 'false' otherwise. |
Request Body
Name: tripItinerary
Type: Object
Content-Type: application/json Required: true
Model: TripItineraryWrapper
Basic Example Value:
{
"pnr": "WSVM7K",
"externalItineraryId": "38842385",
"itineraryStatus": "Active",
"itinerarySource": "TT5 Manual Trip",
"createdDate": "2022-09-22T08:45:00Z",
"lastModifiedDate": "2022-09-22T08:45:00Z",
"segments": [
{
"type": "Air",
"supplierCode": "EY",
"supplierName": "Etihad Airways",
"airRailNumber": "301",
"fromDateTimeLocal": "2022-10-22T08:15:00",
"fromTimeZone": "Asia/Dubai",
"toDateTimeLocal": "2022-10-23T09:05:00",
"toTimeZone": "Asia/Kuwait",
"fromIataCode": "AUH",
"toIataCode": "KWI",
"fromAddress": {
"country": "AE",
"city": "Abu Dhabi",
"latitude": 24.432972,
"longitude": 54.651138
},
"toAddress": {
"country": "KW",
"city": "Kuwait",
"latitude": 29.226567,
"longitude": 47.968928
}
},
{
"type": "Air",
"supplierCode": "EY",
"supplierName": "Etihad Airways",
"airRailNumber": "301",
"fromDateTimeLocal": "2022-10-23T09:40:00",
"fromTimeZone": "Asia/Dubai",
"toDateTimeLocal": "2022-10-23T15:05:00",
"toTimeZone": "Asia/Kuwait",
"fromIataCode": "KWI",
"toIataCode": "YIA",
"fromAddress": {
"country": "KW",
"city": "Kuwait",
"latitude": 24.432972,
"longitude": 54.651138
},
"toAddress": {
"country": "ID",
"city": "Yogyakarta",
"latitude": -7.8981411,
"longitude": 110.0574766
}
},
{
"type": "Hotel",
"supplierCode": "HH",
"supplierName": "Hilton",
"fromDateTimeLocal": "2022-10-23T17:59:59",
"fromDateTime": "2022-10-23T21:59:59Z",
"toDateTimeLocal": "2022-10-23T23:59:00",
"toDateTime": "2022-10-24T03:59:00Z",
"fromTimeZone": "America/New_York",
"toTimeZone": "America/New_York",
"fromAddress": {
"locationName": "Hilton New York Fashion District Hotel",
"country": "US",
"state": "New York",
"city": "New York",
"streetAddress": "152 West 26th Street",
"postalCode": "10001",
"latitude": 40.745529,
"longitude": -73.993713
}
},
{
"type": "Rail",
"supplierCode": "2V",
"supplierName": "Amtrak",
"airRailNumber": "42",
"fromDateTimeLocal": "2022-10-24T13:23:00",
"fromTimeZone": "Europe/Amsterdam",
"toDateTimeLocal": "2022-10-24T16:50:00",
"toTimeZone": "Europe/Amsterdam",
"fromIataCode": "ZYE",
"toIataCode": "ZYA"
},
{
"type": "Car",
"supplierCode": "ET",
"supplierName": "Enterprise",
"fromDateTime": "2022-10-25T08:00:00Z",
"toDateTime": "2022-10-25T11:00:00Z",
"fromIataCode": "DEN",
"toIataCode": "DEN"
}
],
"passengers": [
{
"contactId": 241901148045320,
"employeeId": "E001",
"firstName": "Tom",
"lastName": "Hans",
"middleName": "A",
"emailAddresses": [
"[email protected]",
"[email protected]"
],
"phoneNumbers": [
{
"phoneNumber": "15712345678",
"countryName": "CN"
}
]
}
],
"travelArranger": {
"contactId": 241901148045321,
"employeeId": "E002",
"firstName": "Mike",
"lastName": "Smith",
"middleName": "A",
"emailAddresses": [
"[email protected]",
"[email protected]"
],
"phoneNumbers": [
{
"phoneNumber": "15712348765",
"countryName": "CN"
}
]
}
}
Extended Example Value
Coming Soon
json
Request Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
autoCreateContact | No | boolean | True | Contacts will be created for travelers that do not match the default. |
contactRecordTypeId | No | long | The contact record type ID that will be used when contacts are created for travelers who do not match. |
Response Body
Successful Response
Model: RestfulModificationResult
{
"message": "OK",
"id": 470595271655442,
"baseUri": "https://api-qa1.everbridge.net/rest/itineraries/241901148045320/",
"instanceUri": "https://api-qa1.everbridge.net/rest/itineraries/241901148045320/470595271655442"
}
Error Response
Model: ValidationException
{
"status": 400,
"message": "Travel matching error, no contact matching."
}
Error Messages
Status | Message | Description |
---|---|---|
400 | Travel matching error, no contact matching. | If all travelers cannot be matched to the existing EB contacts or contact creation failed for all travelers. |
400 | The itinerary does not contain any segments | If the itinerary doesn't contain any segments for a non-canceled itinerary. |
400 | All segments of the itinerary are invalid, PNR creation failed | If all segments of the itinerary are invalid for a non-canceled itinerary. |
401 | Invalid credentials: Get User failed | Authentication Error |
POST /itineraries/{organizationId}/batch
Description
Add a batch of itineraries.
- Generate the itineraries and expected locations for non-empty and NOT canceled trip itineraries.
- Remove the itineraries and expected locations for canceled trip itineraries.
Per call limit
The batch creation itinerary API call has the following limitations per call:
- 1,000 itineraries if no contact creation is needed.
- 50 itineraries if contact creation is required.
Path Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
organizationId | Yes | The Everbridge Organization ID. | ||
emailCaseSensitiveInExternalId | No | boolean | Yes | Toggle case sensitivity checemailCaseSensitiveInExternalIdk for 'employeeId' during contact matching if the value is a valid email address. Set to 'true' to enforce case sensitivity, 'false' otherwise. |
Request Body
It is better to include under 100 trip itineraries in the request body if each trip itinerary needs to create a new Everbridge contact to match the passenger’s profile.
Name: tripItineraries
Type: Object
Content-Type: application/json
Required: true
Model: TripItineraryWrapper[]
Basic Example Value:
Coming soon
Request Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
autoCreateContact | No | boolean | True | Contacts will be created for travelers that do not match the default. |
contactRecordTypeId | No | long | The contact record type ID that will be used when contacts are created for travelers who do not match. |
Response Body
All successful
{
"message": "OK",
"code": 100,
"data": [
"241901148045320",
"241901148045321",
"241901148045322"
]
}
Partially successful
{
"message": "OK",
"code": 200,
"data": [
"241901148045320",
"Field pnr is empty.",
"Field segments.type is empty."
]
}
All failed
{
"message": "OK",
"code": 300,
"data": [
"Field segments.fromAddress is empty.",
"Field pnr is empty.",
"Field segments.type is empty."
]
}
Error Messages
Status | Message | Description |
---|---|---|
400 | Travel matching error, no contact matching | If all travelers cannot be matched to the existing EB contacts, or contact creation. |
401 | Invalid credentials: Get User failed | Authentication Error |
PUT /itineraries/{organizationId}/{id}
Description
Update an itinerary.
- Update the itinerary and expected locations for a non-empty and NOT canceled trip itinerary.
- Remove the existing itinerary and expected locations for the canceled trip itinerary.
Path Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
organizationId | Yes | The Everbridge Organization ID. | ||
id | The Itinerary ID (The Travel Plan ID). |
Request Body
Coming soon
Request Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
autoCreateContact | No | boolean | True | Contacts will be created for travelers that do not match the default. |
contactRecordTypeId | No | long | The contact record type ID that will be used when contacts are created for travelers who do not match. |
Response Body
Model: RestfulModificationResult
{
"message": "OK",
"id": 470595271655442,
"baseUri": "https://api-qa1.everbridge.net/rest/itineraries/241901148045320/",
"instanceUri": "https://api-qa1.everbridge.net/rest/itineraries/241901148045320/470595271655442"
}
Error Messages
Status | Message | Description |
---|---|---|
400 | Field ["segments.type"] is empty. | Missing parameters. |
400 | Travel matching error, no contact matching. | If all travelers cannot be matched to the existing EB contacts or contact creation failed for all travelers. |
400 | The itinerary does not contain any segments | If the itinerary doesn't contain any segments for a non-canceled itinerary. |
400 | All segments of the itinerary are invalid, PNR creation failed | If all segments of the itinerary are invalid for a non-canceled itinerary. |
404 | Invalid credentials: Get User failed | Authentication Error |
401 | Can not find the trip itinerary with ID. 470595271655442 within the organization 241901148045320. | Record not found |
DELETE /itineraries/{organizationId}/{id}
Description
Cancel/Delete an itinerary.
Path Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
organizationId | Yes | The Everbridge Organization ID. | ||
id | The Itinerary ID (The Travel Plan ID). |
Request Body
Coming soon
json
Request Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
autoCreateContact | No | boolean | True | Contacts will be created for travelers that do not match the default. |
contactRecordTypeId | No | long | The contact record type ID that will be used when contacts are created for travelers who do not match. |
Response Body
{
"message": "OK",
"id": 470595271655442,
"baseUri": "https://api-qa1.everbridge.net/rest/itineraries/241901148045320/",
"instanceUri": "https://api-qa1.everbridge.net/rest/itineraries/241901148045320/470595271655442"
}
Error Messages
Status | Message | Description |
---|---|---|
404 | Invalid credentials: Get User failed | Authentication Error |
401 | Can not find the trip itinerary with ID. 470595271655442 within the organization 241901148045320. | Record not found |
POST /itineraries/query/{organizationId}
Description
Query itineraries by parameters.
Path Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
organizationId | Yes | The Everbridge Organization ID. |
Request Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
pageNumber | No | int | 1 |
Request Body
If the client wants to get many itineraries, they may pass many PNR values. Due to the URL length limit, we put the search criteria in the request body.
Current support
In the current phase, we only support the query by PNR or external trip ID values.
Name: searchCriteria
Type: Object
Content-Type: application/json
Model: ItinerarySearchCriteria
Query by Pnr
{
"fieldName": "pnr",
"fieldValues": [
"DRTWEV",
"Q2WEDC46UYOP"
]
}
Query by ItineraryId:
{
"fieldName": "externalItineraryId",
"fieldValues": [
"134808153",
"134808154"
]
}
Response Body
{
"message": "OK",
"firstPageUri": "https://api-qa1.everbridge.net/rest/itineraries/query/241901148045320/?pageNumber=1",
"nextPageUri": "https://api-qa1.everbridge.net/rest/itineraries/query/241901148045320/?pageNumber=2",
"lastPageUri": "https://api-qa1.everbridge.net/rest/itineraries/query/241901148045320/?pageNumber=2",
"start": 0,
"totalCount": 15,
"totalPageCount": 2,
"currentPageNo": 1,
"page": {
"pageSize": 10,
"data": [
{
"id": 241901148045123
},
{
"id": 241901148045124
}
]
}
}
DELETE /itineraries/{organizationId}/batch
Description
Batch delete itineraries.
Per call limit
The batch itinerary API deletion call is limited to 2,000 deletions per call.
Request Body
Name: ids
Type: Array
Content-Type: application/json Model: List
Example Value:
[241901148045320, 241901148045321]
Response Body
All successful
{
"message": "OK",
"code": 100
}
Partially successful
{
"message": "OK",
"code": 200,
"data": [
"241901148045321: Not found."
]
}
All failed
{
"message": "OK",
"code": 300,
"data": [
"241901148045320: Not found.",
"241901148045321: Not found."
]
}
GET /itineraries/expectedLocations/{organizationId}/{id}
Description
Get expected locations by Itinerary ID.
Path Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
organizationId | Yes | The Everbridge Organization ID. | ||
id | The Itinerary ID (The Travel Plan ID). |
Request Parameters
Parameter | Mandatory | Type | Default Value | Description |
---|---|---|---|---|
pageNumber | No | int | 1 |
Response Body
Coming soon