Method: computeRouteMatrix

Recibe una lista de orígenes y destinos y muestra una transmisión que contiene información de la ruta para cada combinación de origen y destino.

NOTA: Este método requiere que especifiques una máscara de campo de respuesta en la entrada. Puedes proporcionar la máscara de campo de respuesta con el parámetro de URL $fields o fields, o con el encabezado HTTP/gRPC X-Goog-FieldMask (consulta los parámetros y encabezados de URL disponibles). El valor es una lista de rutas de campo separadas por comas. Consulta esta documentación detallada sobre cómo construir las rutas de campo.

Por ejemplo, en este método:

  • Máscara de campo de todos los campos disponibles (para la inspección manual): X-Goog-FieldMask: *
  • Máscara de campo de las duraciones de las rutas, las distancias, el estado de los elementos, las condiciones y los índices de los elementos (un ejemplo de configuración de producción): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Es fundamental que incluyas status en tu máscara de campo, ya que, de lo contrario, todos los mensajes aparecerán como correctos. Google desaconseja el uso de la máscara de campo de respuesta de comodín (*) por los siguientes motivos:

  • Si seleccionas solo los campos que necesitas, nuestro servidor ahorrará ciclos de procesamiento, lo que nos permitirá mostrarte el resultado con una latencia más baja.
  • Si seleccionas solo los campos que necesitas en tu trabajo de producción, se garantiza un rendimiento de latencia estable. Es posible que agreguemos más campos de respuesta en el futuro, y es posible que esos campos nuevos requieran tiempo de procesamiento adicional. Si seleccionas todos los campos o todos los campos en el nivel superior, es posible que experimentes una degradación del rendimiento porque cualquier campo nuevo que agreguemos se incluirá automáticamente en la respuesta.
  • Seleccionar solo los campos que necesitas da como resultado un tamaño de respuesta más pequeño y, por lo tanto, una capacidad de procesamiento de red mayor.

Solicitud HTTP

POST https://routespreferred.googleapis.com/v1alpha:computeRouteMatrix

La URL usa la sintaxis de la transcodificación gRPC.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
Campos
origins[]

object (RouteMatrixOrigin)

Obligatorio. Es un array de orígenes que determina las filas de la matriz de respuesta. Se aplican varias restricciones de tamaño a la cardinalidad de los orígenes y destinos:

  • En ningún caso, la cantidad de elementos (orígenes × destinos) no debe ser superior a 625.
  • La cantidad de elementos (orígenes × destinos) no debe ser superior a 100 si routePreference se establece en TRAFFIC_AWARE_OPTIMAL.
  • La cantidad de waypoints (orígenes + destinos) especificados como placeId no debe ser superior a 50.
destinations[]

object (RouteMatrixDestination)

Obligatorio. Es un array de destinos que determina las columnas de la matriz de respuesta.

travelMode

enum (RouteTravelMode)

Opcional. Especifica el medio de transporte.

routingPreference

enum (RoutingPreference)

Opcional. Especifica cómo calcular la ruta. El servidor intenta usar la preferencia de enrutamiento seleccionada para calcular la ruta. Si la preferencia de enrutamiento genera un error o una latencia demasiado larga, se muestra un error. Puedes especificar esta opción solo cuando travelMode es DRIVE o TWO_WHEELER; de lo contrario, la solicitud falla.

departureTime

string (Timestamp format)

Opcional. Hora de salida. Si no estableces este valor, se usará de forma predeterminada la hora en la que realizaste la solicitud. Si estableces este valor en una hora que ya ocurrió, la solicitud fallará.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene un flujo de instancias de RouteMatrixElement.

Alcances de autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/maps-platform.routespreferred

Para obtener más información, consulta la descripción general de OAuth 2.0.