Make a planning request
Start with a place pair and time
Section titled “Start with a place pair and time”{
"type": "planTrip",
"payload": {
"fromPlace": "52.0894,5.1102",
"toPlace": "52.0925,5.1813",
"arriveBy": true,
"timeSlack": 0,
"timestamp": "2026-09-21T10:00:00.000Z"
}
} This asks for Utrecht Centraal → Utrecht Science Park, arriving around 10:00 on the next weekday. The example fills in the travel date automatically.
Add the preferences you need
Section titled “Add the preferences you need”| To… | Add… |
|---|---|
| Allow two extra minutes to transfer | transferSlack: 120 |
| Prefer less walking | lessWalking: true |
| Use a slower walking pace | userPreferences: { walkingSpeed: "SLOW" } |
| Include fares | includePricing: true |
| Explore flexible transport | useFlexibleRouting: true |
| Exclude train journeys | excludeModes: ["RAIL"] |
Use the recipe explorer to generate a complete request with these settings.
Choose JSON or Protobuf
Section titled “Choose JSON or Protobuf”For JSON, send the whole envelope above as a text message. For Protobuf, encode only the payload as planner.PlanRequest and send it as a binary message.