What is a scheduled task?
Stay organized with collections
Save and categorize content based on your preferences.
The documentation in this section shows how to create and work with scheduled
tasks using the Google Maps Mobility scheduled tasks service. It assumes
familiarity with the following:
The Task
resource that you'll use is available in both gRPC and
REST.
In Fleet Engine for scheduled tasks, a task represents a driver activity that
fulfills a scheduled shipment or service for your consumers. You assign tasks to
vehicle stop locations where they are to be completed, and the vehicle travels
to those stops.
A task has two possible states, OPEN
or CLOSED
. These states indicate
whether the task is active or not in the system. As the journey evolves for an
active task, you report this to Fleet Engine by updating the vehicle stop
associated with the task, which is either ENROUTE or ARRIVED. Once the driver
completes tasks and leaves the stop, you remove the stop from the list of stops
on the vehicle. For more about
tasks and their relationship to stops and vehicles, see
Scheduled tasks in Fleet Engine essentials .
Life of a task
In order to track each task in Fleet Engine, you must first create a Task
entity. See either gRCP or REST for reference.
The following table describes an example end-to-end flow of a task created in
your system and its lifecycle stages in Fleet Engine. It assumes you have set up
Fleet Engine and have a vehicle for the task, with location updates
enabled in the driver app. See Driver SDK: Scheduled tasks.
1 |
Create tasks. |
At the beginning of the work cycle, the dispatcher or service
administrator first creates a manifest for delivery tasks or services. From
there, your system then creates the task entities using
CreateTrip with required fields, such as the type of task and
the location. It can also supply other configurations at this point,
such as target time window, sharing task progress, and custom
attributes. See
Create shipment tasks
and the related guides. |
2 |
Schedule tasks. |
When you schedule a task for delivery, you issue a delivery vehicle
update request, which then updates the vehicle entity with a list of stops
to travel. You assign each stop a list of tasks to be completed at the stop.
See Update delivery vehicle tasks.
|
3 |
Update the task progress. |
Once the task is assigned to a delivery stop and active in Fleet Engine,
your system notifies Fleet Engine about the vehicle progress as it
approaches, arrives at, and completes the stop. With this information, Fleet
Engine can best perform routing and status updates along the journey as well
as throughout the day for the vehicle. See
Update vehicle stop status.
|
4 |
Share journeys. |
At the same time that the vehicle begins active navigation for the
delivery day, you can share journey information with interested
stakeholders. Fleet Engine makes both task details and vehicle location
available to interested stakeholders in the following ways:
- Shipment information for consumers . With this
solution, consumers can see the status of their package along with the
vehicle location information you permit them to view.
See
Consumer sharing for scheduled tasks.
- Fleet status information for administrators. With
this solution, fleet administrators can visualize the locations of
delivery vehicles and their stops in your fleets in near real time.
If the route for a vehicle is known, the map view component animates
that vehicle as it moves along its predicted path.
See the
JavaScript Fleet Tracking library.
|
5 |
Finalize the task. |
You finalize shipment tasks in Fleet engine in the following ways:
- Close the task: Closing a shipment task indicates that that task
is no longer active.
- Set the task outcome: Once a task is closed, you
indicate either a successful or failed task to indicate if the delivery
took place or not. This is an important part of finalizing a task to
show the delivery outcome in your consumer experience and to ensure
correct billing for the Fleet Engine service.
Keep in mind that, like delivery vehicles, task entities remain
active within Fleet Engine for 7 days regardless of state, at which
point they are removed.
See Finalize tasks.
|
Task sequence flow
The following diagram shows a detailed flow of a task lifecycle.

What's next
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-02-26 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-02-26 UTC."],[[["\u003cp\u003eThis documentation outlines how to create and manage scheduled tasks, representing driver activities, within the Google Maps Mobility scheduled tasks service.\u003c/p\u003e\n"],["\u003cp\u003eTasks, which can be either OPEN or CLOSED, are assigned to vehicle stops, and their progress is updated as the vehicle travels to and completes these stops.\u003c/p\u003e\n"],["\u003cp\u003eThe lifecycle of a task involves creation, scheduling by assigning to a vehicle stop, updating progress, sharing journey details with stakeholders, and finalization by closing and setting the outcome.\u003c/p\u003e\n"],["\u003cp\u003eFleet Engine provides tools for consumers to track shipment status and for administrators to monitor fleet locations and progress in near real-time.\u003c/p\u003e\n"],["\u003cp\u003eTo successfully use this service, prior familiarity with Fleet Engine, vehicle basics for on-demand services, and task basics for scheduled tasks is assumed.\u003c/p\u003e\n"]]],[],null,["The documentation in this section shows how to create and work with scheduled\ntasks using the Google Maps Mobility scheduled tasks service. It assumes\nfamiliarity with the 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- **Task basics** for scheduled task services. See [Scheduled tasks](/maps/documentation/mobility/fleet-engine/essentials/tasks-intro)\n\nThe `Task` resource that you'll use is available in both [gRPC](/maps/documentation/mobility/fleet-engine/reference/tasks/rpc/maps.fleetengine.delivery.v1#task) and\n[REST](/maps/documentation/mobility/fleet-engine/reference/tasks/rest/v1/providers.tasks).\n\nIn Fleet Engine for scheduled tasks, a task represents a driver activity that\nfulfills a scheduled shipment or service for your consumers. You assign tasks to\nvehicle stop locations where they are to be completed, and the vehicle travels\nto those stops.\n\nA task has two possible states, `OPEN` or `CLOSED`. These states indicate\nwhether the task is active or not in the system. As the journey evolves for an\nactive task, you report this to Fleet Engine by updating the vehicle stop\nassociated with the task, which is either ENROUTE or ARRIVED. Once the driver\ncompletes tasks and leaves the stop, you remove the stop from the list of stops\non the vehicle. For more about\ntasks and their relationship to stops and vehicles, see\n[Scheduled tasks](/maps/documentation/mobility/fleet-engine/essentials/tasks-intro#basic_task_fields) in **Fleet Engine essentials** .\n\nLife of a task\n\nIn order to track each task in Fleet Engine, you must first create a `Task`\nentity. See either [gRCP](/maps/documentation/mobility/fleet-engine/reference/tasks/rpc/maps.fleetengine.delivery.v1#task) or [REST](/maps/documentation/mobility/fleet-engine/reference/tasks/rest/v1/providers.tasks) for reference.\n\nThe following table describes an example end-to-end flow of a task created in\nyour system and its lifecycle stages in Fleet Engine. It assumes you have set up\nFleet Engine and have a vehicle for the task, with location updates\nenabled in the driver app. See [Driver SDK: Scheduled tasks](/maps/documentation/mobility/driver-sdk/scheduled).\n\n|---|-------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| 1 | **Create tasks.** | At the beginning of the work cycle, the dispatcher or service administrator first creates a manifest for delivery tasks or services. From there, your system then creates the task entities using `CreateTrip` with required fields, such as the type of task and the location. It can also supply other configurations at this point, such as target time window, sharing task progress, and custom attributes. See [Create shipment tasks](/maps/documentation/mobility/fleet-engine/journeys/tasks/create-shipment-tasks) and the related guides. |\n| 2 | **Schedule tasks.** | When you schedule a task for delivery, you issue a delivery vehicle update request, which then updates the vehicle entity with a list of stops to travel. You assign each stop a list of tasks to be completed at the stop. See [Update delivery vehicle tasks](/maps/documentation/mobility/fleet-engine/journeys/tasks/update-tasks). |\n| 3 | **Update the task progress.** | Once the task is assigned to a delivery stop and active in Fleet Engine, your system notifies Fleet Engine about the vehicle progress as it approaches, arrives at, and completes the stop. With this information, Fleet Engine can best perform routing and status updates along the journey as well as throughout the day for the vehicle. See [Update vehicle stop status](/maps/documentation/mobility/fleet-engine/journeys/tasks/update-stops). |\n| 4 | **Share journeys.** | At the same time that the vehicle begins active navigation for the delivery day, you can share journey information with interested stakeholders. Fleet Engine makes both task details and vehicle location available to interested stakeholders in the following ways: - **Shipment information for consumers** . With this solution, consumers can see the status of their package along with the vehicle location information you permit them to view. See [Consumer sharing for scheduled tasks](/maps/documentation/mobility/journey-sharing/scheduled). - **Fleet status information for administrators** . With this solution, fleet administrators can visualize the locations of delivery vehicles and their stops in your fleets in near real time. If the route for a vehicle is known, the map view component animates that vehicle as it moves along its predicted path. See the [JavaScript Fleet Tracking library](/maps/documentation/mobility/operations/fleet-tracking). |\n| 5 | **Finalize the task.** | You finalize shipment tasks in Fleet engine in the following ways: - **Close the task**: Closing a shipment task indicates that that task is no longer active. - **Set the task outcome**: Once a task is closed, you indicate either a successful or failed task to indicate if the delivery took place or not. This is an important part of finalizing a task to show the delivery outcome in your consumer experience and to ensure correct billing for the Fleet Engine service. Keep in mind that, like delivery vehicles, task entities remain active within Fleet Engine for 7 days regardless of state, at which point they are removed. See [Finalize tasks](/maps/documentation/mobility/fleet-engine/journeys/tasks/finalize-tasks). |\n\nTask sequence flow\n\nThe following diagram shows a detailed flow of a task lifecycle.\n\nWhat's next\n\n- [Create shipment tasks](/maps/documentation/mobility/fleet-engine/journeys/tasks/create-shipment-tasks)"]]