Die
Routes Preferred API ist derzeit nur für ausgewählte Kunden verfügbar. Weitere Informationen erhalten Sie vom
Vertrieb.
Method: computeRouteMatrix
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Nimmt eine Liste von Start- und Zielorten entgegen und gibt einen Stream mit Routeninformationen für jede Kombination aus Start- und Zielort zurück.
HINWEIS: Bei dieser Methode müssen Sie in der Eingabe eine Antwortfeldmaske angeben. Sie können die Antwortfeldmaske mit dem URL-Parameter $fields
oder fields
oder mit dem HTTP-/gRPC-Header X-Goog-FieldMask
angeben (siehe Verfügbare URL-Parameter und ‑Header). Der Wert ist eine durch Kommas getrennte Liste von Feldpfaden. In dieser ausführlichen Dokumentation erfahren Sie, wie Sie Feldpfade erstellen.
Zum Beispiel in dieser Methode:
- Feldmaske aller verfügbaren Felder (für die manuelle Prüfung):
X-Goog-FieldMask: *
- Feldmaske für Routendauer, -abstände, -status, -zustand und -indizes (Beispiel für eine Produktionskonfiguration):
X-Goog-FieldMask:
originIndex,destinationIndex,status,condition,distanceMeters,duration
Es ist wichtig, dass Sie status
in Ihre Feldmaske aufnehmen, da sonst alle Nachrichten in Ordnung sind. Google rät von der Verwendung der Platzhalter-Antwortfeldmaske (*
) aus folgenden Gründen ab:
- Indem Sie nur die Felder auswählen, die Sie benötigen, spart unser Server Berechnungszyklen, sodass wir das Ergebnis mit einer geringeren Latenz an Sie zurückgeben können.
- Wenn Sie nur die Felder auswählen, die Sie für Ihren Produktionsjob benötigen, wird eine stabile Latenzleistung sichergestellt. Möglicherweise fügen wir in Zukunft weitere Antwortfelder hinzu, und diese neuen Felder erfordern möglicherweise zusätzliche Rechenzeit. Wenn Sie alle Felder oder alle Felder auf oberster Ebene auswählen, kann es zu Leistungseinbußen kommen, da jedes neue Feld, das wir hinzufügen, automatisch in die Antwort aufgenommen wird.
- Wenn Sie nur die benötigten Felder auswählen, ist die Antwort kleiner und der Netzwerkdurchsatz höher.
HTTP-Anfrage
POST https://routespreferred.googleapis.com/v1alpha:computeRouteMatrix
Die URL verwendet die Syntax der gRPC-Transcodierung.
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
Felder |
origins[] |
object (RouteMatrixOrigin )
Erforderlich. Array von Ursprüngen, das die Zeilen der Antwortmatrix bestimmt. Für die Kardinalität von Start- und Zielorten gelten mehrere Größenbeschränkungen:
- Die Anzahl der Elemente (Start- × Zielorte) darf auf keinen Fall mehr als 625 betragen.
- Die Anzahl der Elemente (Startorte × Ziele) darf nicht größer als 100 sein, wenn „routingPreference“ auf
TRAFFIC_AWARE_OPTIMAL festgelegt ist.
- Die Anzahl der Wegpunkte (Start- und Zielorte) darf 50 nicht überschreiten.
|
destinations[] |
object (RouteMatrixDestination )
Erforderlich. Array mit Zielen, das die Spalten der Antwortmatrix bestimmt.
|
travelMode |
enum (RouteTravelMode )
Optional. Gibt die Mobilitätsform an.
|
routingPreference |
enum (RoutingPreference )
Optional. Gibt an, wie die Route berechnet werden soll. Der Server versucht, die Route anhand der ausgewählten Routing-Einstellung zu berechnen. Wenn die Routingeinstellung zu einem Fehler oder zu einer sehr langen Latenz führt, wird ein Fehler zurückgegeben. Diese Option kann nur angegeben werden, wenn travelMode den Wert DRIVE oder TWO_WHEELER hat. Andernfalls schlägt die Anfrage fehl.
|
departureTime |
string (Timestamp format)
Optional. Die Abfahrtszeit. Wenn Sie diesen Wert nicht festlegen, wird standardmäßig der Zeitpunkt der Anfrage verwendet. Wenn Sie diesen Wert auf eine Zeit festlegen, die bereits verstrichen ist, schlägt die Anfrage fehl. Ein Zeitstempel im Format RFC3339 UTC "Zulu" mit einer Auflösung im Nanosekundenbereich und bis zu neun Nachkommastellen. Beispiele: "2014-10-02T15:01:23Z" und "2014-10-02T15:01:23.045123456Z" .
|
Antworttext
Bei Erfolg enthält der Antworttext einen Stream von RouteMatrixElement
-Instanzen.
Autorisierungsbereiche
Erfordert den folgenden OAuth-Bereich:
https://www.googleapis.com/auth/maps-platform.routespreferred
Weitere Informationen finden Sie in der Übersicht über OAuth 2.0.
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2025-08-29 (UTC).
[null,null,["Zuletzt aktualisiert: 2025-08-29 (UTC)."],[[["\u003cp\u003eTakes a list of origins and destinations, returning route information for each combination.\u003c/p\u003e\n"],["\u003cp\u003eRequires specifying a response field mask for optimized performance and data selection.\u003c/p\u003e\n"],["\u003cp\u003eAccepts parameters for travel mode, routing preference, and departure time.\u003c/p\u003e\n"],["\u003cp\u003eReturns a stream of \u003ccode\u003eRouteMatrixElement\u003c/code\u003e instances containing route details.\u003c/p\u003e\n"],["\u003cp\u003eRequires the \u003ccode\u003ehttps://www.googleapis.com/auth/maps-platform.routespreferred\u003c/code\u003e OAuth scope for authorization.\u003c/p\u003e\n"]]],["This method computes route information for multiple origin-destination pairs. It requires a `POST` request to `computeRouteMatrix` with lists of `origins` and `destinations` in the request body. A field mask must be included to specify which data fields to return, with `status` being critical. Optional parameters include `travelMode`, `routingPreference`, and `departureTime`. The response is a stream of `RouteMatrixElement` instances, and the method requires a specific OAuth scope for authorization.\n"],null,["# Method: computeRouteMatrix\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n- [Authorization scopes](#body.aspect)\n\nTakes in a list of origins and destinations and returns a stream containing route information for each combination of origin and destination.\n\n**NOTE:** This method requires that you specify a response field mask in the input. You can provide the response field mask by using the URL parameter `$fields` or `fields`, or by using the HTTP/gRPC header `X-Goog-FieldMask` (see the [available URL parameters and headers](https://cloud.google.com/apis/docs/system-parameters). The value is a comma separated list of field paths. See this detailed documentation about [how to construct the field paths](https://github.com/protocolbuffers/protobuf/blob/master/src/google/protobuf/field_mask.proto).\n\nFor example, in this method:\n\n- Field mask of all available fields (for manual inspection): `X-Goog-FieldMask: *`\n- Field mask of route durations, distances, element status, condition, and element indices (an example production setup): `X-Goog-FieldMask:\n originIndex,destinationIndex,status,condition,distanceMeters,duration`\n\nIt is critical that you include `status` in your field mask as otherwise all messages will appear to be OK. Google discourages the use of the wildcard (`*`) response field mask, because:\n\n- Selecting only the fields that you need helps our server save computation cycles, allowing us to return the result to you with a lower latency.\n- Selecting only the fields that you need in your production job ensures stable latency performance. We might add more response fields in the future, and those new fields might require extra computation time. If you select all fields, or if you select all fields at the top level, then you might experience performance degradation because any new field we add will be automatically included in the response.\n- Selecting only the fields that you need results in a smaller response size, and thus higher network throughput.\n\n### HTTP request\n\n`POST https://routespreferred.googleapis.com/v1alpha:computeRouteMatrix`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"origins\": [ { object (/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixOrigin) } ], \"destinations\": [ { object (/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixDestination) } ], \"travelMode\": enum (/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteTravelMode), \"routingPreference\": enum (/maps/documentation/routes_preferred/reference/rest/Shared.Types/RoutingPreference), \"departureTime\": string } ``` |\n\n| Fields ||\n|-----------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `origins[]` | `object (`[RouteMatrixOrigin](/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixOrigin)`)` Required. Array of origins, which determines the rows of the response matrix. Several size restrictions apply to the cardinality of origins and destinations: - The number of elements (origins × destinations) must be no greater than 625 in any case. - The number of elements (origins × destinations) must be no greater than 100 if routingPreference is set to `TRAFFIC_AWARE_OPTIMAL`. - The number of waypoints (origins + destinations) specified as `placeId` must be no greater than 50. |\n| `destinations[]` | `object (`[RouteMatrixDestination](/maps/documentation/routes_preferred/reference/rest/Shared.Types/ComputeRouteMatrixRequest#RouteMatrixDestination)`)` Required. Array of destinations, which determines the columns of the response matrix. |\n| `travel``Mode` | `enum (`[RouteTravelMode](/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteTravelMode)`)` Optional. Specifies the mode of transportation. |\n| `routing``Preference` | `enum (`[RoutingPreference](/maps/documentation/routes_preferred/reference/rest/Shared.Types/RoutingPreference)`)` Optional. Specifies how to compute the route. The server attempts to use the selected routing preference to compute the route. If the routing preference results in an error or an extra long latency, an error is returned. You can specify this option only when the `travelMode` is `DRIVE` or `TWO_WHEELER`, otherwise the request fails. |\n| `departure``Time` | `string (`[Timestamp](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp)` format)` Optional. The departure time. If you don't set this value, this defaults to the time that you made the request. If you set this value to a time that has already occurred, the request fails. A timestamp in RFC3339 UTC \"Zulu\" format, with nanosecond resolution and up to nine fractional digits. Examples: `\"2014-10-02T15:01:23Z\"` and `\"2014-10-02T15:01:23.045123456Z\"`. |\n\n### Response body\n\nIf successful, the response body contains a stream of [RouteMatrixElement](/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteMatrixElement) instances.\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/maps-platform.routespreferred`\n\nFor more information, see the [OAuth 2.0 Overview](https://developers.google.com/identity/protocols/OAuth2)."]]