API console
Try it
Send a real request to the sandbox API and inspect the response.
Credentials
Log in to pick from your saved API keys instead of pasting them.
Path parameters
1 fieldReservation ID
Reservation identifier returned when the booking was created. On the unified details endpoint, send only one of reservationId, confirmationNumber or searchId.
Query parameters
2 fieldsCurrency
Currency of the returned amounts. Must match the offer or reservation when one already exists.
Language
Legacy language field. Prefer the LANG or Accept-Language header.
cURL request
curl -X GET 'https://api.sandbox.travelandz.com/v1/transfers/tracking/:reservationId/events/latest?currency=USD' \
-H 'Authorization: Bearer YOUR_SECRET_KEY' \
-H 'X-Travelandz-Id: YOUR_PUBLIC_KEY:YOUR_PROFILE_CODE'Add your credentials to send a request.
This request needs identifiers or tokens from an earlier call. Run the previous step first, then paste its values here.
Response
Click "Try it!" to send a request and see the response here.
Read the last known vehicle position and journey status for a reservation.
Authentication and headers
| Header | Description |
|---|---|
Authorization | Bearer <secret_key>. Keep the secret on the server and never write it to client logs. |
X-Travelandz-Id | <public_key>:<profile_code>, where the persisted profile code has the form dp_<12 alphanumeric>. |
LANG | Preferred locale header. Accept-Language is also supported. |
Content-Type | application/json for requests with a JSON body. |
Request
This endpoint takes no body. reservationId goes in the path.
Request Params Schema
reservationIdRequest Query Params Schema
currencyUSD on a new search and is inherited afterwards.languageLANG or Accept-Language header.Success response
Every field is omitted while no tracking information exists yet, so an empty object is a valid 200 response. Do not treat a missing location as an error before the journey starts.
Response Body Schema
locationlocationlatitudelocationlongitudestatusdriver_departed_to_pickup.timestamptrackingIdResponse examples
{
"location": {
"latitude": 40.7607634,
"longitude": -73.971212
},
"status": "driver_departed_to_pickup",
"timestamp": "2026-07-25T17:47:01.761854Z",
"trackingId": "c90n51960f274447b29473fc0d995f6a"
}Errors
| HTTP | Code | Meaning | Recommended action |
|---|---|---|---|
400 | The body, query or path is invalid, or contains an unknown property. | Fix the request using the message array. | |
400 | transfer_invalid_currency | The currency is outside the supported list. | Use a supported currency. |
400 | transfer_invalid_language | The requested language is not supported. | Use one of the documented language values. |
429 | transfer_provider_error | The service is temporarily rate limited. | Retry with exponential backoff. |
502 | transfer_provider_error | The request could not be completed. | Do not assume success. Keep your identifiers and read the reservation when the operation could have been created. |
Usage notes
Tracking never performs a currency conversion; currency is only validated. Use the stream endpoint when the traveller is watching a live map.
cURL example
curl --request GET \
--url "https://api.sandbox.travelandz.com/v1/transfers/tracking/f390daff1fdf4cccb19b7abd825dc011/events/latest?currency=USD" \
-H "Authorization: Bearer $TRAVELANDZ_SECRET_KEY" \
-H "X-Travelandz-Id: $TRAVELANDZ_PUBLIC_KEY:$TRAVELANDZ_PROFILE_CODE"