Skip to content

Routing services allow you to perform analysis on transportation networks, such as finding the best route across a city, finding the closest emergency vehicle or facility, identifying a service area around a location, or servicing a set of orders with a fleet of vehicles. If you have used ArcGIS Pro to perform analysis on a street network, routing services allow you to perform similar analysis using web services running on your ArcGIS Server site.

There are eight types of analysis that can be performed using the routing services. Each type is available as a service and can be accessed using a unique REST endpoint for the service.

Route service

The Route service can be used to find the best way to get from one location to another or to visit several locations.

Closest facility service

Finding the closest hospital to an accident, the closest police cars to a crime scene, and the closest store to a customer's address are examples of problems that can be solved using the Closest facility service.

Service area service

With the Service area service, you can find the area that can be reached from the input location within a given travel time or travel distance. A service area is the area that encompasses all streets that can be accessed within a given distance or travel time from one or more locations, referred to as facilities. Service areas are generally used to visualize and measure the accessibility of facilities.

Vehicle routing problem service

Vehicle Routing Problem service can be used in determining the most effective routes for a set of vehicles that need to visit a set of locations. It creates the overall minimum transportation cost.

Location-allocation service

Location-allocation helps you choose which facilities from a set of facilities to operate based on their potential interaction with demand points.

Travel cost matrix service

Use the travel cost matrix service to create an origin-destination (OD) cost matrix from multiple origins to multiple destinations. A travel cost matrix is a table that contains the cost, such as the travel time or travel distance, from every origin to every destination. It also ranks the destinations that each origin connects to in ascending order based on the minimum cost required to travel from that origin to each destination. When generating a travel cost matrix, you can specify the maximum number of destinations to find for each origin and the maximum time or distance to travel when searching for destinations.

Last mile delivery service

The Last Mile Delivery service is a use case specific Vehicle Routing Problem (VRP) algorithm designed for a fleet of vehicles that are delivering packages to the final customers.

Snap to roads service

The Snap to Roads service can be used to snap a series of GPS track points to the underlying roads. You can return just the snapped points, or lines representing the roads that were traversed. In addition to the geometry, you can have the service return attributes of the roads like the posted speed limit and length in case you need this to perform route adherence.

Request types

A routing service can support direct request and job request. The type of request made defines how the application using the service interacts with the service and gets the result. When making a direct request, the application must wait for the request to finish and get the results. This type of request is well-suited for requests that complete quickly (under 10 seconds). When using the job request, the client must periodically check whether the service has finished execution and, once completed, get the result. While the service is executing, the application is available to do other things. This type of request is well-suited for requests that take a long time to complete because it allows you to continue to interact with the application while the results are generated. Another advantage of the job request for long running requests is that the application does not need to keep a connection open with the web server in your ArcGIS Server site while the request is being processed. This can prevent web server timeouts that can occur with long-running direct requests.

A routing service for an analysis type supports the same functionality regardless of the request type. However, the request URL and the parameter names supported by the service are different based on the request type. Certain network analysis types support both direct and job request while some support only job request.

The table below summarizes the execution mode available for each analysis type and links to detailed API reference for the routing services.

Execution modes for various routing services

Publish routing services

To use the routing services from their REST endpoints, you must first publish the services to an ArcGIS Server site in your ArcGIS Enterprise deployment. The routing services need a network dataset that defines the data model for your transportation network on which the analysis is performed. Once you have a network dataset, you can publish the routing services to an ArcGIS Server site.

Learn more about Publish Routing Services.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.