Menghitung rute

Alat compute_routes menampilkan rute antara tempat asal dan tujuan untuk mode perjalanan tertentu. Responsnya mencakup jarak dan durasi rute. Secara default, rute dihitung tanpa lalu lintas live. Pro menambahkan pemilihan rute yang memperhitungkan lalu lintas live dan rute dengan lebih banyak perhentian sementara.

Halaman ini menjelaskan opsi permintaan, termasuk opsi Pro; isi respons; dan cara permintaan ditagih. Untuk skema alat lengkap, lihat referensi compute_routes.

Opsi permintaan

Opsi Deskripsi
origin, destination Wajib. Masing-masing adalah titik jalan: address (alamat yang dapat dibaca manusia atau plus code), place_id, atau lat_lng. Anda dapat menggabungkan format, misalnya alamat untuk tempat asal dan ID Tempat untuk tujuan.
travel_mode Mode transportasi: DRIVE (default), WALK, BICYCLE, atau TRANSIT. Rute WALK masih dalam versi beta dan terkadang mungkin tidak memiliki trotoar atau jalur pejalan kaki yang jelas. Anda harus menampilkan peringatan ini kepada pengguna untuk semua rute jalan kaki yang Anda tampilkan di aplikasi.
routing_preference Cara data lalu lintas digunakan untuk menghitung rute: ROUTING_PREFERENCE_TRAFFIC_UNAWARE (default) atau ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL, yang merupakan opsi Pro. ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL tidak didukung untuk WALK atau BICYCLE. Lihat Pemilihan rute sesuai lalu lintas.
intermediate_waypoints Perhentian yang diurutkan antara tempat asal dan tujuan. Rute akan melewati titik jalan tersebut sesuai urutan yang diberikan. Permintaan dapat menyertakan hingga 10 titik jalan perantara, atau 11 hingga 25 sebagai opsi Pro. Permintaan dengan lebih dari 25 akan menampilkan error INVALID_ARGUMENT. Rute transportasi umum tidak mendukung titik jalan perantara.
departure_time atau arrival_time Waktu keberangkatan dari tempat asal atau kedatangan di tujuan, sebagai stempel waktu RFC 3339. Tetapkan maksimal satu. Nilai defaultnya adalah keberangkatan pada waktu saat ini. Untuk TRANSIT, waktu dapat ditetapkan hingga 7 hari ke belakang atau 100 hari ke depan. Untuk mode perjalanan lainnya, waktu tidak boleh di masa lalu dan dapat ditetapkan hingga 365 hari ke depan.
compute_alternative_routes Jika true, respons akan menyertakan rute alternatif selain rute yang direkomendasikan, jika alternatif tersedia. Nilai defaultnya adalah false.
include_polyline Saat true, setiap rute dalam respons menyertakan encodedPolyline. Default-nya adalah false.
location_bias Lintang dan bujur yang membiaskan cara titik jalan teks di-resolve, misalnya untuk memperjelas alamat.

Opsi Pro

Dua opsi memilih SKU Pro. Permintaan yang menggunakan salah satu atau keduanya akan ditagih berdasarkan SKU Pro:

Opsi Pro Kapan menggunakannya
routing_preference disetel ke ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL Pengguna bertanya tentang lalu lintas, kemacetan, atau waktu perjalanan yang memperhitungkan lalu lintas saat ini. Lihat Pemilihan rute sesuai lalu lintas.
11 hingga 25 intermediate_waypoints Rute memerlukan lebih dari 10 perhentian antara tempat asal dan tujuan.

Semua opsi lainnya ditagih berdasarkan SKU Essentials, termasuk mode perjalanan, pengaturan waktu, rute alternatif, polyline, dan bias lokasi.

Pemilihan rute berbasis lalu lintas

Secara default, rute dihitung tanpa kondisi lalu lintas real-time (ROUTING_PREFERENCE_TRAFFIC_UNAWARE). Setelan ini memiliki latensi terendah. Mode ini sesuai untuk permintaan yang tidak mementingkan atau tidak menerapkan traffic, seperti rute jalan kaki atau perencanaan kasar.

Tetapkan routing_preference ke ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL untuk menghitung rute dan durasinya dengan kondisi lalu lintas saat ini, jika data lalu lintas tersedia. Gunakan alat ini saat pengguna menanyakan durasi perjalanan saat ini. Untuk rute TRANSIT, setelan ini menggunakan data transportasi umum real-time, seperti penundaan dan pembatalan, jika tersedia. Fitur ini tidak didukung untuk rute WALK atau BICYCLE; permintaan tersebut akan menampilkan error INVALID_ARGUMENT. Ini adalah opsi Pro, sehingga permintaan ditagih berdasarkan SKU Pro. Opsi ini juga menambahkan latensi.

Selama GA Terbatas, jika project Anda tidak ada dalam daftar yang diizinkan untuk Pro, opsi ini akan diperlakukan sebagai ROUTING_PREFERENCE_TRAFFIC_UNAWARE. Untuk mengetahui detailnya, lihat Opsi Pro selama GA Terbatas.

Contoh

Permintaan berikut meminta rute mobil yang memperhitungkan lalu lintas dengan satu perhentian sementara dan polyline yang dienkode. SKU ini ditagih berdasarkan SKU Pro:

{
  "method": "tools/call",
  "params": {
    "name": "compute_routes",
    "arguments": {
      "origin": {"address": "Ferry Building, San Francisco, CA"},
      "destination": {"address": "Golden Gate Park, San Francisco, CA"},
      "intermediate_waypoints": [
        {"address": "Palace of Fine Arts, San Francisco, CA"}
      ],
      "travel_mode": "DRIVE",
      "routing_preference": "ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL",
      "include_polyline": true
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}

Respons

Respons berisi routes[], yang diurutkan dari yang paling direkomendasikan hingga yang paling tidak direkomendasikan. Hanya satu rute yang ditampilkan kecuali jika compute_alternative_routes adalah true. Setiap rute mencakup:

  • distanceMeters: Jarak perjalanan rute, dalam meter.
  • duration: Waktu yang diperlukan untuk menempuh rute. Dengan ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL, durasi memperhitungkan kondisi lalu lintas.
  • encodedPolyline: Jalur rute sebagai polyline yang dienkode, jika include_polyline adalah true. Anda dapat menggunakannya untuk menggambar rute di peta dengan Google Maps Platform API lainnya.
  • attribution: Atribusi yang harus Anda tampilkan dengan rute. Lihat Persyaratan atribusi.

Opsi Pro selama GA Terbatas

Selama GA Terbatas, opsi Pro hanya tersedia untuk project dalam daftar yang diizinkan Pro. Jika project Anda belum ada dalam daftar yang diizinkan:

  • ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL diperlakukan sebagai ROUTING_PREFERENCE_TRAFFIC_UNAWARE, dan permintaan ditagih berdasarkan SKU Essentials.
  • Permintaan dengan lebih dari 10 titik jalan perantara akan menampilkan error INVALID_ARGUMENT ("At most 10 intermediate waypoints are supported.").

Untuk meminta akses, lihat Opsi Pro selama GA Terbatas.

Penagihan dan kuota

Setiap permintaan compute_routes adalah satu peristiwa yang dapat ditagih:

Meminta rute alternatif, polyline, waktu keberangkatan atau kedatangan, atau mode perjalanan yang berbeda tidak akan mengubah SKU.

Kuota compute_routes adalah 300 kueri per menit, per project, yang digunakan bersama oleh kedua SKU. Untuk mengetahui harga, lihat Tabel harga utama dan Tabel harga India.

Batas

  • Permintaan dapat menyertakan maksimal 25 titik jalan perantara; 11 hingga 25 adalah opsi Pro. Permintaan dengan jumlah lebih banyak akan menampilkan error INVALID_ARGUMENT.
  • Rute transportasi umum tidak mendukung titik jalan perantara. Permintaan transportasi umum dengan titik jalan perantara akan menampilkan error INVALID_ARGUMENT.
  • ROUTING_PREFERENCE_TRAFFIC_AWARE_OPTIMAL tidak didukung untuk rute jalan kaki atau bersepeda.
  • Untuk rute transportasi umum, waktu keberangkatan dan kedatangan dapat ditetapkan hingga 7 hari ke belakang atau 100 hari ke depan. Untuk mode perjalanan lainnya, waktu keberangkatan tidak boleh di masa lalu dan dapat ditetapkan hingga 365 hari ke depan.
  • Koordinat titik jalan harus berada dalam batas geografis yang valid (lintang dari -90 hingga 90, bujur dari -180 hingga 180).
  • Alat ini tidak menampilkan langkah belokan demi belokan, segmen, atau detail jalur transportasi umum.