Method: computeRouteMatrix

Mengambil daftar tempat asal dan tujuan, serta menampilkan aliran data yang berisi informasi rute untuk setiap kombinasi tempat asal dan tujuan.

CATATAN: Metode ini mengharuskan Anda menentukan mask kolom respons dalam input. Anda dapat memberikan mask kolom respons menggunakan parameter URL $fields atau fields, atau menggunakan header HTTP/gRPC X-Goog-FieldMask (lihat parameter dan header URL yang tersedia. Nilainya adalah daftar jalur kolom yang dipisahkan koma. Lihat dokumentasi mendetail tentang cara membuat jalur kolom.

Misalnya, dalam metode ini:

  • Mask kolom dari semua kolom yang tersedia (untuk pemeriksaan manual): X-Goog-FieldMask: *
  • Mask kolom durasi rute, jarak, status elemen, kondisi, dan indeks elemen (contoh penyiapan produksi): X-Goog-FieldMask: originIndex,destinationIndex,status,condition,distanceMeters,duration

Anda harus menyertakan status dalam mask kolom karena jika tidak, semua pesan akan tampak baik-baik saja. Google tidak menyarankan penggunaan mask kolom respons karakter pengganti (*), karena:

  • Memilih kolom yang Anda perlukan saja akan membantu server kami menyimpan siklus komputasi, sehingga memungkinkan kami menampilkan hasilnya kepada Anda dengan latensi yang lebih rendah.
  • Memilih hanya kolom yang Anda perlukan dalam tugas produksi akan memastikan performa latensi yang stabil. Kami mungkin akan menambahkan lebih banyak kolom respons di masa mendatang, dan kolom baru tersebut mungkin memerlukan waktu komputasi tambahan. Jika Anda memilih semua kolom, atau jika memilih semua kolom di tingkat teratas, Anda mungkin akan mengalami penurunan performa karena kolom baru yang kami tambahkan akan otomatis disertakan dalam respons.
  • Memilih hanya kolom yang Anda perlukan akan menghasilkan ukuran respons yang lebih kecil, sehingga throughput jaringan lebih tinggi.

Permintaan HTTP

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

URL menggunakan sintaksis gRPC Transcoding.

Isi permintaan

Isi permintaan memuat data dengan struktur berikut:

Representasi JSON
{
  "origins": [
    {
      object (RouteMatrixOrigin)
    }
  ],
  "destinations": [
    {
      object (RouteMatrixDestination)
    }
  ],
  "travelMode": enum (RouteTravelMode),
  "routingPreference": enum (RoutingPreference),
  "departureTime": string
}
Kolom
origins[]

object (RouteMatrixOrigin)

Wajib. Array asal, yang menentukan baris matriks respons. Beberapa batasan ukuran berlaku untuk kardinalitas asal dan tujuan:

  • Jumlah elemen (asal × tujuan) tidak boleh lebih dari 625.
  • Jumlah elemen (asal × tujuan) tidak boleh lebih besar dari 100 jika routingPreference ditetapkan ke TRAFFIC_AWARE_OPTIMAL.
  • Jumlah titik jalan (asal + tujuan) yang ditentukan sebagai placeId tidak boleh lebih dari 50.
destinations[]

object (RouteMatrixDestination)

Wajib. Array tujuan, yang menentukan kolom matriks respons.

travelMode

enum (RouteTravelMode)

Opsional. Menentukan mode transportasi.

routingPreference

enum (RoutingPreference)

Opsional. Menentukan cara menghitung rute. Server mencoba menggunakan preferensi pemilihan rute yang dipilih untuk menghitung rute. Jika preferensi pemilihan rute menghasilkan error atau latensi yang lebih panjang, error akan ditampilkan. Anda dapat menentukan opsi ini hanya jika travelMode adalah DRIVE atau TWO_WHEELER; jika tidak, permintaan akan gagal.

departureTime

string (Timestamp format)

Opsional. Waktu keberangkatan. Jika Anda tidak menetapkan nilai ini, nilai ini akan ditetapkan secara default ke waktu saat Anda membuat permintaan. Jika Anda menetapkan nilai ini ke waktu yang telah terjadi, permintaan akan gagal.

Stempel waktu dalam format RFC3339 UTC "Zulu", dengan resolusi nanodetik dan maksimal sembilan digit pecahan. Contoh: "2014-10-02T15:01:23Z" dan "2014-10-02T15:01:23.045123456Z".

Isi respons

Jika berhasil, isi respons akan berisi streaming instance RouteMatrixElement.

Cakupan otorisasi

Memerlukan cakupan OAuth berikut:

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

Untuk informasi selengkapnya, lihat Ringkasan OAuth 2.0.