¿Qué es un viaje a pedido?
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En la documentación de esta sección, se muestra cómo crear y trabajar con viajes usando el servicio de viajes a pedido de Google Maps Mobility. Se supone que conoces los siguientes temas:
El TripService
que usarás está disponible para gRPC y REST.
Para simplificar, las referencias de campo siguen la convención de gRPC.
En Fleet Engine para servicios a pedido, un viaje es un tipo de recorrido que modela el cumplimiento de una solicitud de viaje o entrega de comida de tus consumidores. Un viaje tiene un estado que informas a Fleet Engine a medida que avanza el recorrido, como NEW
, ENROUTE_TO_PICKUP
y muchos más. El estado del viaje corresponde a las paradas ubicadas geográficamente que se asignan al vehículo, y Fleet Engine modifica estas paradas del vehículo con cada actualización del viaje que realices. Consulta Viajes a pedido en Conceptos básicos de Fleet Engine para obtener más información sobre los viajes y su relación con los vehículos.
Ciclo de vida de un viaje
Para hacer un seguimiento de cada viaje en Fleet Engine, primero debes crear una entidad Trip
. Consulta gRPC o REST como referencia.
En la siguiente tabla, se describe un ejemplo de flujo de extremo a extremo de un viaje creado en tu sistema y sus etapas del ciclo de vida en Fleet Engine. Se supone que configuraste Fleet Engine y tienes un vehículo para asignarle al viaje, con las actualizaciones de ubicación habilitadas en la app para el conductor. Consulta SDK de Driver: viajes a pedido.
1 |
Recibe la solicitud de reserva. |
Antes de que comience un viaje de Fleet Engine, tu sistema de reservas primero recibe una solicitud de viaje o entrega de un consumidor a través de tu app o de otro sistema de reservas. Luego, tu sistema crea la entidad del viaje con CreateTrip y los campos obligatorios, como la ubicación de partida.
También puede establecer otros campos en este punto, como pasajeros y ubicación de destino, o esperar hasta que asigne un vehículo. Consulta Cómo crear un viaje de un solo destino. |
2 |
Asigna el vehículo. |
Puedes asignar vehículos a viajes directamente en tu sistema y, luego, informar la asignación a Fleet Engine, o bien puedes usar el servicio Search Vehicle para buscar vehículos y filtrar por atributos de viaje y de vehículo para encontrar el mejor vehículo para completar el viaje. Cualquier vehículo en línea dentro de tu radio de búsqueda da a conocer su proximidad a través de las actualizaciones de ubicación que proporciona el SDK de Driver.
Una vez que SearchVehicle devuelve un vehículo que coincide con un viaje, tu sistema llama al extremo UpdateTrip para informar el ID del vehículo que asignaste al viaje NEW .
|
3 |
Actualiza el viaje. |
Una vez que el conductor acepta el viaje y comienza a navegar hacia la ubicación de partida, tu sistema actualiza el estado del viaje de NEW a ENROUTE_TO_PICKUP . Sigues sondeo la ubicación del vehículo durante todo el viaje, ya sea a través de una conexión directa de la app a tu backend o sondeando Fleet Engine, que recibe un flujo continuo de actualizaciones de la ubicación del vehículo desde el SDK de Driver. Luego, tu sistema informa cada hito del viaje a Fleet Engine, que actualiza la lista de puntos de referencia del vehículo según corresponda.
|
4 |
Comparte el viaje con el consumidor. |
Fleet Engine pone los detalles del viaje y la ubicación del vehículo a disposición del SDK del consumidor, que usa un objeto de escucha para recibir actualizaciones del viaje y mostrarlas en la app del consumidor. Fleet Engine actualiza automáticamente la ETA, la distancia restante, las rutas y los puntos de referencia restantes del vehículo. Consulta Cómo compartir viajes para viajes a pedido para obtener más información. |
5 |
Viaje completo. |
Una vez que el vehículo llega al punto de ruta de destino del viaje y el conductor indica que el viaje se completó correctamente, tu sistema establece TripStatus en COMPLETE en Fleet Engine. Ten en cuenta que, al igual que los vehículos, las entidades de viajes permanecen activas en Fleet Engine durante 7 días, independientemente de su estado, y luego se quitan. |
Flujo de secuencia del viaje
En el siguiente diagrama, se muestra una vista más detallada de este flujo.

¿Qué sigue?
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-08-31 (UTC)
[null,null,["Última actualización: 2025-08-31 (UTC)"],[[["\u003cp\u003eThis documentation provides a comprehensive guide on utilizing the Google Maps Mobility on-demand trips service for managing and tracking trips.\u003c/p\u003e\n"],["\u003cp\u003eYou should have a foundational understanding of Fleet Engine, Vehicle Basics, and Trip Basics for on-demand services.\u003c/p\u003e\n"],["\u003cp\u003eFleet Engine's \u003ccode\u003eTripService\u003c/code\u003e enables the creation, assignment, updating, and completion of trips through gRPC or REST.\u003c/p\u003e\n"],["\u003cp\u003eTrips represent journeys fulfilling consumer requests, evolving through various statuses like \u003ccode\u003eNEW\u003c/code\u003e, \u003ccode\u003eENROUTE_TO_PICKUP\u003c/code\u003e, and \u003ccode\u003eCOMPLETE\u003c/code\u003e, influencing vehicle waypoints.\u003c/p\u003e\n"],["\u003cp\u003eThe trip lifecycle includes booking, vehicle assignment, status updates, consumer journey sharing, and completion, all managed through Fleet Engine interactions.\u003c/p\u003e\n"]]],[],null,["The documentation in this section shows how to create and work with trips using\nthe Google Maps Mobility on-demand trips service. It assumes familiarity with\nthe following:\n\n- **Fleet Engine** : You should be familiar with Fleet Engine implementation details, request mechanisms, and security. For that, see [What is the Fleet\n Engine service?](/maps/documentation/mobility/fleet-engine/essentials) and the security topics in [Set up Fleet Engine](/maps/documentation/mobility/fleet-engine/essentials/set-up-fleet).\n- **Vehicles basics** for on-demand services. See [Introduction to vehicles](/maps/documentation/mobility/fleet-engine/essentials/vehicles-intro).\n- **Trip basics** for on-demand services. See [On-demand trips](/maps/documentation/mobility/fleet-engine/essentials/trip-intro).\n\nThe `TripService` that you'll use is available for [gRPC](/maps/documentation/mobility/fleet-engine/reference/trips/rpc/maps.fleetengine.v1#tripservice) and [REST](/maps/documentation/mobility/fleet-engine/reference/trips/rest/v1/providers.trips).\nFor simplicity sake, field references follow the gRPC convention.\n\nIn Fleet Engine for on-demand services, a trip is a type of journey that models\nthe fulfillment of a food delivery or ride request from your consumers. A trip\nhas a status that you report to Fleet Engine as the journey evolves, such as\n`NEW`, `ENROUTE_TO_PICKUP`, and more. The trip status corresponds to geo-located\nwaypoints assigned to the vehicle, and Fleet Engine modifies these vehicle\nwaypoints with each trip update you make. See [On demand trips](/maps/documentation/mobility/fleet-engine/essentials/trip-intro) in **Fleet\nEngine essentials** for more about trips and their relationship to vehicles.\n\nLife of a trip\n\nIn order to track each trip in Fleet Engine, you must first create a `Trip`\nentity. See either [gRPC](/maps/documentation/mobility/fleet-engine/reference/trips/rpc/maps.fleetengine.v1#maps.fleetengine.v1.Trip) or [REST](/maps/documentation/mobility/fleet-engine/reference/trips/rest/v1/providers.trips) for reference.\n\nThe following table describes an example end-to-end flow of a trip created in\nyour system and its lifecycle stages in Fleet Engine. It assumes you have set up\nFleet Engine and have a vehicle to assign to the trip, with location updates\nenabled in the driver app. See [Driver SDK: On-demand trips](/maps/documentation/mobility/driver-sdk/on-demand).\n\n|---|----------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| 1 | **Receive booking request.** | Before a Fleet Engine trip begins, your booking system first receives a request for a ride or delivery from a consumer through your app or other booking system. Your system then creates the trip entity using `CreateTrip` with required fields, such as the pickup location. It can also set other fields at this point, such passengers and dropoff location, or wait until it assigns a vehicle. See [Create a single-destination trip](/maps/documentation/mobility/fleet-engine/journeys/trips/create-trip). |\n| 2 | **Assign vehicle.** | You can either assign vehicles to trips directly within your system and report the assignment to Fleet Engine, or you can use the [Search Vehicle](/maps/documentation/mobility/fleet-engine/essentials/vehicles/on-demand-search-vehicle) service to search for vehicles, filtering by both trip and vehicle attributes to find the best vehicle to complete the journey. Any online vehicle within your search radius makes their proximity known through location updates provided by the Driver SDK. Once `SearchVehicle` returns a vehicle that you match to a trip, your system calls the `UpdateTrip` endpoint to report the vehicle ID you assigned to the `NEW` trip. |\n| 3 | **Update trip.** | Once the driver accepts the trip and begins navigating to the pickup location, your system updates the trip status from `NEW` to `ENROUTE_TO_PICKUP`. You continue to poll the vehicle location throughout the journey, either through a direct connection from the app to your backend, or by polling Fleet Engine, which receives an ongoing stream of vehicle location updates from the Driver SDK. Your system then reports each journey milestone to Fleet Engine, which updates the vehicle's waypoint list accordingly. |\n| 4 | **Share journey with consumer.** | Fleet Engine makes trip details and vehicle location available to the Consumer SDK, which uses a listener to receive trip updates and display them in the consumer app. Fleet Engine automatically updates ETA, remaining distance, routes, and remaining vehicle waypoints. See [Share journeys for on-demand trips](/maps/documentation/mobility/journey-sharing/on-demand) for more information. |\n| 5 | **Complete trip.** | Once the vehicle reaches the destination waypoint of the trip and your driver indicates a successful trip, your system sets the `TripStatus` to `COMPLETE` in Fleet Engine. Keep in mind that, like vehicles, trip entities remain active within Fleet Engine for 7 days regardless of status, at which point they are removed. |\n\nTrip sequence flow\n\nThe following diagram shows a more detailed view of this flow.\n\nWhat's next\n\n- [Create a single-destination trip](/maps/documentation/mobility/fleet-engine/journeys/trips/create-trip)"]]