# Retrieve a Travel Data Trip Returns a single stored trip, addressed either by its SQUAKE or by your own . The response is the same shape the trip list returns: the identity fields a submission echoes back plus the trip as you described it on ingestion — name, purpose, status, dates, booking provider, amount and the nested . The trip carries the IDs of its activities, not the activities themselves — read those from . A trip you cannot access is indistinguishable from one that does not exist: both respond with and error code . Endpoint: GET /v2/travel-data/trips/{id} Security: Bearer-Auth ## Path parameters: - `id` (string, required) The trip's (UUID) or your own — either identifies the trip. ## Response 200 fields (application/json): - `id` (string, required) SQUAKE's identifier for the trip. Addresses the trip on every read and delete. - `trip_reference` (string,null, required) Your own reference for the trip, echoed from the request that created it. Also usable in place of in the trip paths. - `client_id` (string, required) The client that owns the trip — the target client when the trip was submitted with a root-level , otherwise the submitting client itself. - `submitted_by_client_id` (string,null, required) The client whose credentials submitted the trip. for trips that did not arrive through (for example CSV imports or TMC integrations). A trip re-used by a later submission keeps the submitter that first created it. - `activity_ids` (array, required) The IDs of the trip's activities, in ingestion order, across all activity types. Individual legs of a flight are not listed — the routed activity carries the itinerary. A read always lists every activity of the trip, including activities added by earlier or later submissions — unlike the of a submission response, which covers only what that request wrote. - `trip_name` (string,null, required) The trip's name, echoed from ingestion. if the source did not provide one. - `trip_purpose` (string,null, required) The trip's purpose, echoed from ingestion. if the source did not provide one. - `trip_status` (string,null, required) The trip's status as the source reported it, echoed from ingestion. Free-form — SQUAKE neither constrains nor normalizes the value. - `booking_provider` (string,null, required) The provider the trip was booked through (a TMC, an online booking tool), echoed from ingestion. if the source did not provide one. - `start_date_utc` (string,null, required) Start of the trip, in UTC. Ingestion accepts an ISO 8601 date (); it is stored and returned as an ISO 8601 date-time (). Required on , so only trips from other sources can report . - `end_date_utc` (string,null, required) End of the trip, in UTC, in the same date-time format as . if the source did not provide one. - `amount_in_cents` (integer,null, required) The booking's own amount, in the minor unit of (so is ), echoed from ingestion. SQUAKE also derives an amount in your base currency for reporting; that one is internal and never returned here. - `currency` (string,null, required) 3-letter ISO 4217 alpha code of . - `cost_center` (object,null, required) The cost center the trip is booked against, or for a trip that has none. The key is always present. Only the fields that identify the cost center to you are returned — the department and the internal id it carries in the dashboard are not part of this response. - `cost_center.name` (string, required) Name of the cost center, echoed from ingestion. - `cost_center.purpose` (string,null, required) Purpose of the cost center, echoed from ingestion. - `cost_center.email` (string,null, required) Contact email of the cost center, echoed from ingestion. ## Response 401 fields (application/json): - `errors` (array) - `errors.code` (string, required) An application-specific error code, expressed as a string value. Enum: "field_validation_error", "invalid_params", "server_error", "not_authorized", "not_found", "invalid_methodology", "invalid_type", "client_not_found", "invalid_parent_client", "client_has_children", "parent_id_immutable", "travel_data_not_found" - `errors.detail` (string) A human-readable explanation specific to this occurrence of the problem. Like title, this field's value can be localized. - `errors.source` (object) An object containing references to the primary source of the error - `errors.source.id` (string) - `errors.source.attribute` (string, required) - `errors.source.model` (string) ## Response 404 fields (application/json): - `errors` (array) - `errors.code` (string, required) An application-specific error code, expressed as a string value. Enum: "field_validation_error", "invalid_params", "server_error", "not_authorized", "not_found", "invalid_methodology", "invalid_type", "client_not_found", "invalid_parent_client", "client_has_children", "parent_id_immutable", "travel_data_not_found" - `errors.detail` (string) A human-readable explanation specific to this occurrence of the problem. Like title, this field's value can be localized. - `errors.source` (object) An object containing references to the primary source of the error - `errors.source.id` (string) - `errors.source.attribute` (string, required) - `errors.source.model` (string)