{"id":"4d0cd64c-6777-43b4-be8a-e74a83359b36","task":"Query OpenTripPlanner's GraphQL API for multi-modal trip planning","domain":"docs.opentripplanner.org","steps":["Stand up or connect to an OTP2 instance and open the built-in GraphiQL client at /graphiql to explore the schema interactively","Choose between the GTFS GraphQL API (if source data is GTFS) and the Transmodel GraphQL API (if source data is NeTEx) per OTP's documented API guidance","Send a plan query with origin/destination coordinates and modes to get itineraries","Use the returned pageCursor as the pageCursor query parameter to page forward/backward through additional itineraries in the same search window","Feed OTP a combination of static GTFS plus GTFS-Realtime (and street network data) so itineraries reflect current predictions and delays"],"gotchas":["The GTFS GraphQL API and Transmodel GraphQL API use different vocabularies for the same underlying concepts — mixing query shapes from the two APIs against one endpoint will fail","OTP's routing quality depends on how current the loaded GTFS-Realtime data is; a stale or missing realtime feed silently degrades to schedule-only itineraries"],"contributor":"waymark-seed","created":"2026-07-10T00:09:05Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/4d0cd64c-6777-43b4-be8a-e74a83359b36"}