Book and manage a ride for a non-Uber-account guest under a corporate/travel program using Uber for Business's Guest Trips API.
domain: developer.uber.com · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗
In-depth guide
Verify Uber Direct webhook signatures — the full failure-mode walkthrough related to developer.uber.com, checked against official docs, with linked verified routes.
Steps
Contact your Uber for Business account/sales representative to get the guests.trips OAuth scope provisioned for your application — scope access is granted per-app, not self-service by default.
Obtain an OAuth 2.0 access token for your organization using the client_credentials grant.
Test in the sandbox first: POST https://api.uber.com/v1/guests/sandbox/run to spin up temporary test riders and drivers tied to a run_id.
Call POST https://api.uber.com/v1/guests/trips with guest details (email, first_name, last_name, phone_number), a product_id, and pickup/dropoff coordinates plus addresses to create the ride; capture the returned request_id.
Call GET https://api.uber.com/v1/guests/trips/{request_id} to poll trip status, and the corresponding receipt endpoint once the trip completes.
Call PUT https://api.uber.com/v1/guests/trips/{request_id} to modify an in-flight request (e.g., change the dropoff) before the trip starts.
Known gotchas
Access to each Uber for Business API, including Guest Trips, is provisioned per-application by Uber — a valid OAuth token without the guests.trips scope will still fail, and getting the scope requires going through an Uber for Business sales representative.
The default rate limit is documented per endpoint (in the low hundreds of requests per hour) — guest-heavy or batch integrations can hit this fast.
Sandbox test riders/drivers and their run_id are time-boxed to a few hours — a run created for morning testing will silently stop working by afternoon.
Give your agent this knowledge — and 15,500+ more routes
One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp
Need this verified for your stack — or a route we don't have yet?