Overview

This page will host the documentation for the travel search information related events that are publicly available on concur.travel.search topic in the Event Subscription Service (ESS). Subscribers to these events will receive search criteria for travel searches performed within SAP Concur.

These events are relevant for applications that are interacting with travelers before they book their trip such as applications that context to the traveler regarding company policy, preferences, or general compliance requirements for booking travel.

Subscribers will be able to subscribe to these events by following the steps described on the Event Subscription Service v4 page.

Limitations

Access to this documentation does not provide access to the subscription.

Scope Usage

Scopes required to interact with this topic:

Name Description
travelrequest.write Read and write Requests and Search Information.
events.topic.read Read events.

Events

The topic concur.travel.search contains events for air and hotel searches.

Schema

Schema for Air Search Event

Name Type Format Description
id string GUID Uniquely identifies the event.
correlationId string GUID Uniquely identifies the air search request.
eventType string - Identifies the search event type. Supported values: travelSearchAir
topic string - Topic for subscription. Supported values: concur.travel.search
timeStamp string YYYY-MM-DDTHH:MM:SS.fZ Search event time in UTC.
facts object Air Search Facts Facts for air search.

Schema for Air Search Facts

Name Type Format Description
companyId string GUID Uniquely identifies the company of the traveler.
userId string GUID Uniquely identifies the user performing the search. Note: If the travel is booked by an arranger, this will be the traveler’s ID. In cases where a profiled user is booking on behalf of a nonprofiled guest, this will be the user performing the search.
arrangerUserId string GUID If the user is also the traveler, this value will be the same as the userID above. If an arranger is booking on behalf of the traveler, this will uniquely identify the user arranging the trip.
searchLegs string - Type of air search. Supported values: RoundTrip, MultiSeg, OneWay
isGuestBooking boolean - Identifies if the booking is a guest.
isFlexFaring boolean - Identifies if search is for flex faring.
segments array Air Search Segment List of segments for search.
numberOfTravelers integer - Number of travelers.
classOfTrip string - Selected cabin class. Supported values: F = First Class, C = Business Class, W = Premium Economy, Y = Economy Class
airCarriers array - If the user filters for individual carriers, this list will be populated with the IATA airline carrier codes. Example: AA, VA, LH

Schema for Air Search Segment

Name Type Format Description
departures array City List of departure airports selected by the user. A user can select a city area/hub as point of departure, which will result in an array of multiple airports.
arrivals array City List of arrival airports selected by the user. A user can select a city area/hub as point of arrival, which will result in an array of multiple airports.
departureDate string MM/DD/YYYY Date traveler will depart from the point of departure, local time. Either the departure date/time or the arrival date/time will be populated.
departureTime string HH:MM AM/PM Departure time, in local time. Either the departure date/time or the arrival date/time will be populated.
departureTimeWindow integer - Time window (+/-) around selected departure time, in hours. Either the departure date/time or the arrival date/time will be populated.
arrivalDate string MM/DD/YYYY Date on which the traveler will arrive at the destination, in local time. Either the departure date/time or the arrival date/time will be populated.
arrivalTime string HH:MM AM/PM Time at which the traveler will arrive at the destination, in local time. Either the departure date/time or the arrival date/time will be populated.
arrivalTimeWindow integer - Time window (+/-) around selected arrival time, in hours. Either the departure date/time or the arrival date/time will be populated.

Schema for Air Search City

Name Type Format Description
cityName string - Name of the city. Example: Frankfurt
cityIATACode string - IATA code of the city. Example: FRA. Note: If the user searches for a group of airports (e.g. Los Angeles area airports), this code will not be IATA standard. In this case, the city name should be used.

Schema for Hotel Search Event

Name Type Format Description
id string GUID Uniquely identifies the event.
correlationId string GUID Uniquely identifies the hotel search request.
eventType string - Identifies the search event type. Supported values: travelSearchHotel
topic string - Topic for subscription. Supported values: concur.travel.search
timeStamp string YYYY-MM-DDTHH:MM:SS.fZ Search event time in UTC.
facts object Hotel Search Facts Facts for hotel search.

Schema for Hotel Search Facts

Name Type Format Description
companyId string GUID Uniquely identifies the company of the traveler.
userId string GUID Uniquely identifies the user performing the search. Note: If the travel is booked by an arranger, this will be the traveler’s ID. In cases where a profiled user is booking on behalf of a nonprofiled guest, this will be the user performing the search.
refPointLatitude number double Reference point for the search latitude.
refPointLongitude number double Reference point for the search longitude.
refPointName string - Reference point for the search name.
radiusDistance integer - Distance around the reference point as selected by the user.
distanceUnit string - Unit for radius distance. Supported values: Mile, Kilometer
checkInDate string YYYY-MM-DD Check in date, in local time.
checkOutDate string YYYY-MM-DD Check out date, in local time.

Sample Events

Sample Air Search Event

Sample roundtrip air search

{
  "id": "00e4aeb3-d181-4881-89b1-0d0b5418968f",
  "correlationId": "51AB4E74-1287-4B20-87FB-98A93CE4CEEB",
  "eventType": "travelSearchAir",
  "topic": "concur.travel.search",
  "timeStamp": "2018-10-15T14:19:06.395349006Z",
  "data": null,
  "facts": {
    "companyId": "0af6e6ec-c0e6-427e-b397-a38d70276fb1",
    "userId": "5040b878-da00-47c7-8676-e0f6c67885b5",
    "arrangerUserId": "5040b878-da00-47c7-8676-e0f6c67885b5",
    "searchLegs": "RoundTrip",
    "isGuestBooking": null,
    "isFlexFaring": null,
    "segments": [
      {
        "departures": [
          {
            "cityName": "Las Vegas",
            "cityIATACode": "LAS"
          }
        ],
        "arrivals": [
          {
            "cityName": "Los Angeles",
            "cityIATACode": "LAX"
          }
        ],
        "departureDate": "01/15/2019",
        "departureTime": "09:00 AM",
        "departureTimeWindow": 3,
        "arrivalDate": null,
        "arrivalTime": null,
        "arrivalTimeWindow": null
      },
      {
        "departures": [
          {
            "cityName": "Los Angeles",
            "cityIATACode": "LAX"
          }
        ],
        "arrivals": [
          {
            "cityName": "Las Vegas",
            "cityIATACode": "LAS"
          }
        ],
        "departureDate": "01/16/2019",
        "departureTime": "03:00 PM",
        "departureTimeWindow": 3,
        "arrivalDate": null,
        "arrivalTime": null,
        "arrivalTimeWindow": null
      }
    ],
  "numberOfTravelers": 1,
  "classOfTrip": "Y",
  "airCarriers": null
  },
  "groups":null,
  "scopes":null
}

Sample Hotel Search Event

{
  "id": "a48e8dc1-86ad-40bc-87c3-23249936c079",
  "correlationId": "66a89237-4681-4439-94a1-61d8a1ccd304",
  "eventType": "travelSearchHotel",
  "topic": "concur.travel.search",
  "data": null,
  "timeStamp": "2024-10-28T13:41:19.671878713Z",
  "facts": {
    "companyId": "c49c6381-bac2-4a90-9738-cd358576d68a",
    "userId": "a2ebdf99-4fad-414e-b60f-d963c4e7eed4",
    "refPointLatitude": null,
    "refPointLongitude": null,
    "refPointName": null,
    "radiusDistance": 5,
    "distanceUnit": "MILE",
    "checkInDate": "2025-01-27",
    "checkOutDate": "2025-01-28"
  },
  "groups":null,
  "scopes":null
}

On this page