Summary of Capabilities & Limitations for this mode:
+ Custom options
+ Time Awareness (including Live Traffic)
+ Unlimited Region
- Limited Matrix Size
Given a list of origins and a list of destinations, the service computes the shortest travel times or distances between every pair of origin and destination. These results make up the entries of the routing matrix.
Size Limitations
In order to provide support for custom routing options, time awareness, and routes of arbitrary length, Flexible Mode cannot benefit from the optimizations that give Region and Profile modes their high performance. Due to this performance limitation, Flexible Mode requests are limited to:
at most 15 origins and 100 destinations (15 x 100)
or at most 100 origins and 1 destination (100 x 1)
Note
While the service attempts to calculate any request that meets the above size limitations, it may fail to complete some synchronous requests within the time limit. For example, larger matrices, or longer routes, or routes in denser road networks, all require more computation.
In case your synchronous request times out, try one of the following:
The service applies live and historical traffic information unless explicitly disabled by setting departureTime to the special value any.
Below is an example of a 3x3 matrix request with the following origins and destinations:
San Francisco at (37.76, -122.42)
New York at (40.63, -74.09)
Austin at (30.26, -97.74)
Figure 1. Matrix Request in the United States
To calculate a car distance matrix, you can use the request below. Since the request does not specify a destinations array, the origins are taken as destinations and the resulting matrix is a 3 x 3 matrix. The region definition is the special variant world. By default the service calculates a travel times matrix, but since we want to get distances in the response instead of times, the request specifies the matrixAttributes property with the value distances.