

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Rute Layanan Lokasi Amazon
<a name="routes"></a>

![\[Gambaran umum tentang Amazon Location Service Routes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/routesV2/route-banner.png)


Dengan Amazon Location Service Routes, Anda dapat menghitung waktu dan jarak tempuh antara beberapa titik awal dan titik akhir, memvisualisasikan jejak GPS kendaraan yang selaras dengan jalan, dan lebih memahami area yang dapat diservis. Ini membantu mengurangi biaya operasi dan meningkatkan pengalaman pelanggan.

## Fitur
<a name="routes-features"></a>

**Rencanakan jalur rute**  
Hitung rute antara dua lokasi atau lebih, dengan mempertimbangkan berbagai faktor seperti jarak, waktu, dan kondisi jalan. Anda juga dapat melihat rute alternatif untuk set lokasi yang sama.

**Optimasi Rute**  
Optimalkan rute untuk waktu atau jarak, pilih rute tercepat atau terpendek. Anda juga dapat mengurutkan titik arah untuk mengoptimalkan masalah salesman perjalanan.

**Analisis Rute**  
Analisis metrik kinerja seperti waktu tempuh, jarak, atau jumlah pemberhentian untuk memastikan rute memenuhi tujuan yang Anda inginkan.

**Area Layanan**  
Mendefinisikan wilayah geografis yang dapat dilayani dari lokasi tertentu berdasarkan jarak atau batas waktu.

**Biaya Tol**  
Hitung biaya yang terkait dengan infrastruktur tol di rute Anda.

**Penghindaran**  
Batasi perhitungan rute Anda dengan menghindari jalan raya, terowongan, feri, dan jalan tol.

**Batas Kecepatan**  
Temukan batas kecepatan untuk setiap segmen rute, pastikan pengemudi mematuhi peraturan setempat.

![\[Aplikasi yang menggunakan fitur rute Amazon Location Service.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/routesV2/route-demo.png)


## Kasus penggunaan
<a name="routes-usecases"></a>

**Menyediakan rute dan turn-by-turn arah yang efisien**  
Rencanakan rute dari lokasi awal mana pun (alamat, POI, atau koordinat GPS) dan hitung jalur terbaik ke beberapa tujuan, dengan mempertimbangkan dimensi dan batasan kendaraan.  
Untuk informasi selengkapnya, lihat [Hitung rute](calculate-routes.md).

**Optimalkan rute pengiriman**  
Gunakan pengurutan titik arah untuk menyelesaikan Masalah Penjual Perjalanan dan hitung rute optimal ke beberapa tujuan, meminimalkan waktu dan jarak.  
Untuk informasi selengkapnya, lihat [Optimalkan titik arah](actions-optimize-waypoints.md).

**Pastikan pengiriman dilakukan dari gudang terdekat**  
Gunakan Matrix Routing dan Waypoint Sequencing untuk mengidentifikasi rute tercepat dari gudang Anda ke setiap pelanggan, memaksimalkan efisiensi dan meminimalkan biaya.  
Untuk informasi selengkapnya, lihat [Hitung rute](calculate-routes.md) dan [Hitung matriks rute](calculate-route-matrix.md).

**Tingkatkan pengiriman taksi dan berbagi tumpangan**  
Gunakan Matrix Routing untuk mengidentifikasi kendaraan terdekat yang tersedia dan menghitung rute optimal berdasarkan lalu lintas real-time. Ini memastikan kendaraan terdekat mencapai pelanggan secara efisien, mendorong kepuasan pelanggan dan produktivitas bisnis. Lakukan lebih banyak perjalanan, hemat biaya bahan bakar, dan berikan pengalaman layanan yang unggul.  
Lihat informasi selengkapnya di [Hitung rute](calculate-routes.md), [Hitung matriks rute](calculate-route-matrix.md), dan [Hitung isolin](calculate-isolines.md).

**Temukan area layanan**  
Gunakan rute Isoline untuk menentukan jangkauan geografis bisnis Anda, berdasarkan batasan waktu atau jarak. Hal ini memungkinkan bisnis untuk mengidentifikasi pelanggan potensial dan membuat rencana pengiriman. Penyedia layanan kesehatan di rumah dapat memastikan mereka memiliki staf dan sumber daya yang cukup untuk menjangkau semua pasien dalam waktu 15 menit. Isoline membantu mengoptimalkan area layanan, memastikan pengiriman tepat waktu, dan menemukan fasilitas baru.  
Untuk informasi selengkapnya, lihat [Hitung isolin](calculate-isolines.md).

**Jepret jejak GPS ke jalan**  
Sejajarkan jejak GPS ke jalan dan visualisasikan pergerakan kendaraan, memastikan kepatuhan rute dan kepatuhan terhadap peraturan. Manajer armada dapat melihat apakah kendaraan tetap berada di rute yang direncanakan dan mengidentifikasi penyimpangan. Verifikasi bahwa pengemudi mengikuti pedoman, melihat inefisiensi, dan memastikan kepatuhan terhadap peraturan. Memperbaiki ketidakakuratan dan variasi GPS, dan menyajikan pandangan realistis tentang aktivitas kendaraan. Memungkinkan pengambilan keputusan yang lebih baik seputar pengoptimalan rute, perilaku pengemudi, dan manajemen armada.  
Untuk informasi selengkapnya, lihat [Snap ke Jalan](snap-to-roads.md).

## APIs
<a name="routes-apis"></a>

Tabel ini memberikan gambaran umum tentang Amazon Location Service utama APIs untuk perencanaan rute dan pemrosesan data berbasis lokasi. Setiap API menawarkan fungsionalitas unik, seperti menghitung rute, mengoptimalkan titik arah, dan menjentikkan jejak GPS ke jalan untuk pelacakan yang akurat.


**APIs**  

| Nama API | Deskripsi | Baca lebih lanjut | 
| --- | --- | --- | 
| Hitung Rute | Hitung jarak perjalanan, waktu tempuh, dan turn-by-turn arah antara titik awal dan beberapa tujuan yang memperhitungkan pembatasan kendaraan, dan lalu lintas waktu nyata. | [Hitung rute](calculate-routes.md) | 
| Hitung Matriks Rute | Hitung jarak dan waktu rute antara satu set titik keberangkatan dan satu set tujuan, dengan memperhitungkan lalu lintas waktu nyata. | [Hitung matriks rute](calculate-route-matrix.md) | 
| Hitung Isolines | Identifikasi wilayah geografis yang dapat dicapai dalam waktu atau jarak tertentu berdasarkan mode perjalanan Anda. | [Hitung isolin](calculate-isolines.md) | 
| Optimalkan Waypoint | Temukan urutan efisien untuk melakukan perjalanan ke beberapa tujuan, mengurangi waktu dan jarak perjalanan sambil memperhitungkan faktor-faktor seperti kendala lalu lintas dan kendaraan. | [Cara mengoptimalkan titik arah untuk rute](optimize-waypoints.md) | 
| Snap ke Jalan | Cocokkan jejak GPS ke segmen jalan terdekat, untuk meningkatkan akurasi pelacakan kendaraan dan visualisasi rute. | [Snap ke Jalan](snap-to-roads.md) | 

# Konsep rute
<a name="routes-concepts"></a>

Konsep Routes di Amazon Location Service menyediakan kerangka kerja yang kuat untuk merencanakan dan mengoptimalkan perjalanan, baik untuk navigasi sederhana maupun logistik yang kompleks. Rute mencakup berbagai komponen, seperti titik arah, kaki, langkah, dan bentang, masing-masing berkontribusi pada perincian dan fleksibilitas perhitungan rute. Dengan memanfaatkan API Rute, Anda dapat menghitung jarak perjalanan, memperkirakan waktu perjalanan, dan mengoptimalkan perjalanan multi-stop. Selain itu, fitur seperti geometri rute, kesadaran lalu lintas, batas kecepatan, biaya tol, dan pengkodean polyline fleksibel meningkatkan kemampuan untuk visualisasi, analisis, dan efisiensi operasional. Bagian ini mencakup terminologi, praktik terbaik, dan pola penggunaan terperinci, memandu Anda melalui penerapan solusi rute yang efektif untuk navigasi, pengiriman, layanan lapangan, dan banyak lagi.

**Topics**
+ [Terminologi Rute](routes-terminology.md)
+ [Dimana (asal, tujuan, titik jalan, dan jejak)](concepts-where.md)
+ [Kapan (keberangkatan dan kedatangan)](concepts-when.md)
+ [Bagaimana (mode perjalanan, penghindaran, dan pengecualian)](concepts-how.md)
+ [Kesadaran lalu lintas](concepts-traffic-awareness.md)
+ [Optimalkan urutan rute dan titik arah](optimize-route-waypoint.md)
+ [Jadwal dan pemberitahuan pengemudi](driver-schedule-notices.md)

# Terminologi Rute
<a name="routes-terminology"></a>

**Rute**  
Rute memberikan rincian untuk bepergian dari posisi keberangkatan melalui posisi waypoint ke tujuan. Ini termasuk jarak tempuh, waktu tempuh, geometri rute, batas kecepatan, bentang, dan atribut lainnya.

**Matriks Rute**  
Matriks yang mewakili jarak perjalanan dan waktu perjalanan dari serangkaian asal ke serangkaian tujuan. Ini berguna sebagai masukan untuk perencanaan rute atau aplikasi pengoptimalan.

**Titik arah**  
Titik arah adalah pemberhentian perantara di sepanjang rute dari titik keberangkatan ke tujuan. Rute mengikuti urutan persinggahan seperti yang ditentukan dalam permintaan.

**Kaki**  
Sebuah kaki mewakili perjalanan antara dua posisi berturut-turut pada suatu rute. Jika posisi off-road, mereka dipindahkan ke jalan terdekat. Rute tanpa titik arah terdiri dari satu kaki. Rute dengan satu atau lebih titik arah memiliki banyak kaki, dengan masing-masing kaki mewakili perjalanan dari satu titik arah ke titik berikutnya. Kaki tertentu, seperti yang melibatkan feri, berisi informasi spesifik yang berkaitan dengan jenis kaki itu.

**Langkah**  
Langkah adalah segmen dalam satu kaki, memberikan rincian ringkasan untuk bagian perjalanan itu. Jenis langkah meliputi:  
+ **Langkah Default** — Langkah-langkah dasar dengan instruksi yang dapat dibaca manusia, cocok untuk aplikasi web yang menampilkan ikhtisar rute.
+ **Turn-by-Turn Langkah - Langkah-langkah** terperinci yang cocok untuk turn-by-turn aplikasi, memberikan instruksi granular.
+ **Sebelum Langkah Perjalanan** — Langkah-langkah yang harus diselesaikan sebelum memulai perjalanan. Contoh: naik feri.
+ **After Travel** Steps — Langkah-langkah yang harus diselesaikan setelah mencapai akhir perjalanan. Contoh: de-boarding feri.

**Rentang**  
Rentang mewakili bentangan jalan yang terus menerus yang berbagi serangkaian atribut yang konsisten. Rentang baru dibuat di sepanjang rute setiap kali salah satu atribut yang diminta berubah.

**Segment**  
Segmen adalah bagian jalan yang dapat dilayari, biasanya direpresentasikan sebagai peregangan linier.

**Geometri Rute**  
Geometri rute menggambarkan jalur rute untuk visualisasi, analisis, atau penggunaan lainnya. Geometri setiap kaki rute dapat direpresentasikan sebagai polyline yang dikompresi dan dikodekan atau sebagai string garis sederhana.

**Polyline Fleksibel**  
Format polyline yang ringkas dan dikodekan untuk mewakili geometri. Direkomendasikan untuk membatasi ukuran respons dan dioptimalkan untuk decoding sisi klien.

**String Garis Sederhana**  
Format LineString GeoJSON yang mewakili geometri. Format ini menghasilkan muatan respons yang lebih besar dan merupakan susunan koordinat terurut yang dapat digunakan untuk memplot rute di peta.

# Dimana (asal, tujuan, titik jalan, dan jejak)
<a name="concepts-where"></a>

Menentukan lokasi untuk perhitungan rute, termasuk di mana rute dimulai, berakhir, dan perhentian menengah (atau lokasi yang akan dilewati).


**Menentukan di mana untuk perhitungan rute**  

| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap ke Jalan | 
| --- | --- | --- | --- | --- | --- | --- | 
| Asal | Posisi awal rute. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | 
| Titik arah | Posisi menengah untuk dimasukkan di sepanjang rute. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | 
| Tujuan | Posisi akhir rute. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | 
| Melacak poin | Jejak GPS yang mencakup informasi posisi historis yang dipancarkan oleh mode perjalanan. Posisi ini mencakup ketidakakuratan dan kesenjangan GPS yang khas ketika perangkat tidak dapat memancarkan atau merekam informasi ini. | Tidak | Tidak | Tidak | Tidak | Ya, dengan opsi | 

## Opsi yang dapat dikonfigurasi
<a name="configurable-options"></a>

Menyediakan opsi untuk menyesuaikan perilaku perutean untuk titik arah, asal, dan tujuan.

**Opsi titik arah**


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| AvoidActionsForDistance | Menghindari tindakan untuk jarak yang disediakan. Biasanya digunakan untuk memastikan pengemudi memiliki cukup waktu untuk membuat keputusan di dekat titik arah. | Ya | Tidak | Tidak | Tidak | Tidak | 
| Hindari UTurns | Menentukan apakah U-turn diperbolehkan di waypoint. | Ya | Tidak | Tidak | Tidak | Tidak | 
| Menuju | GPS menuju posisi waypoint. | Ya | Tidak | Tidak | Ya | Tidak | 
| Pencocokan | Opsi untuk mengonfigurasi pencocokan posisi yang disediakan ke jaringan jalan. | Ya, dengan opsi | Tidak | Tidak | Tidak | Tidak | 
| SideOfStreet | Menentukan sisi jalan untuk mencocokkan posisi waypoint. | Ya, dengan opsi | Tidak | Tidak | Ya, dengan opsi | Tidak | 
| StopDuration | Durasi untuk berhenti di posisi waypoint. | Ya | Tidak | Tidak | Tidak | Tidak | 
| Posisi | Bujur dan Lintang untuk titik jalan. | Ya | Tidak | Tidak | Ya | Tidak | 
| PassThrough | Menentukan apakah titik jalan harus diperlakukan sebagai pemberhentian atau dilewati. | Ya | Tidak | Tidak | Tidak | Tidak | 
| Id | String pengidentifikasi untuk titik arah. | Tidak | Tidak | Tidak | Ya | Tidak | 
| AccessHours | Menentukan jam akses untuk mengunjungi tujuan. | Tidak | Tidak | Tidak | Ya | Tidak | 
| AppointmentTime | Waktu janji temu yang dijadwalkan di titik jalan. | Tidak | Tidak | Tidak | Ya | Tidak | 
| ServiceDuration | Waktu layanan di waypoint, seperti durasi janji temu. | Tidak | Tidak | Tidak | Ya | Tidak | 
| Sebelum | Mendefinisikan titik arah mana yang harus dikunjungi setelah yang satu ini. | Tidak | Tidak | Tidak | Ya | Tidak | 

**Opsi asal**


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| AvoidActionsForDistance | Menghindari tindakan untuk jarak yang disediakan. | Ya | Ya | Ya | Tidak | Tidak | 
| Hindari UTurns | Menentukan apakah U-turn diizinkan di asal. | Ya | Tidak | Tidak | Tidak | Tidak | 
| Menuju | GPS mengarah pada posisi asal. | Ya | Ya | Ya | Tidak | Tidak | 
| Pencocokan | Opsi untuk mencocokkan posisi asal dengan jaringan jalan. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | Tidak | 
| SideOfStreet | Menentukan sisi jalan untuk mencocokkan posisi asal. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | Tidak | 
| Id | String pengidentifikasi untuk asal. | Tidak | Tidak | Ya | Tidak | Tidak | 

**Opsi tujuan**


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| AvoidActionsForDistance | Menghindari tindakan untuk jarak yang disediakan di tempat tujuan. | Ya | Ya | Ya | Tidak | Tidak | 
| Hindari UTurns | Menentukan apakah U-turn diperbolehkan di tujuan. | Ya | Tidak | Tidak | Tidak | Tidak | 
| Menuju | GPS menuju posisi tujuan. | Ya | Ya | Ya | Ya | Tidak | 
| Pencocokan | Pilihan untuk mencocokkan posisi tujuan dengan jaringan jalan. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | Tidak | 
| SideOfStreet | Menentukan sisi jalan untuk mencocokkan posisi tujuan. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | 
| StopDuration | Durasi untuk singgah di tujuan. | Ya | Tidak | Tidak | Tidak | Tidak | 
| Id | String pengenal untuk tujuan. | Tidak | Tidak | Ya | Tidak | Tidak | 
| AccessHours | Menentukan jam akses untuk mengunjungi tujuan. | Tidak | Tidak | Ya | Tidak | Tidak | 
| AppointmentTime | Waktu janji temu yang dijadwalkan di tempat tujuan. | Tidak | Tidak | Ya | Tidak | Tidak | 
| ServiceDuration | Waktu layanan di tempat tujuan, seperti durasi janji temu. | Tidak | Tidak | Ya | Tidak | Tidak | 

# Kapan (keberangkatan dan kedatangan)
<a name="concepts-when"></a>

Menentukan waktu untuk perhitungan rute. Waktu tidak hanya menentukan stempel waktu untuk keberangkatan dan kedatangan tetapi juga mempengaruhi data lalu lintas yang akan digunakan.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Waktu Keberangkatan | Waktu keberangkatan dari Asal. Jika tidak ada waktu kedatangan atau keberangkatan yang disediakan, informasi lalu lintas dinamis tidak digunakan, dan hanya kecepatan arus bebas berdasarkan lalu lintas historis yang diterapkan. | Ya | Ya | Ya | Ya | Tidak | 
| Berangkat Sekarang | Menggunakan waktu saat ini sebagai waktu keberangkatan dari Asal. | Ya | Ya | Ya | Tidak | Tidak | 
| Waktu Kedatangan | Waktu kedatangan di tempat tujuan. Jika tidak ada waktu kedatangan atau keberangkatan yang disediakan, informasi lalu lintas dinamis tidak digunakan, dan hanya kecepatan arus bebas berdasarkan lalu lintas historis yang diterapkan. | Ya | Tidak | Ya | Tidak | Tidak | 

# Bagaimana (mode perjalanan, penghindaran, dan pengecualian)
<a name="concepts-how"></a>

Gunakan opsi berikut untuk menentukan mode perjalanan dan fitur terkait yang akan digunakan untuk perhitungan rute.

**Opsi mode perjalanan**

Menentukan moda transportasi saat menghitung rute. Pengaturan ini mempengaruhi perkiraan kecepatan perjalanan, kompatibilitas jalan, dan potensi penggunaan feri jika diperlukan.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Car | Mode perjalanan mobil. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya | Ya | 
| Skuter | Mode perjalanan skuter. | Ya, dengan opsi | Ya | Ya, dengan opsi | Ya | Ya | 
| Pejalan kaki | Mode perjalanan berjalan. | Ya, dengan opsi | Ya | Ya | Ya, dengan opsi | Ya | 
| Truk | Mode perjalanan truk. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | 

**Opsi penghindaran, pengecualian, dan izinkan**

Menentukan apakah serangkaian fitur tertentu harus disertakan, dikecualikan, atau dihindari selama perhitungan rute.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Penghindaran | Fitur yang dihindari berdasarkan kasus terbaik. Jika router tidak dapat menemukan rute yang valid, penghindaran akan diabaikan, dan pemberitahuan akan menunjukkan bahwa penghindaran tidak dapat dihormati. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | 
| Pengecualian | Fitur yang dikecualikan secara ketat. Jika router tidak dapat menemukan rute yang valid dengan opsi pengecualian, tidak ada rute yang dikembalikan. | Ya, dengan opsi | Ya, dengan opsi | Tidak | Tidak | Tidak | 
| Izinkan | Fitur yang perlu diaktifkan secara eksplisit. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | 

**Daftar penghindaran**

Daftar fitur yang dihindari berdasarkan kasus terbaik. Jika router tidak dapat menemukan rute yang valid, penghindaran akan diabaikan, dan pemberitahuan akan menunjukkan bahwa penghindaran tidak dapat dihormati.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Area | Area yang harus dihindari dengan pengecualian. | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Ya, dengan opsi | Tidak | 
| Jalan Raya Akses Terkendali | Jalan berkecepatan tinggi dengan titik masuk terbatas. | Ya | Ya | Ya | Ya | Tidak | 
| Kereta Antar-Jemput Mobil | Kereta mengangkut kendaraan melalui terowongan. | Ya | Ya | Ya | Tidak | Tidak | 
| Jalan Kotoran | Jalan tidak beraspal dengan permukaan alami. | Ya | Ya | Ya | Ya | Tidak | 
| Feri | Perahu yang membawa kendaraan melintasi badan air | Ya | Ya | Ya | Tidak | Tidak | 
| Kapal Feri | Feri mengangkut kendaraan di rel kereta api. | Tidak | Tidak | Ya | Ya | Tidak | 
| Feri Rail | Feri mengangkut kendaraan di rel kereta api. | Tidak | Tidak | Ya | Ya | Tidak | 
| Penutupan Musiman | Jalan ditutup selama musim-musim tertentu. | Ya | Tidak | Ya | Tidak | Tidak | 
| Terowongan | Lorong bawah tanah untuk lalu lintas kendaraan. | Ya | Ya | Ya | Ya | Tidak | 
| Jalan Tol | Jalan yang membutuhkan pembayaran untuk akses. | Ya | Ya | Ya | Ya | Tidak | 
| Transponder Tol | Menghindari jalan di mana transponder tol adalah satu-satunya alat pembayaran. | Ya | Tidak | Ya | Tidak | Tidak | 
| Putaran U | Poin yang memungkinkan kendaraan berbelok ke arah sebaliknya. | Ya | Ya | Ya | Ya | Tidak | 
| Kategori Zone | Kategori zona harus dihindari. | Ya | Ya | Ya | Tidak | Tidak | 

**Daftar pengecualian**

Daftar fitur yang dikecualikan secara ketat. Jika router tidak dapat menemukan rute yang valid dengan opsi pengecualian, tidak ada rute yang dikembalikan.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Negara-negara | Kode Negara 2 atau Kode Negara 3 untuk negara yang harus benar-benar dikecualikan dari perhitungan rute. | Ya | Ya | Tidak | Ya | Tidak | 

**Daftar Izinkan**

Daftar fitur yang perlu diaktifkan secara eksplisit untuk perhitungan rute.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| HOV | Memungkinkan penggunaan jalur kendaraan hunian tinggi untuk perhitungan rute. | Ya | Ya | Ya | Tidak | Tidak | 
| PANAS | Memungkinkan penggunaan jalur tol hunian tinggi untuk perhitungan rute. | Ya | Ya | Ya | Tidak | Tidak | 

# Kesadaran lalu lintas
<a name="concepts-traffic-awareness"></a>

Menentukan jenis informasi terkait lalu lintas yang digunakan selama perhitungan rute. Lalu lintas arus mewakili kemacetan, tidak termasuk kemacetan terkait insiden jangka panjang. Keakuratan data lalu lintas arus menurun dari waktu ke waktu, membuat data lalu lintas historis lebih dapat diandalkan untuk peristiwa masa lalu.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To Road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Penggunaan | Mengaktifkan atau menonaktifkan data lalu lintas selama perhitungan rute. Ketika diaktifkan, jika`DepartureTime`,`ArrivalTime`, atau tidak `DepartNow` disediakan, hanya penutupan jangka panjang yang akan dipertimbangkan. Jika tidak, jika waktu disediakan, semua data lalu lintas diperhitungkan. | Ya | Ya | Ya | Ya | Tidak | 
| FlowEventThresholdOverride | Durasi dalam detik di mana peristiwa lalu lintas arus dianggap valid. Meskipun valid, data lalu lintas arus akan digunakan di atas data lalu lintas historis. | Ya | Ya | Ya | Tidak | Tidak | 

# Optimalkan urutan rute dan titik arah
<a name="optimize-route-waypoint"></a>

## Optimalkan perutean
<a name="optimize-routing"></a>

Kriteria optimasi untuk saat menghitung rute. Ini bisa menjadi rute tercepat yang diukur berdasarkan waktu atau rute terpendek yang diukur berdasarkan jarak.


| Opsi | Deskripsi | Pengukuran | 
| --- | --- | --- | 
| Rute Tercepat | Hitung rute tercepat, dengan fokus pada meminimalkan waktu perjalanan. Ini memperhitungkan kondisi lalu lintas, batas kecepatan jalan, dan faktor lainnya. | Waktu | 
| Rute Terpendek | Hitung rute terpendek, meminimalkan jarak yang ditempuh. Ini sering digunakan ketika jarak adalah faktor kunci, seperti mengurangi biaya bahan bakar atau emisi. | Jarak | 

## Optimalkan titik arah
<a name="optimize-waypoint"></a>

Kriteria pengoptimalan untuk mengurutkan titik arah dalam suatu rute. 

# Jadwal dan pemberitahuan pengemudi
<a name="driver-schedule-notices"></a>

## Jadwal pengemudi
<a name="driver-schedule"></a>

Pengaturan driver untuk menentukan jadwal kerja dan istirahat. Ini wajib untuk banyak yurisdiksi.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Siklus istirahat khusus | Siklus istirahat ditentukan oleh durasi drive untuk ditindaklanjuti dengan durasi istirahat. Sejumlah siklus tersebut dapat disediakan. | Ya, dengan opsi | Tidak | Tidak | Tidak | Tidak | 
| Siklus istirahat panjang dan siklus istirahat pendek | Siklus istirahat ditentukan oleh siklus pendek dan siklus panjang. Durasi drive pendek diikuti oleh durasi drive istirahat pendek. Drive pendek dapat diulang sampai durasi drive yang panjang tercapai, pada titik mana durasi istirahat yang lama diberlakukan. | Tidak | Tidak | Tidak | Ya, dengan opsi | Tidak | 

## Pemberitahuan, peringatan, dan kendala
<a name="notices-warnings-constraints"></a>

Informasi tambahan yang memberikan wawasan tentang keputusan yang dibuat selama perhitungan rute.


| Parameter | Deskripsi | Rute | Rute Matriks | Isolin | Optimalkan Waypoint | Snap To road | 
| --- | --- | --- | --- | --- | --- | --- | 
| Pemberitahuan | Pemberitahuan tentang perhitungan rute. Selain itu dapat mencakup dampak untuk pemberitahuan yang menunjukkan apakah hasil perhitungan rute dapat digunakan apa adanya atau perlu diperiksa secara manual sebelum digunakan. | Ya, dengan detail | Tidak | Tidak | Tidak | Ya | 
| FailedConstraints | Kendala yang diberikan dalam permintaan yang tidak dapat dipenuhi, yang menyebabkan kegagalan masalah optimasi. | Tidak | Tidak | Tidak | Ya, dengan detail | Tidak | 

# Rute APIs
<a name="choose-routes-apis"></a>

Rute menyediakan kemampuan untuk menghitung jalur yang dioptimalkan antar lokasi. Fitur-fitur ini mendukung aplikasi yang membutuhkan perencanaan logistik, perhitungan jarak, dan pengoptimalan rute. Pengguna juga dapat mengambil titik lokasi ke jalan untuk meningkatkan akurasi. Untuk informasi lebih lanjut, Lihat[Rute Layanan Lokasi Amazon](routes.md).
+ **CalculateIsolines**: Menghasilkan isolin berdasarkan waktu atau jarak tempuh, berguna untuk menentukan area layanan atau zona jangkauan. Untuk informasi lebih lanjut, Lihat[Hitung isolin](calculate-isolines.md).
+ **CalculateRouteMatrix**Menyediakan matriks jarak dan waktu perjalanan antara berbagai asal dan tujuan, mendukung logistik dan perencanaan perjalanan. Untuk informasi lebih lanjut, Lihat[Hitung matriks rute](calculate-route-matrix.md).
+ **CalculateRoutes**: Menghitung rute yang dioptimalkan untuk point-to-point atau navigasi multi-stop, termasuk preferensi perutean yang dapat disesuaikan. Untuk informasi lebih lanjut, Lihat[Hitung rute](calculate-routes.md).
+ **OptimizeWaypoints**: Mengoptimalkan urutan titik arah untuk rute perjalanan yang paling efisien, meminimalkan jarak atau waktu. Untuk informasi lebih lanjut, Lihat[Optimalkan titik arah](actions-optimize-waypoints.md).
+ **SnapToRoads**: Menyelaraskan koordinat ke jalur jalan terdekat, meningkatkan akurasi GPS dengan menjentikkan titik ke jalan yang diketahui. Untuk informasi lebih lanjut, Lihat[Snap ke Jalan](snap-to-roads.md).

Tabel berikut menyajikan sejumlah kasus penggunaan bisnis yang paling baik diselesaikan dengan Rute APIs.


| **Kebutuhan bisnis** | **API yang berguna** | **Contoh** | 
| --- | --- | --- | 
| **Hitung jarak dan waktu perjalanan untuk asal dan tujuan**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan polyline rute untuk asal dan tujuan**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute belokan demi arah belokan untuk asal dan tujuan**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute dengan berangkat sekarang**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute jika Anda berangkat pada waktu tertentu**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute jika Anda perlu tiba pada waktu tertentu**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute terpendek**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute tercepat**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute alternatif**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute yang sadar lalu lintas**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute dengan penghindaran seperti tol, belok balik, feri, jalan raya, terowongan, dan lainnya**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Temukan rute dengan penghindaran khusus dengan melewati polyline atau poligon**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Hitung biaya tol**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` | [Hitung biaya tol](calculate-toll-cost.md) | 
| **Temukan batas kecepatan rentang jalan pada rute**Mendukung hal berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRoutes` |  | 
| **Gambarlah rute di peta**Mendukung penandaan titik arah. | `GetTile`dan `GetStyleDescriptor` dengan rendering engine (MapLibre) dengan rute Calculate  |  | 
| **Hitung matriks rute jarak dan waktu untuk beberapa asal dan tujuan**Mendukung hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRouteMatrix` | [Cara menghitung matriks rute jarak dan waktu untuk beberapa asal dan tujuan](calculate-route-matrix-distance.md) | 
| **Hitung matriks rute dengan penghindaran**Mendukung hal berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/choose-routes-apis.html) | `CalculateRouteMatrix` | [Cara menghitung matriks rute dengan penghindaran](calculate-route-matrix-with-avoidance.md) | 
| **Hitung area layanan berdasarkan waktu (isokron)**Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | `CalculateIsolines` | [Cara menghitung area layanan berdasarkan rentang waktu](calculate-service-area-based-on-time.md) | 
| **Hitung area layanan berdasarkan jarak (isodistance)**Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | `CalculateIsolines` |  | 
| **Hitung area layanan dengan penghindaran**Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | `CalculateIsolines` |  | 
|  **Hitung area layanan dari arah sebaliknya** Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | `CalculateIsolines` |  | 
|  **Hitung area layanan untuk multi-rentang waktu atau jarak** Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | `CalculateIsolines` |  | 
| **Optimalkan titik arah untuk rute (masalah salesman perjalanan)** Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | `OptimizeWaypoint` | [Cara mengoptimalkan titik arah untuk rute](optimize-waypoints.md) | 
| **Optimalkan titik arah untuk rute dengan kesadaran lalu lintas** Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter.  | `OptimizeWaypoint` |  | 
| **Optimalkan titik arah untuk rute dengan kesadaran jam akses** Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter. | `OptimizeWaypoint` |  | 
| **Cocokkan jejak GPS ke jaringan jalan**Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter. | Jepret ke jalan  | [Cara mencocokkan jejak GPS ke jaringan jalan](how-to-match-gps-traces.md) | 
| **Visualisasikan jejak GPS yang cocok di peta**Mendukung mode perjalanan, seperti truk, pejalan kaki, mobil, dan skuter. | `GetStyleDescriptor`dengan rendering engine (MapLibre) dengan Snap to road  |  | 

# Hitung rute
<a name="calculate-routes"></a>

Routes API menghitung rute antara dua atau lebih lokasi dengan atau tanpa penghindaran untuk mode perjalanan yang berbeda seperti mobil, truk, skuter, dan pejalan kaki. Dengan API ini, Anda dapat menyesuaikan opsi perutean dan meminta informasi terkait rute tambahan untuk memenuhi kebutuhan spesifik. API ini mendukung turn-by-turn navigasi dan menyesuaikan perhitungan rute dengan menerapkan parameter seperti menghindari jalan tol, jalan raya, atau feri. API juga mengembalikan batas kecepatan dan biaya tol.

Untuk informasi selengkapnya, lihat [CalculateRoutes](https://docs.aws.amazon.com/location/latest/APIReference/API_CalculateRoutes.html)di *Referensi API Amazon Location Service*.

Misalnya permintaan, respons, cURL, dan perintah CLI untuk API ini, lihat [Cara menggunakan Menghitung](https://docs.aws.amazon.com/location/latest/developerguide/calculate-routes-how-to.html) rute.

![\[Gambaran umum tentang Amazon Location Service Routes.\]](http://docs.aws.amazon.com/id_id/location/latest/developerguide/images/routesV2/P2P-Turn-by-turn-navigation.gif)


## Kasus penggunaan
<a name="use-cases"></a>
+ **Tampilkan detail geografis pada peta rute:** Gunakan fitur pemetaan lanjutan untuk memvisualisasikan rute terperinci dengan informasi geografis yang kaya, termasuk landmark, medan, dan infrastruktur perkotaan. Meningkatkan pengambilan keputusan dengan memungkinkan pengguna untuk melihat rute yang jelas dari titik awal mereka ke tujuan mereka. Fitur ini dapat mendukung navigasi, perencanaan, dan berbagai skenario logistik, dan menampilkan rute untuk mode perjalanan seperti mobil, truk, skuter, dan pejalan kaki. Sesuaikan rute dengan menambahkan elemen seperti penghindaran atau perhitungan tol.
+ **Tampilkan turn-by-turn navigasi:** Menyediakan dukungan navigasi yang mulus di web dan perangkat seluler. Pengguna dapat mengakses turn-by-turn arah, memastikan perjalanan yang efisien. Kedua platform dapat memanfaatkan instruksi navigasi untuk menawarkan rute perjalanan pribadi atau bisnis, termasuk batas kecepatan.
+ **Hitung biaya tol di sepanjang rute:** Masukkan perhitungan biaya tol ke dalam perencanaan rute untuk memberikan perkiraan harga yang akurat untuk rute yang mencakup jalan tol, jembatan, atau terowongan. Menampilkan biaya tol di muka untuk membantu pengemudi dan perencana membuat keputusan yang hemat biaya dan menghindari tol bila diperlukan.
+ **Pastikan kepatuhan terhadap batas kecepatan:** Integrasikan data batas kecepatan untuk membantu pengemudi tetap berada dalam batas hukum, mengurangi risiko denda, dan mempromosikan mengemudi yang lebih aman dan hemat bahan bakar. Logistik dan manajemen armada juga dapat memperoleh manfaat dengan memantau kepatuhan kecepatan secara real time.
+ **Membantu solusi perutean barang dan kendaraan:** Sederhanakan operasi perutean barang dan kendaraan dengan mengintegrasikan rute, navigasi, dan kemampuan pelacakan ke portal logistik. Rencanakan rute secara efisien untuk beberapa pengiriman, lacak pengiriman secara real-time, dan kelola biaya bahan bakar melalui perutean yang lebih baik.

## Pahami permintaannya
<a name="understanding-request"></a>

**catatan**  
 Untuk pelanggan di `ap-southeast-1` dan`ap-southeast-5`, bidang permintaan dan respons yang didukung mungkin berbeda. Lihat [Referensi CalculateRoutes API](https://docs.aws.amazon.com/location/latest/APIReference/API_CalculateRoutes.html) untuk detailnya. 

Permintaan membutuhkan `Origin` dan `Destination` parameter, sementara parameter opsional seperti `Allow``Avoid`,, dan `Traffic` menyesuaikan rute untuk memenuhi kebutuhan dan kendala tertentu.

**Asal**  
Posisi awal rute di bujur dan lintang.

**Destinasi**  
Posisi akhir rute.

**Titik arah**  
Posisi menengah untuk memasukkan sepanjang rute antara posisi awal dan akhir.

**OptimizeRoutingFor**  
Kriteria optimasi untuk rute, seperti tercepat atau terpendek.

**LegGeometryFormat**  
Format geometri dikembalikan untuk setiap kaki rute.

**Hindari**  
Fitur yang harus dihindari selama perhitungan rute, diabaikan jika tidak ada rute alternatif yang ditemukan.

**Lalu lintas**  
Opsi terkait lalu lintas yang memengaruhi perhitungan rute.

**Tol**  
Opsi terkait tol yang memengaruhi perhitungan rute dan biaya tol.

**LegAdditionalFeatures**  
Fitur yang dapat diaktifkan dalam respons untuk setiap kaki perjalanan.

**SpanAdditionalFeatures**  
Fitur rentang yang dapat diaktifkan dalam respons untuk setiap kaki perjalanan.

## Pahami tanggapannya
<a name="understanding-response"></a>

Respons memberikan rincian rute seperti kaki perjalanan, pemberitahuan tentang perhitungan rute, dan informasi ringkasan termasuk jarak dan durasi.

**Rute**  
Array rute yang berisi kaki dan properti terkait.

**Pemberitahuan**  
Peringatan atau pesan informasi tentang rute.

**LegGeometryFormat**  
Menentukan format geometri rute ini.

### Detail kaki
<a name="leg-details"></a>

Setiap kaki perjalanan dapat berupa jenis Feri, Pejalan Kaki, atau Kendaraan tergantung pada moda transportasi. Sementara setiap kaki mengandung sifat agnostik untuk modus transportasi, properti spesifik dapat ditemukan di bawah:

**FerryLegDetails**  
Sifat khusus feri untuk kaki.

**VehicleLegDetails**  
Properti khusus kendaraan untuk kaki.

**PedestrianLegDetails**  
Sifat khusus pejalan kaki untuk kaki.

### Langkah-langkah
<a name="steps"></a>

Setiap kaki perjalanan dibagi menjadi langkah-langkah yang menggambarkan tindakan untuk bagian-bagian dari rute. Langkah dapat berupa Default, cocok untuk aplikasi dasar, atau TurnByTurn, cocok untuk turn-by-turn navigasi. Setiap langkah berisi properti agnostik ke tipe langkah, seperti durasi dan jarak, dan properti spesifik lainnya seperti ExitStepDetails, yang hanya berlaku untuk langkah keluar.

**BeforeTravelSteps**  
Langkah-langkah yang harus dilakukan sebelum memulai perjalanan.

**TravelSteps**  
Langkah-langkah yang harus dilakukan selama perjalanan.

**AfterTravelSteps**  
Langkah-langkah yang harus dilakukan setelah menyelesaikan perjalanan.

### Rentang
<a name="spans"></a>

Setiap kaki perjalanan dapat dibagi menjadi bentang. Rentang adalah bagian dari kaki dengan nilai yang sama untuk himpunan yang diminta`SpanAdditionalFeatures`. Bentang dibagi berdasarkan properti jalan seperti`SpeedLimit`, nama jalan, atau wilayah. Rentang yang dikembalikan dapat digunakan untuk memvisualisasikan atribut jalan dan informasi terkait akses.

# Hitung biaya tol
<a name="calculate-toll-cost"></a>

Topik ini memberikan gambaran umum tentang bidang dan definisi yang terkait dengan penghitungan biaya tol. Dengan menggunakan bidang ini, Anda dapat menentukan parameter seperti metode pembayaran, mata uang, dan karakteristik kendaraan untuk menyesuaikan perhitungan biaya tol.


| Nama bidang | Rute | 
| --- | --- | 
| Transponder | Ya, dengan opsi | 
| Sketsa | Ya, dengan opsi | 
| Mata Uang | Ya, dengan opsi | 
| EmissionType | Ya, dengan opsi | 
| VehicleCategory | Ya, dengan opsi | 

## Definisi
<a name="definitions"></a>

Bagian ini memberikan definisi singkat untuk setiap bidang yang digunakan dalam perhitungan biaya tol.

****Transponder****  
Transponder adalah metode pembayaran untuk tol, berpotensi menghasilkan harga yang berbeda dibandingkan dengan metode pembayaran lainnya.

****Sketsa****  
Sketsa adalah bentuk penetapan harga jalan. Ketika pengguna memiliki sketsa yang diperlukan, tidak diperlukan pembayaran tol tambahan.

****Mata uang****  
Mata uang di mana biaya tol dilaporkan. Selain mata uang lokal, mata uang yang dikonversi disertakan, yang juga memengaruhi mata uang yang digunakan dalam ringkasan tol dalam respons.

****EmissionType****  
Jenis emisi kendaraan, digunakan untuk menghitung biaya tol berdasarkan emisi kendaraan.

****VehicleCategory****  
Subkategori kendaraan digunakan untuk perhitungan biaya tol.

# Memahami langkah-langkah rute
<a name="understanding-route-steps"></a>

Bagian ini mendefinisikan berbagai tindakan dan langkah yang perlu diambil untuk menyelesaikan perjalanan. Langkah-langkah rute bervariasi menurut mode perjalanan dan memberikan panduan untuk aplikasi ikhtisar dan turn-by-turn navigasi terperinci.

## Ikhtisar langkah rute
<a name="route-steps-overview"></a>

Jenis langkah rute berikut menentukan tindakan yang diperlukan untuk menyelesaikan kaki rute, bervariasi menurut mode perjalanan dan tahap perjalanan.


| **Jenis langkah** | **Deskripsi** | 
| --- | --- | 
| Default steps | Langkah-langkah dasar memberikan instruksi yang dapat dibaca manusia, sering digunakan dalam aplikasi berbasis web untuk menawarkan ikhtisar rute. | 
| Turn by turn steps | Langkah-langkah terperinci untuk membuat aplikasi turn-by-turn navigasi, menawarkan arah yang lebih terperinci. | 
| Before travel steps | Langkah-langkah yang perlu diselesaikan sebelum memulai bagian perjalanan, seperti naik feri. | 
| After travel steps | Langkah-langkah yang harus dilakukan setelah bagian perjalanan selesai, seperti de-boarding feri. | 

## Rincian langkah berdasarkan mode perjalanan
<a name="route-step-types"></a>


| **Bagian** | **Langkah** | **Sebelum Perjalanan** | **Perjalanan** | **Setelah Perjalanan** | 
| --- | --- | --- | --- | --- | 
| Kendaraan | Tiba | Tidak | Ya | Tidak | 
| Kendaraan | Lanjutkan | Tidak | Ya | Tidak | 
| Kendaraan | ContinueHighway | Tidak | Ya | Tidak | 
| Kendaraan | Berangkat | Tidak | Ya | Tidak | 
| Kendaraan | Keluar | Tidak | Ya | Tidak | 
| Pejalan kaki | Tiba | Tidak | Ya | Tidak | 
| Pejalan kaki | Biaya | Tidak | Ya | Tidak | 
| Feri | Tunggu | Tidak | Tidak | Ya | 
| Feri | Papan | Ya | Tidak | Tidak | 
| Feri | Deboard | Tidak | Tidak | Ya | 

# Hitung matriks rute
<a name="calculate-route-matrix"></a>

Layanan Matrix Routing menghitung matriks routing, menyediakan waktu perjalanan atau jarak antara beberapa asal dan tujuan. Layanan ini menawarkan opsi penyesuaian yang fleksibel, memungkinkan Anda menentukan mode perjalanan, kondisi lalu lintas, dan parameter perutean lainnya. Perhitungan matriks dapat bervariasi dalam ukuran dan bentuk, mendukung matriks persegi dan non-persegi, dan mengakomodasi data lalu lintas dinamis atau arus bebas.

Untuk informasi selengkapnya, lihat [CalculateRouteMatrix](https://docs.aws.amazon.com/location/latest/APIReference/API_CalculateRouteMatrix.html)di *Referensi API Amazon Location Service*.

Misalnya permintaan, respons, cURL, dan perintah CLI untuk API ini, lihat [Cara menggunakan](https://docs.aws.amazon.com/location/latest/developerguide/calculate-route-matrix-how-to.html) Matriks rute Hitung.

## Kasus penggunaan
<a name="route-matrix-use-cases"></a>
+ **Optimalkan rute pengiriman untuk logistik dan e-commerce:** Secara efisien menghitung waktu dan jarak perjalanan antara beberapa lokasi pengambilan dan pengiriman untuk mengoptimalkan rute. Perusahaan logistik dapat menggunakan fitur ini untuk meminimalkan biaya dan waktu pengiriman dengan merencanakan jalur yang efisien di seluruh kota. Ini sangat ideal untuk mengatur jendela pengiriman yang dioptimalkan untuk layanan hari yang sama atau hari berikutnya dan merencanakan rute pengiriman multi-stop.
+ **Cocokkan pengemudi dan penumpang dalam aplikasi berbagi perjalanan:** Gunakan perhitungan rute untuk mencocokkan pengemudi dengan penumpang terdekat dengan menemukan rute tercepat antar lokasi. Aplikasi berbagi perjalanan dapat meningkatkan pengalaman pengguna dengan memberikan perkiraan kedatangan pengemudi waktu nyata, memastikan pengambilan dan pengantaran yang cepat. Mendukung berbagai moda transportasi seperti mobil, sepeda, dan skuter.
+ **Merencanakan dan mengoptimalkan rute untuk manajemen armada:** Kelola armada besar dengan mengoptimalkan rute untuk mengurangi konsumsi bahan bakar dan waktu perjalanan. Manajer armada dapat menetapkan rute yang paling efisien ke kendaraan untuk beberapa pemberhentian, sehingga meningkatkan efisiensi operasional secara keseluruhan. Kasus penggunaan termasuk armada layanan, perusahaan transportasi, dan utilitas di mana perencanaan rute yang optimal sangat penting untuk kunjungan lokasi.

## Pahami permintaannya
<a name="route-matrix-request"></a>

**catatan**  
 Untuk pelanggan di `ap-southeast-1` dan`ap-southeast-5`, bidang permintaan dan respons yang didukung mungkin berbeda. Lihat [Referensi CalculateRouteMatrix API](https://docs.aws.amazon.com/location/latest/APIReference/API_CalculateRouteMatrix.html) untuk detailnya. 

Permintaan tersebut mencakup **Origins** dan **Destination** untuk perhitungan rute, dengan parameter opsional untuk menyesuaikan matriks berdasarkan preferensi dan kendala. Untuk detail selengkapnya, lihat Referensi API untuk Calculate Route Matrix API.
+ `Origins`: Daftar koordinat asal dalam garis bujur dan lintang.
+ `Destinations`: Daftar koordinat tujuan.
+ `OptimizeRoutingFor`: Kriteria pengoptimalan seperti rute “Tercepat” atau “Terpendek”.
+ `RoutingBoundary`: Mendefinisikan batas untuk perhitungan, baik sebagai “Tidak Terbatas” atau terbatas pada geometri tertentu.
+ `Avoid`: Fitur yang harus dihindari selama perhitungan rute. Diabaikan jika tidak ada rute yang layak dapat ditemukan.
+ `Traffic`: Opsi terkait lalu lintas yang memengaruhi perhitungan rute.

## Pahami tanggapannya
<a name="route-matrix-response"></a>

Respons mencakup matriks rute yang dihitung antara asal dan tujuan, dengan detail seperti jarak dan durasi. Kesalahan dan batasan untuk rute juga disediakan, jika berlaku. Lihat Referensi API untuk detail tambahan tentang Calculate Route Matrix API.
+ `RouteMatrix`: Matriks yang berisi jarak tempuh (dalam meter) dan durasi (dalam detik) antara asal dan tujuan.
+ `ErrorCount`: Jumlah kesalahan yang ditemui selama perhitungan rute.
+ `RoutingBoundary`: Batas di mana matriks dihitung.

# Hitung isolin
<a name="calculate-isolines"></a>

API Hitung Isolines memungkinkan Anda menentukan area yang dapat dijangkau dalam batas waktu atau jarak yang ditentukan. Dengan mempertimbangkan faktor-faktor seperti pembatasan jalan, kondisi lalu lintas, dan mode perjalanan, ini menghasilkan isoline yang menguraikan area yang dapat diakses, mendukung perencanaan kota, logistik, dan aplikasi aksesibilitas layanan. API ini dapat digunakan untuk perencanaan kota, analisis real estat, dan studi aksesibilitas dengan memvisualisasikan jangkauan layanan, opsi transportasi, atau sumber daya dalam jangka waktu atau batas jarak yang ditetapkan. Dengan menampilkan isoline ini di peta, pengguna dapat menilai jangkauan perjalanan dalam batasan tertentu, meningkatkan pengambilan keputusan untuk pemilihan lokasi, cakupan layanan, dan alokasi sumber daya.

Untuk informasi selengkapnya, lihat [CalculateIsolines](https://docs.aws.amazon.com/location/latest/APIReference/API_CalculateIsolines.html)di *Referensi API Amazon Location Service*.

Misalnya permintaan, tanggapan, cURL, dan perintah CLI untuk API ini, lihat [Cara menggunakan Menghitung](https://docs.aws.amazon.com/location/latest/developerguide/calculate-isolines-how-to.html) isoline.

## Kasus penggunaan
<a name="use-cases"></a>
+ **Menilai aksesibilitas layanan kesehatan melalui isoline waktu perjalanan:** Hasilkan isolin untuk mengevaluasi akses ke fasilitas perawatan kesehatan dari berbagai lingkungan berdasarkan waktu perjalanan. Organisasi layanan kesehatan dapat menggunakan fitur ini untuk mengidentifikasi area yang kurang terlayani dan membuat keputusan berdasarkan informasi tentang lokasi klinik atau layanan kesehatan keliling, sehingga meningkatkan akses perawatan kesehatan masyarakat.
+ **Analisis jangkauan pasar untuk ekspansi ritel menggunakan isoline waktu perjalanan:** Buat isoline untuk mewakili akses pelanggan ke lokasi ritel berdasarkan waktu perjalanan. Bisnis ritel dapat menilai lokasi toko baru dan memahami demografi pelanggan, menggunakan visualisasi ini untuk memperluas dan mengoptimalkan potensi penjualan secara strategis.
+ **Optimalkan zona logistik dan pengiriman dengan isoline:** Hasilkan isoline untuk menentukan zona pengiriman berdasarkan persyaratan logistik yang sensitif terhadap waktu. Perusahaan logistik dapat memvisualisasikan area yang dapat dijangkau dalam jangka waktu tertentu dari pusat distribusi, meningkatkan perencanaan rute, efisiensi operasional, dan pengiriman tepat waktu.
+ **Rencanakan akses pariwisata dan rekreasi dengan isoline:** Visualisasikan waktu perjalanan dari tempat wisata ke akomodasi terdekat. Dewan pariwisata dapat membantu wisatawan menemukan pilihan penginapan yang nyaman, mempromosikan bisnis lokal dan meningkatkan pengalaman perjalanan dengan menampilkan isoline ini di peta.
+ **Meningkatkan perencanaan tanggap darurat melalui isolines:** Hasilkan isoline untuk menilai waktu respons dari lokasi layanan darurat ke berbagai area dalam suatu komunitas. Tim manajemen darurat dapat mengidentifikasi wilayah dalam waktu respons kritis, mengoptimalkan alokasi sumber daya untuk meningkatkan respons selama insiden.
+ **Analisis pola perjalanan untuk perencanaan tenaga kerja dengan isoline: Hasilkan isoline** untuk memvisualisasikan waktu perjalanan dan mengidentifikasi area dengan waktu perjalanan yang tinggi. Bisnis dapat menggunakan wawasan ini untuk kebijakan kerja jarak jauh atau relokasi kantor, meningkatkan kepuasan dan produktivitas karyawan.

## Pahami permintaannya
<a name="understanding-request"></a>

Permintaan menerima parameter seperti`Origin`,`Destination`, dan `Thresholds` untuk mendefinisikan isoline. Parameter opsional, seperti`Allow`,`Avoid`, dan`TravelModeOptions`, memungkinkan penyesuaian kendala isolin. Untuk informasi selengkapnya, lihat .

**Asal**  
Titik awal untuk perhitungan isoline dalam bujur dan lintang.

**Ambang batas**  
Batas waktu atau jarak yang digunakan untuk menentukan batas isolin.

**TravelMode**  
Moda transportasi, seperti mobil, pejalan kaki, atau truk.

**OptimizeIsolineFor**  
Kriteria optimasi, seperti perhitungan Akurat, Seimbang, atau Cepat.

**DepartureTime**  
Waktu keberangkatan, jika ditentukan, untuk menghitung isolin yang bergantung pada waktu.

**ArrivalTime**  
Waktu kedatangan, jika ditentukan, untuk menghitung isolin yang bergantung pada waktu.

**IsolineGranularity**  
Jumlah maksimum titik dan resolusi batas isoline.

## Pahami responsnya
<a name="understanding-response"></a>

Respons mencakup isolin dengan properti seperti`IsolineGeometryFormat`, menguraikan area yang dapat dijangkau berdasarkan parameter permintaan.

**Isolin**  
Isolin yang dihitung dengan properti terkait, termasuk geometri dan koneksi.

**Geometri**  
Daftar geometri yang menguraikan batas isolin yang dihitung.

**Koneksi**  
Koneksi antara geometri isolin, termasuk geometri untuk setiap koneksi.

# Optimalkan titik arah
<a name="actions-optimize-waypoints"></a>

Optimize Waypoints API menghitung urutan yang paling efisien untuk mengunjungi beberapa titik arah di sepanjang rute. Menggunakan algoritma canggih, API ini meminimalkan waktu dan jarak tempuh sambil mempertimbangkan faktor-faktor seperti kondisi lalu lintas, penghindaran, dan spesifikasi kendaraan. Mengintegrasikan Optimize Waypoints API membantu bisnis merampingkan operasi, mengurangi konsumsi bahan bakar, meningkatkan efisiensi pengiriman, dan meningkatkan kepuasan pelanggan. API menyediakan rute yang dioptimalkan, memungkinkan pengambilan keputusan dan alokasi sumber daya yang lebih baik dalam skenario perjalanan multi-stop.

Untuk informasi selengkapnya, lihat [OptimizeWaypoints](https://docs.aws.amazon.com/location/latest/APIReference/API_OptimizeWaypoints.html)di *Referensi API Amazon Location Service*.

Misalnya permintaan, respons, cURL, dan perintah CLI untuk API ini, lihat [Cara menggunakan Optimalkan](https://docs.aws.amazon.com/location/latest/developerguide/optimize-waypoints-how-to.html) titik arah.

## Kasus penggunaan
<a name="use-cases"></a>
+ **Meningkatkan efisiensi pengiriman multi-stop:** Optimalkan urutan beberapa penghentian pengiriman secara efisien untuk mengurangi waktu dan biaya perjalanan. Layanan pengiriman dapat merampingkan operasi dengan menghitung rute yang paling efisien untuk pengemudi, meminimalkan biaya bahan bakar dan memastikan pengiriman tepat waktu, yang meningkatkan kepuasan pelanggan dan efisiensi operasional.
+ **Merampingkan operasi layanan lapangan:** Optimalkan urutan kunjungan ke beberapa lokasi pekerjaan dalam satu hari, mengurangi waktu perjalanan untuk teknisi layanan lapangan. Hal ini memungkinkan perusahaan untuk menyelesaikan lebih banyak pekerjaan setiap hari, meningkatkan produktivitas dan pemberian layanan.
+ **Rencanakan rute tur yang efisien untuk agen perjalanan:** Optimalkan rencana perjalanan yang mencakup beberapa atraksi untuk memaksimalkan tamasya sambil meminimalkan waktu perjalanan. Agen perjalanan dapat menggunakan fitur ini untuk membuat rencana optimal untuk tur berpemandu, meningkatkan pengalaman wisata secara keseluruhan dengan memanfaatkan waktu yang tersedia dengan lebih baik.
+ **Tingkatkan efisiensi pengemudi berbagi perjalanan:** Optimalkan urutan penjemputan dan pengantaran untuk beberapa penumpang, kurangi waktu tunggu, dan tingkatkan pengalaman pengendara. Layanan berbagi tumpangan dapat memaksimalkan pendapatan pengemudi dan memastikan layanan tepat waktu bagi penumpang dengan mengoptimalkan titik arah.
+ **Optimalkan rute untuk layanan pengumpulan sampah:** Rencanakan rute pengumpulan sampah untuk meminimalkan jarak dan waktu perjalanan, yang membantu perusahaan pengelola limbah merampingkan operasi dan memastikan pengumpulan tepat waktu, mencapai penghematan biaya, dan mengurangi dampak lingkungan.
+ **Mengkoordinasikan logistik untuk acara dan konferensi:** Mengelola logistik transportasi untuk mengirimkan peralatan dan persediaan ke beberapa tempat, mengoptimalkan rute bongkar muat. Hal ini memungkinkan perencana acara untuk merampingkan transportasi, mengurangi penundaan, dan memastikan kedatangan materi yang tepat waktu untuk acara.
+ **Tingkatkan rute tanggap darurat:** Rencanakan rute tercepat ke beberapa keadaan darurat, optimalkan waktu respons dalam situasi kritis. Layanan darurat dapat meningkatkan efisiensi respons, berpotensi menyelamatkan nyawa dengan menggunakan titik arah yang dioptimalkan.
+ **Memfasilitasi perencanaan rute penjualan untuk perwakilan lapangan:** Optimalkan rute untuk perwakilan penjualan yang mengunjungi beberapa klien dalam sehari, meminimalkan waktu perjalanan dan memaksimalkan kunjungan klien. Ini membantu perusahaan meningkatkan produktivitas dan memanfaatkan lebih banyak peluang penjualan.

## Pahami permintaannya
<a name="understanding-request"></a>

Permintaan membutuhkan parameter seperti `Origin` dan `Waypoints` untuk menghitung urutan yang dioptimalkan. Parameter opsional seperti`Avoid`,`Traffic`, dan `Driver` memungkinkan kustomisasi tambahan.

**Titik arah**  
Daftar titik arah yang akan dioptimalkan secara berurutan.

**Asal**  
Posisi awal rute untuk optimasi.

**Destinasi**  
Posisi akhir opsional rute untuk pengoptimalan.

**OptimizeSequencingFor**  
Kriteria untuk pengoptimalan pengurutan, seperti rute tercepat atau terpendek.

**Lalu Lintas**  
Opsi terkait lalu lintas yang memengaruhi perhitungan rute.

**Sopir**  
Siklus kerja pengemudi dan istirahat untuk memastikan kepatuhan terhadap peraturan mengemudi regional.

**Pengelompokan**  
Pengelompokan memungkinkan Anda menentukan bagaimana titik arah terdekat dapat dikelompokkan untuk meningkatkan urutan yang dioptimalkan.

Setiap waypoint juga dapat menentukan kendala yang harus dipenuhi, seperti, `AppointmentTime``AccessHours`, dan mengurutkan kendala seperti waypoint lainnya. `Before`

## Pahami responsnya
<a name="understanding-response"></a>

Respons memberikan rincian urutan waypoint yang dioptimalkan, termasuk `OptimizedWaypoints` dan keseluruhan `Distance` dan `Duration` untuk perjalanan. 

**OptimizedWaypoints**  
Daftar titik arah dalam urutan yang dioptimalkan.

**ImpedingWaypoints**  
Titik arah yang mencegah urutan yang dioptimalkan, termasuk kendala gagal yang tidak terpenuhi.

**Koneksi**  
Detail tentang perjalanan antar titik arah, termasuk jarak dan durasi.

**TimeBreakdown**  
Rincian total`Travel`,`Rest`,`Service`, dan `Wait` durasi untuk rute.

**ClusterIndex**  
Indeks cluster yang terkait dengan waypoint. Indeks disertakan dalam respons hanya jika pengelompokan dilakukan saat memproses permintaan.

# Snap ke Jalan
<a name="snap-to-roads"></a>

Snap to Road API meningkatkan akurasi pemosisian geografis dengan menyelaraskan koordinat GPS ke segmen jalan terdekat pada peta digital. API ini mengambil data bujur dan lintang mentah, sering dikumpulkan dari perangkat seluler atau kendaraan, dan “menjepret” titik-titik ini ke jaringan jalan yang sesuai, memperbaiki ketidakakuratan yang disebabkan oleh penyimpangan GPS atau kehilangan sinyal. Dengan mengintegrasikan Snap to Road API, Anda dapat memastikan aplikasi Anda memberikan data yang andal dan akurat, mendukung pengambilan keputusan dan efisiensi operasional yang lebih baik di berbagai skenario.

Untuk informasi selengkapnya, lihat [SnapToRoads](https://docs.aws.amazon.com/location/latest/APIReference/API_SnapToRoads.html)di *Referensi API Amazon Location Service*.

Misalnya permintaan, respons, cURL, dan perintah CLI untuk API ini, lihat [Cara menggunakan Snap to Roads](https://docs.aws.amazon.com/location/latest/developerguide/snap-to-roads-how-to.html).

## Kasus penggunaan
<a name="use-cases"></a>
+ **Tingkatkan akurasi navigasi dengan menjentikkan ke jaringan jalan:** Secara efisien menyelaraskan koordinat GPS ke segmen jalan terdekat untuk meningkatkan akurasi navigasi. Fitur ini berharga untuk layanan pemetaan dan navigasi, menyediakan pengguna dengan arah yang tepat dan pembaruan lokasi real-time, sehingga meningkatkan pengalaman navigasi.
+ **Tingkatkan akurasi data untuk aplikasi manajemen armada:** Perbaiki posisi kendaraan yang dilaporkan dengan menjentikkan koordinat GPS mereka ke jalan terdekat. Dalam sistem manajemen armada, fitur ini memastikan pelacakan kendaraan yang akurat, memungkinkan logistik yang dioptimalkan dan efisiensi operasional yang lebih baik.

## Pahami permintaannya
<a name="understanding-request"></a>

Permintaan `TracePoints` harus cocok dengan jalan, dengan parameter opsional seperti `SnappedGeometryFormat` dan `SnapRadius` untuk mengontrol format geometri dan radius gertakan.

**TracePoints**  
Daftar koordinat yang akan diambil ke jaringan jalan.

**SnappedGeometryFormat**  
Format geometri yang dikembalikan, seperti "FlexiblePolyline" atau “Sederhana”.

**SnapRadius**  
Radius di sekitar titik jejak di mana gertakan jalan dipertimbangkan.

## Pahami tanggapannya
<a name="understanding-response"></a>

Respons berisi geometri yang dikoreksi dan titik jejak yang tersentak, dengan properti seperti `SnappedGeometry` dan `SnappedTracePoints` untuk menunjukkan akurasi dan keyakinan gertakan.

**SnappedGeometry**  
Geometri yang dikoreksi dari rute yang tersentak.

**SnappedTracePoints**  
Koordinat yang disesuaikan dari titik-titik jejak tersentak ke jalan.

**Pemberitahuan**  
Peringatan atau pesan informasi tentang proses gertakan.

# Bagaimana caranya
<a name="routes-how-to"></a>

Bagian ini menyediakan panduan untuk memanfaatkan Rute APIs untuk menyelesaikan tantangan perutean dan navigasi. Tutorial ini mencakup tugas-tugas penting untuk mengintegrasikan fungsionalitas routing ke dalam aplikasi Anda. Setiap topik berfokus pada kasus penggunaan tertentu, memungkinkan Anda untuk secara efisien menerapkan fitur perutean lanjutan yang disesuaikan dengan kebutuhan bisnis Anda.

**Topics**
+ [Pelajari cara menggunakan CalculateRoutes](calculate-routes-how-to.md)
+ [Pelajari cara menggunakan CalculateIsolines](calculate-isolines-how-to.md)
+ [Pelajari cara menggunakan CalculateRouteMatrix](calculate-route-matrix-how-to.md)
+ [Pelajari cara menggunakan OptimizeWaypoints](optimize-waypoints-how-to.md)
+ [Pelajari cara menggunakan SnapToRoads](snap-to-roads-how-to.md)

# Pelajari cara menggunakan CalculateRoutes
<a name="calculate-routes-how-to"></a>

Bagian ini memberikan step-by-step instruksi untuk menggunakan`CalculateRoutes`. Topik ini merinci panduan untuk menemukan rute dengan konfigurasi tertentu, seperti menggabungkan turn-by-turn navigasi, mengatur mode perjalanan, dan menambahkan titik arah.

**Topics**
+ [Cara menemukan rute untuk asal dan tujuan](calculate-routes-origin-destination-waypoints.md)
+ [Cara menemukan rute dengan turn-by-turn arah](how-to-find-turn-by-turn-route.md)
+ [Cara menemukan batas kecepatan untuk rentang jalan](calculate-routes-speed-limit-road.md)
+ [Cara menemukan rute alternatif](calculate-routes-alternate.md)
+ [Cara menghitung tol untuk suatu rute](calculate-routes-tolls.md)
+ [Cara membuat rute dengan penghindaran khusus](calculate-routes-custom-avoidance-poly.md)
+ [Cara membuat rute dengan penghindaran khusus dari beberapa item potensial](calculate-routes-custom-avoidance-multiple.md)
+ [Cara menemukan rute tercepat](calculate-routes-custom-avoidance-fast.md)
+ [Cara menemukan rute terpendek](calculate-routes-custom-avoidance-shortest.md)

# Cara menemukan rute untuk asal dan tujuan
<a name="calculate-routes-origin-destination-waypoints"></a>

 CalculateRoutes API membantu Anda menemukan rute terbaik antara asal dan tujuan, serta peluang terbaik untuk istirahat pengemudi. Ini mendukung mode perjalanan seperti truk, pejalan kaki, mobil dan skuter. Ini juga mendukung hingga 25 titik arah (persinggahan) termasuk asal dan tujuan dengan hanya beberapa kendala.

## Kasus penggunaan potensial
<a name="potential-use-cases"></a>
+ **Temukan point-to-point rute:** Tentukan rute terbaik antara dua lokasi berdasarkan berbagai mode perjalanan dan opsi tambahan.

## Contoh
<a name="calculate-routes-examples"></a>

### Hitung rute dari asal ke tujuan menggunakan Mobil TravelMode
<a name="calculate-routes-car-mode"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.118105,
        49.282423
    ],
    "Destination": [
        -123.020098,
        49.232872
    ]
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.020098,
                                    49.232872
                                ],
                                "Position": [
                                    -123.0203051,
                                    49.2328499
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.1181051,
                                    49.282423
                                ],
                                "Position": [
                                    -123.1180883,
                                    49.2824349
                                ]
                            }
                        },
                        "TravelSteps": [
                            {
                                "Distance": 1288,
                                "Duration": 102,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 1356,
                                "Duration": 134,
                                "Type": "Turn"
                            },
                            {
                                "Distance": 7092,
                                "Duration": 568,
                                "Type": "Keep"
                            },
                            {
                                "Distance": 65,
                                "Duration": 26,
                                "Type": "Turn"
                            },
                            {
                                "Distance": 50,
                                "Duration": 18,
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "Type": "Arrive"
                            }
                        ]
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.118105,
    49.282423
  ],
  "Destination": [
    -123.020098,
    49.232872
  ]
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.118105 49.282423 \
--destination -123.020098 49.232872
```

------

# Cara menemukan rute dengan turn-by-turn arah
<a name="how-to-find-turn-by-turn-route"></a>

 CalculateRoutes API membantu Anda menemukan rute terbaik antara asal dan tujuan, serta peluang terbaik untuk istirahat pengemudi. Ini mendukung mode perjalanan seperti mobil, truk, pejalan kaki dan skuter. Ini juga mendukung hingga 25 titik arah (persinggahan) termasuk asal dan tujuan, dengan hanya beberapa kendala.

## Kasus penggunaan potensial
<a name="potential-use-cases-turn-by-turn"></a>
+ **Buat aplikasi seluler navigasi:** Gunakan API untuk mendapatkan petunjuk turn-by-turn navigasi.
+ **Tampilkan petunjuk arah pada platform web:** Tampilkan panduan rute terperinci untuk aplikasi web untuk membantu Anda dengan navigasi.

## Contoh
<a name="calculate-routes-examples-turn-by-turn"></a>

### Hitung rute menggunakan Mobil TravelMode
<a name="calculate-routes-car-mode-turn-by-turn"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.118105,
        49.282423
    ],
    "Destination": [
        -123.020098,
        49.232872
    ],
    "TravelStepType": "TurnByTurn",
    "TravelMode": "Car"
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "Arrival": {
                            "Place": {
                                "Position": [-123.0203051, 49.2328499]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "Position": [-123.1180883, 49.2824349]
                            }
                        },
                        "TravelSteps": [
                            {
                                "Distance": 1288,
                                "Duration": 102,
                                "Type": "Depart",
                                "NextRoad": {
                                    "RoadName": "W Georgia St",
                                    "RouteNumber": "HWY-1A"
                                }
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "Type": "Keep",
                                "NextRoad": {
                                    "RoadName": "Main St",
                                    "RouteNumber": "HWY-1A"
                                }
                            },
                            {
                                "Distance": 1356,
                                "Duration": 134,
                                "Type": "Turn",
                                "NextRoad": {
                                    "RoadName": "Main St",
                                    "RouteNumber": "HWY-1A"
                                }
                            },
                            {
                                "Distance": 7092,
                                "Duration": 568,
                                "Type": "Keep",
                                "NextRoad": {
                                    "RoadName": "Kingsway",
                                    "RouteNumber": "HWY-1A"
                                }
                            },
                            {
                                "Distance": 65,
                                "Duration": 26,
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "Type": "Arrive"
                            }
                        ]
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.118105,
    49.282423
  ],
  "Destination": [
    -123.020098,
    49.232872
  ],
  "TravelStepType": "TurnByTurn",
  "TravelMode": "Car"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.118105 49.282423 \
--destination -123.020098 49.232872 \
--travel-step-type "TurnByTurn" \
--travel-mode "Car"
```

------

# Cara menemukan batas kecepatan untuk rentang jalan
<a name="calculate-routes-speed-limit-road"></a>

 CalculateRoutes API membantu Anda menemukan rute terbaik antara asal dan tujuan, serta peluang terbaik untuk istirahat pengemudi. Ini mendukung mode perjalanan seperti mobil, truk, pejalan kaki dan skuter. Ini juga mendukung hingga 25 titik arah (persinggahan) termasuk asal dan tujuan, dengan hanya beberapa kendala.

## Kasus penggunaan potensial
<a name="potential-use-cases"></a>
+ **Kepatuhan batas kecepatan audit:** Tetap sadar akan batas kecepatan dan kepatuhan terhadapnya.
+ **Beri tahu pengemudi tentang batas kecepatan:** Memberi tahu pengemudi tentang batas kecepatan ketika mungkin tidak jelas sebaliknya.

## Contoh
<a name="calculate-routes-speed-examples"></a>

### Temukan batas kecepatan di Mobil TravelMode
<a name="calculate-routes-speed"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        13.055211,
        52.704802
    ],
    "Destination": [
        13.551910,
        52.282705
    ],
    "TravelMode": "Car",
    "SpanAdditionalFeatures": ["SpeedLimit"]
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.55191,
                                    52.282705
                                ],
                                "Position": [
                                    13.5507836,
                                    52.2859121
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.055211,
                                    52.704802
                                ],
                                "Position": [
                                    13.0555036,
                                    52.7056073
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [
                            {
                                "GeometryOffset": 0,
                                "SpeedLimit": {
                                    "Unlimited": true
                                }
                            },
                            {
                                "GeometryOffset": 151,
                                "SpeedLimit": {
                                    "MaxSpeed": 120.00000762939453
                                }
                            },
                            {
                                "GeometryOffset": 167,
                                "SpeedLimit": {
                                    "MaxSpeed": 80
                                }
                            },
                            {
                                "GeometryOffset": 195,
                                "SpeedLimit": {
                                    "MaxSpeed": 120.00000762939453
                                }
                            },
                            {
                                "GeometryOffset": 220,
                                "SpeedLimit": {
                                    "Unlimited": true
                                }
                            },
                            {
                                "GeometryOffset": 356,
                                "SpeedLimit": {
                                    "MaxSpeed": 120.00000762939453
                                }
                            },
                            {
                                "GeometryOffset": 358,
                                "SpeedLimit": {
                                    "MaxSpeed": 100
                                }
                            },
                            {
                                "GeometryOffset": 368,
                                "SpeedLimit": {
                                    "MaxSpeed": 80
                                }
                            },
                            {
                                "GeometryOffset": 384,
                                "SpeedLimit": {
                                    "MaxSpeed": 60.000003814697266
                                }
                            },
                            {
                                "GeometryOffset": 639,
                                "SpeedLimit": {
                                    "MaxSpeed": 80
                                }
                            },
                            {
                                "GeometryOffset": 701,
                                "SpeedLimit": {
                                    "MaxSpeed": 60.000003814697266
                                }
                            },
                            {
                                "GeometryOffset": 726,
                                "SpeedLimit": {
                                    "MaxSpeed": 80
                                }
                            },
                            {
                                "GeometryOffset": 805,
                                "SpeedLimit": {
                                    "MaxSpeed": 60.000003814697266
                                }
                            },
                            {
                                "GeometryOffset": 839,
                                "SpeedLimit": {
                                    "MaxSpeed": 80
                                }
                            },
                            {
                                "GeometryOffset": 1384,
                                "SpeedLimit": {
                                    "MaxSpeed": 60.000003814697266
                                }
                            },
                            {
                                "GeometryOffset": 1393,
                                "SpeedLimit": {
                                    "MaxSpeed": 50
                                }
                            },
                            {
                                "GeometryOffset": 1443,
                                "SpeedLimit": {
                                    "MaxSpeed": 30.000001907348633
                                }
                            },
                            {
                                "GeometryOffset": 1454,
                                "SpeedLimit": {
                                    "MaxSpeed": 50
                                }
                            },
                            {
                                "GeometryOffset": 1504,
                                "SpeedLimit": {
                                    "MaxSpeed": 60.000003814697266
                                }
                            },
                            {
                                "GeometryOffset": 1513,
                                "SpeedLimit": {
                                    "MaxSpeed": 80
                                }
                            },
                            {
                                "GeometryOffset": 1516,
                                "SpeedLimit": {
                                    "MaxSpeed": 60.000003814697266
                                }
                            },
                            {
                                "GeometryOffset": 1555,
                                "SpeedLimit": {
                                    "MaxSpeed": 80
                                }
                            },
                            {
                                "GeometryOffset": 1748,
                                "SpeedLimit": {
                                    "MaxSpeed": 120.00000762939453
                                }
                            },
                            {
                                "GeometryOffset": 1904,
                                "SpeedLimit": {
                                    "MaxSpeed": 100
                                }
                            },
                            {
                                "GeometryOffset": 1945,
                                "SpeedLimit": {
                                    "Unlimited": true
                                }
                            },
                            {
                                "GeometryOffset": 2006,
                                "SpeedLimit": {
                                    "MaxSpeed": 70
                                }
                            },
                            {
                                "GeometryOffset": 2017,
                                "SpeedLimit": {
                                    "MaxSpeed": 50
                                }
                            },
                            {
                                "GeometryOffset": 2033,
                                "SpeedLimit": {
                                    "MaxSpeed": 30.000001907348633
                                }
                            }
                        ],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 9099,
                                "Duration": 262,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 18849,
                                "Duration": 800,
                                "ExitNumber": [],
                                "GeometryOffset": 162,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 4290,
                                "Duration": 212,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 701,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 14418,
                                "Duration": 651,
                                "ExitNumber": [],
                                "GeometryOffset": 828,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 1255,
                                "Duration": 62,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 1359,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 1607,
                                "Duration": 139,
                                "ExitNumber": [],
                                "GeometryOffset": 1393,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 934,
                                "Duration": 92,
                                "ExitNumber": [],
                                "GeometryOffset": 1442,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 320,
                                "Duration": 27,
                                "ExitNumber": [],
                                "GeometryOffset": 1473,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 320,
                                "Duration": 33,
                                "ExitNumber": [],
                                "GeometryOffset": 1491,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 17863,
                                "Duration": 680,
                                "ExitNumber": [],
                                "GeometryOffset": 1504,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 2888,
                                "Duration": 95,
                                "ExitNumber": [],
                                "GeometryOffset": 1917,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 321,
                                "Duration": 28,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 1977,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 549,
                                "Duration": 41,
                                "ExitNumber": [],
                                "GeometryOffset": 2006,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 386,
                                "Duration": 51,
                                "ExitNumber": [],
                                "GeometryOffset": 2023,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 98,
                                "Duration": 15,
                                "ExitNumber": [],
                                "GeometryOffset": 2033,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 2036,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "de",
                        "Value": "A111"
                    }
                },
                {
                    "RouteNumber": {
                        "Language": "de",
                        "Value": "A113"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    13.055211,
    52.704802
  ],
  "Destination": [
    13.551910,
    52.282705
  ],
  "TravelMode": "Car",
  "SpanAdditionalFeatures": ["SpeedLimit"]
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin 13.055211 52.704802 \
--destination 13.551910 52.282705 \
--travel-mode "Car" \
--span-additional-features "SpeedLimit"
```

------

# Cara menemukan rute alternatif
<a name="calculate-routes-alternate"></a>

 CalculateRoutes API membantu Anda menemukan rute terbaik antara asal dan tujuan, serta peluang terbaik untuk istirahat pengemudi. Ini mendukung mode perjalanan seperti mobil, truk, pejalan kaki dan skuter. Ini juga mendukung hingga 25 titik arah (persinggahan) termasuk asal dan tujuan, dengan hanya beberapa kendala.

## Kasus penggunaan potensial
<a name="potential-use-cases"></a>
+ **Identifikasi rute alternatif:** Mampu memilih rute terbaik yang sesuai dengan kebutuhan bisnis Anda.

## Contoh
<a name="calculate-routes-alternate-examples"></a>

### Temukan rute alternatif di Mobil TravelMode
<a name="calculate-routes-alternate"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        13.055211,
        52.704802
    ],
    "Destination": [
        13.551910,
        52.282705
    ],
    "TravelMode": "Car",
    "MaxAlternatives": 2
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.55191,
                                    52.282705
                                ],
                                "Position": [
                                    13.5507836,
                                    52.2859121
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.055211,
                                    52.704802
                                ],
                                "Position": [
                                    13.0555036,
                                    52.7056073
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 9099,
                                "Duration": 262,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 18849,
                                "Duration": 800,
                                "ExitNumber": [],
                                "GeometryOffset": 162,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 4290,
                                "Duration": 212,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 701,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 14418,
                                "Duration": 651,
                                "ExitNumber": [],
                                "GeometryOffset": 828,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 1255,
                                "Duration": 62,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 1359,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 1607,
                                "Duration": 139,
                                "ExitNumber": [],
                                "GeometryOffset": 1393,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 934,
                                "Duration": 92,
                                "ExitNumber": [],
                                "GeometryOffset": 1442,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 320,
                                "Duration": 27,
                                "ExitNumber": [],
                                "GeometryOffset": 1473,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 320,
                                "Duration": 33,
                                "ExitNumber": [],
                                "GeometryOffset": 1491,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 17863,
                                "Duration": 680,
                                "ExitNumber": [],
                                "GeometryOffset": 1504,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 2888,
                                "Duration": 95,
                                "ExitNumber": [],
                                "GeometryOffset": 1917,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 321,
                                "Duration": 28,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 1977,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 549,
                                "Duration": 41,
                                "ExitNumber": [],
                                "GeometryOffset": 2006,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 386,
                                "Duration": 51,
                                "ExitNumber": [],
                                "GeometryOffset": 2023,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 98,
                                "Duration": 15,
                                "ExitNumber": [],
                                "GeometryOffset": 2033,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 2036,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "de",
                        "Value": "A111"
                    }
                },
                {
                    "RouteNumber": {
                        "Language": "de",
                        "Value": "A113"
                    }
                }
            ]
        },
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.55191,
                                    52.282705
                                ],
                                "Position": [
                                    13.5507836,
                                    52.2859121
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.055211,
                                    52.704802
                                ],
                                "Position": [
                                    13.0555036,
                                    52.7056073
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 91047,
                                "Duration": 2880,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 3496,
                                "Duration": 119,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 1473,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 321,
                                "Duration": 28,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 1565,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 549,
                                "Duration": 41,
                                "ExitNumber": [],
                                "GeometryOffset": 1594,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 386,
                                "Duration": 51,
                                "ExitNumber": [],
                                "GeometryOffset": 1611,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 98,
                                "Duration": 15,
                                "ExitNumber": [],
                                "GeometryOffset": 1621,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 1624,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "de",
                        "Value": "A10"
                    }
                }
            ]
        },
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.55191,
                                    52.282705
                                ],
                                "Position": [
                                    13.5507836,
                                    52.2859121
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    13.055211,
                                    52.704802
                                ],
                                "Position": [
                                    13.0555036,
                                    52.7056073
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 9099,
                                "Duration": 262,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 18849,
                                "Duration": 800,
                                "ExitNumber": [],
                                "GeometryOffset": 162,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 4290,
                                "Duration": 212,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 701,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 12258,
                                "Duration": 554,
                                "ExitNumber": [],
                                "GeometryOffset": 828,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 18567,
                                "Duration": 1218,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 1282,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 250,
                                "Duration": 28,
                                "ExitNumber": [],
                                "GeometryOffset": 1760,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 4856,
                                "Duration": 245,
                                "ExitNumber": [],
                                "GeometryOffset": 1793,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 3202,
                                "Duration": 165,
                                "ExitNumber": [],
                                "GeometryOffset": 1970,
                                "RoundaboutExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutExit"
                            },
                            {
                                "Distance": 386,
                                "Duration": 51,
                                "ExitNumber": [],
                                "GeometryOffset": 2072,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 98,
                                "Duration": 15,
                                "ExitNumber": [],
                                "GeometryOffset": 2082,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 2085,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "de",
                        "Value": "A111"
                    }
                },
                {
                    "RouteNumber": {
                        "Language": "de",
                        "Value": "B96"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    13.055211,
    52.704802
  ],
  "Destination": [
    13.551910,
    52.282705
  ],
  "TravelMode": "Car",
  "MaxAlternatives": 2
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin 13.055211 52.704802 \
--destination 13.551910 52.282705 \
--travel-mode "Car" \
--max-alternatives 2
```

------

# Cara menghitung tol untuk suatu rute
<a name="calculate-routes-tolls"></a>

 CalculateRoutes API membantu Anda menemukan rute terbaik antara asal dan tujuan, serta peluang terbaik untuk istirahat pengemudi. Ini mendukung mode perjalanan seperti mobil, truk, pejalan kaki dan skuter. Ini juga mendukung hingga 25 titik arah (persinggahan) termasuk asal dan tujuan, dengan hanya beberapa kendala.

## Kasus penggunaan potensial
<a name="potential-use-cases"></a>
+ **Hitung tol:** Dapat menghitung biaya tol selama perencanaan rute.
+ **Tol audit: Mampu** mengaudit biaya tol setelah bepergian.

## Contoh
<a name="calculate-routes-tolls-examples"></a>

### Hitung tol untuk rute Anda di Mobil TravelMode
<a name="calculate-routes-tolls"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        2.234491,
        48.815704
    ],
    "Destination": [
        5.11412,
        47.260723
    ],
    "TravelMode": "Car",
    "Tolls": {
        "AllTransponders": true,
        "AllVignettes": true
    }
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    5.11412,
                                    47.2607229
                                ],
                                "Position": [
                                    5.1128203,
                                    47.2596356
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    2.234491,
                                    48.8157039
                                ],
                                "Position": [
                                    2.2346482,
                                    48.815674
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [
                            {
                                "Country": "FRA",
                                "PaymentSites": [
                                    {
                                        "Name": "FLEURY-EN-BIERE",
                                        "Position": [
                                            2.53988,
                                            48.42578
                                        ]
                                    },
                                    {
                                        "Name": "POUILLY-EN-AUXOIS",
                                        "Position": [
                                            4.56112,
                                            47.25244
                                        ]
                                    }
                                ],
                                "Rates": [
                                    {
                                        "Id": "2d680295-fb0f-45aa-a8ed-79d9f0f9ff9f",
                                        "LocalPrice": {
                                            "Currency": "EUR",
                                            "Estimate": false,
                                            "Range": false,
                                            "Value": 21.700000762939453
                                        },
                                        "Name": "APRR",
                                        "PaymentMethods": [
                                            "Cash",
                                            "BankCard",
                                            "CreditCard",
                                            "Transponder",
                                            "TravelCard"
                                        ],
                                        "Transponders": [
                                            {
                                                "SystemName": "BipandGo"
                                            },
                                            {
                                                "SystemName": "BipandGo"
                                            },
                                            {
                                                "SystemName": "BipandGo IDVROOM carpoorling"
                                            },
                                            {
                                                "SystemName": "Cito30"
                                            },
                                            {
                                                "SystemName": "Easytrip pass"
                                            },
                                            {
                                                "SystemName": "Liane 30"
                                            },
                                            {
                                                "SystemName": "Liber-t"
                                            },
                                            {
                                                "SystemName": "Liber-t mobilitis"
                                            },
                                            {
                                                "SystemName": "Pass Pont-Pont"
                                            },
                                            {
                                                "SystemName": "Progressivi'T Maurienne"
                                            },
                                            {
                                                "SystemName": "TopEurop"
                                            },
                                            {
                                                "SystemName": "Tunnel Pass+"
                                            },
                                            {
                                                "SystemName": "Ulys"
                                            },
                                            {
                                                "SystemName": "Ulys Europe"
                                            },
                                            {
                                                "SystemName": "Viaduc-t 30"
                                            }
                                        ]
                                    }
                                ],
                                "Systems": [
                                    0
                                ]
                            }
                        ],
                        "TollSystems": [
                            {
                                "Name": "APRR"
                            }
                        ],
                        "TravelSteps": [
                            {
                                "Distance": 122,
                                "Duration": 21,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 32,
                                "Duration": 7,
                                "ExitNumber": [],
                                "GeometryOffset": 7,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 74,
                                "Duration": 14,
                                "ExitNumber": [],
                                "GeometryOffset": 8,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 199,
                                "Duration": 33,
                                "ExitNumber": [],
                                "GeometryOffset": 9,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 21,
                                "Duration": 10,
                                "ExitNumber": [],
                                "GeometryOffset": 17,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 461,
                                "Duration": 63,
                                "ExitNumber": [],
                                "GeometryOffset": 20,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1557,
                                "Duration": 145,
                                "ExitNumber": [],
                                "GeometryOffset": 41,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 3471,
                                "Duration": 151,
                                "ExitNumber": [],
                                "GeometryOffset": 135,
                                "RoundaboutExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutExit"
                            },
                            {
                                "Distance": 9796,
                                "Duration": 430,
                                "ExitNumber": [],
                                "GeometryOffset": 242,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 2473,
                                "Duration": 112,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 582,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 674,
                                "Duration": 25,
                                "ExitNumber": [],
                                "GeometryOffset": 669,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 253953,
                                "Duration": 7468,
                                "ExitNumber": [],
                                "GeometryOffset": 679,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 37379,
                                "Duration": 1192,
                                "ExitNumber": [],
                                "ExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "GeometryOffset": 5701,
                                "Type": "Exit"
                            },
                            {
                                "Distance": 2021,
                                "Duration": 110,
                                "ExitNumber": [],
                                "GeometryOffset": 6695,
                                "RoundaboutExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutExit"
                            },
                            {
                                "Distance": 7380,
                                "Duration": 316,
                                "ExitNumber": [],
                                "GeometryOffset": 6776,
                                "RoundaboutPassStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutPass"
                            },
                            {
                                "Distance": 4253,
                                "Duration": 156,
                                "ExitNumber": [],
                                "GeometryOffset": 6987,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 813,
                                "Duration": 54,
                                "ExitNumber": [],
                                "GeometryOffset": 7081,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 1909,
                                "Duration": 109,
                                "ExitNumber": [],
                                "GeometryOffset": 7133,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Sharp"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 827,
                                "Duration": 47,
                                "ExitNumber": [],
                                "GeometryOffset": 7182,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 680,
                                "Duration": 41,
                                "ExitNumber": [],
                                "GeometryOffset": 7216,
                                "RoundaboutExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutExit"
                            },
                            {
                                "Distance": 224,
                                "Duration": 12,
                                "ExitNumber": [],
                                "GeometryOffset": 7258,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 25,
                                "Duration": 2,
                                "ExitNumber": [],
                                "GeometryOffset": 7265,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 748,
                                "Duration": 51,
                                "ExitNumber": [],
                                "GeometryOffset": 7267,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 656,
                                "Duration": 46,
                                "ExitNumber": [],
                                "GeometryOffset": 7299,
                                "RoundaboutExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutExit"
                            },
                            {
                                "Distance": 1119,
                                "Duration": 78,
                                "ExitNumber": [],
                                "GeometryOffset": 7329,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 432,
                                "Duration": 26,
                                "ExitNumber": [],
                                "GeometryOffset": 7383,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1864,
                                "Duration": 100,
                                "ExitNumber": [],
                                "GeometryOffset": 7402,
                                "RoundaboutExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutExit"
                            },
                            {
                                "Distance": 1110,
                                "Duration": 93,
                                "ExitNumber": [],
                                "GeometryOffset": 7470,
                                "RoundaboutExitStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "RoundaboutExit"
                            },
                            {
                                "Distance": 232,
                                "Duration": 10,
                                "ExitNumber": [],
                                "GeometryOffset": 7563,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 642,
                                "Duration": 29,
                                "ExitNumber": [],
                                "GeometryOffset": 7572,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 357,
                                "Duration": 25,
                                "ExitNumber": [],
                                "GeometryOffset": 7580,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 63,
                                "Duration": 10,
                                "ExitNumber": [],
                                "GeometryOffset": 7600,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 2626,
                                "Duration": 411,
                                "ExitNumber": [],
                                "GeometryOffset": 7602,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 234,
                                "Duration": 37,
                                "ExitNumber": [],
                                "GeometryOffset": 7627,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 7632,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "fr",
                        "Value": "A6"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    2.234491,
    48.815704
  ],
  "Destination": [
    5.11412,
    47.260723
  ],
  "TravelMode": "Car",
  "Tolls": {
    "AllTransponders": true,
    "AllVignettes": true
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin 13.055211 52.704802 \
--destination 13.551910 52.282705 \
--travel-mode "Car" \
--tolls '{"AllTransponders": true, "AllVignettes": true}'
```

------

# Cara membuat rute dengan penghindaran khusus
<a name="calculate-routes-custom-avoidance-poly"></a>

 CalculateRoutes API membantu Anda menemukan rute terbaik antara asal dan tujuan, serta peluang terbaik untuk istirahat pengemudi. Ini mendukung mode perjalanan seperti mobil, truk, pejalan kaki dan skuter. Ini juga mendukung hingga 25 titik arah (persinggahan) termasuk asal dan tujuan, dengan hanya beberapa kendala.

## Kasus penggunaan potensial
<a name="potential-use-cases"></a>
+ **Hitung rute dengan penghindaran khusus:** Sesuaikan rute dengan penghindaran untuk rute yang lebih baik dan perencanaan perjalanan.

## Contoh
<a name="calculate-routes-custom-avoidance-examples"></a>

### Gunakan CalculateRoutes dengan menghindari BoundingBox untuk membuat rute khusus.
<a name="calculate-routes-custom-avoidance-poly"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.116655,
        49.281538
    ],
    "Destination": [
        -123.01791785749363,
        49.22782762759908
    ],
    "TravelMode": "Car",
    "Avoid": {
        "Areas": [
            {
                "Geometry": {
                    "BoundingBox": [
                        -123.078693,
                        49.238987,
                        -123.054638,
                        49.251694
                    ]
                }
            }
        ]
    }
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.0179179,
                                    49.2278276
                                ],
                                "Position": [
                                    -123.0229001,
                                    49.22883
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.116655,
                                    49.281538
                                ],
                                "Position": [
                                    -123.1166332,
                                    49.2815528
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1144,
                                "Duration": 85,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 35,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 433,
                                "Duration": 47,
                                "ExitNumber": [],
                                "GeometryOffset": 40,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1131,
                                "Duration": 81,
                                "ExitNumber": [],
                                "GeometryOffset": 54,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 54,
                                "Duration": 4,
                                "ExitNumber": [],
                                "GeometryOffset": 79,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 520,
                                "Duration": 39,
                                "ExitNumber": [],
                                "GeometryOffset": 83,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 1123,
                                "Duration": 111,
                                "ExitNumber": [],
                                "GeometryOffset": 101,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1131,
                                "Duration": 81,
                                "ExitNumber": [],
                                "GeometryOffset": 141,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 2843,
                                "Duration": 209,
                                "ExitNumber": [],
                                "GeometryOffset": 167,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 3219,
                                "Duration": 246,
                                "ExitNumber": [],
                                "GeometryOffset": 255,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 64,
                                "Duration": 23,
                                "ExitNumber": [],
                                "GeometryOffset": 332,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 334,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RoadName": {
                        "Language": "en",
                        "Value": "Boundary Rd"
                    }
                },
                {
                    "RoadName": {
                        "Language": "en",
                        "Value": "Grandview Hwy"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.116655,
    49.281538
  ],
  "Destination": [
    -123.01791785749363,
    49.22782762759908
  ],
  "TravelMode": "Car",
  "Avoid": {
    "Areas": [
      {
        "Geometry": {
          "BoundingBox": [
            -123.078693,
            49.238987,
            -123.054638,
            49.251694
          ]
        }
      }
    ]
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.13277 49.281538 \
--destination -123.01791785749363 49.22782762759908 \
--travel-mode "Car" \
--avoid '{"Areas":[{"Geometry":{"BoundingBox":[-123.054638,49.238987,-123.054638,49.251694]}}]}'
```

------

### Gunakan CalculateRoutes dengan poligon hindari untuk membuat rute khusus.
<a name="calculate-routes-custom-avoidance-poly-polygon"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.116655,
        49.281538
    ],
    "Destination": [
        -123.01791785749363,
        49.22782762759908
    ],
    "TravelMode": "Car",
    "Avoid": {
        "Areas": [
            {
                "Geometry": {
                    "polygon": [
                        [
                            [
                                -123.06953,
                                49.256419
                            ],
                            [
                                -123.080486,
                                49.242115
                            ],
                            [
                                -123.058573,
                                49.242115
                            ],
                            [
                                -123.06953,
                                49.256419
                            ]
                        ]
                    ]
                }
            }
        ]
    }
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.0179179,
                                    49.2278276
                                ],
                                "Position": [
                                    -123.0229001,
                                    49.22883
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.116655,
                                    49.281538
                                ],
                                "Position": [
                                    -123.1166332,
                                    49.2815528
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1144,
                                "Duration": 85,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 35,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 433,
                                "Duration": 47,
                                "ExitNumber": [],
                                "GeometryOffset": 40,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1131,
                                "Duration": 81,
                                "ExitNumber": [],
                                "GeometryOffset": 54,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 54,
                                "Duration": 4,
                                "ExitNumber": [],
                                "GeometryOffset": 79,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 520,
                                "Duration": 39,
                                "ExitNumber": [],
                                "GeometryOffset": 83,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 1123,
                                "Duration": 111,
                                "ExitNumber": [],
                                "GeometryOffset": 101,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1131,
                                "Duration": 81,
                                "ExitNumber": [],
                                "GeometryOffset": 141,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 448,
                                "Duration": 34,
                                "ExitNumber": [],
                                "GeometryOffset": 167,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 1797,
                                "Duration": 151,
                                "ExitNumber": [],
                                "GeometryOffset": 182,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 2836,
                                "Duration": 224,
                                "ExitNumber": [],
                                "GeometryOffset": 222,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 339,
                                "Duration": 30,
                                "ExitNumber": [],
                                "GeometryOffset": 326,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 64,
                                "Duration": 23,
                                "ExitNumber": [],
                                "GeometryOffset": 335,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 337,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "en",
                        "Value": "HWY-1A"
                    }
                },
                {
                    "RoadName": {
                        "Language": "en",
                        "Value": "Nanaimo St"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.116655,
    49.281538
  ],
  "Destination": [
    -123.01791785749363,
    49.22782762759908
  ],
  "TravelMode": "Car",
  "Avoid": {
    "Areas": [
      {
        "Geometry": {
          "polygon": [
            [
              [
                -123.06953,
                49.256419
              ],
              [
                -123.080486,
                49.242115
              ],
              [
                -123.058573,
                49.242115
              ],
              [
                -123.06953,
                49.256419
              ]
            ]
          ]
        }
      }
    ]
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.13277 49.281538 \
--destination -123.01791785749363 49.22782762759908 \
--travel-mode "Car" \
--avoid '{"Areas":[{"Geometry":{"Polygon":[[[-123.06953,49.256419],[-123.05167,49.242115],[-123.02381,49.242115],[-123.06953,49.256419]]]}}]}'
```

------

### Gunakan CalculateRoutes dengan PolylinePolygon untuk membuat rute khusus.
<a name="calculate-routes-custom-avoidance-poly-polyline"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.116655,
        49.281538
    ],
    "Destination": [
        -123.01791785749363,
        49.22782762759908
    ],
    "TravelMode": "Car",
    "Avoid": {
        "Areas": [
            {
                "Geometry": {
                    "PolylinePolygon": [
                        "BF0s0sJxglvXr5CvkCAgpEs5CvkC"
                    ]
                }
            }
        ]
    }
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.0179179,
                                    49.2278276
                                ],
                                "Position": [
                                    -123.0229001,
                                    49.22883
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.116655,
                                    49.281538
                                ],
                                "Position": [
                                    -123.1166332,
                                    49.2815528
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1144,
                                "Duration": 85,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 35,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 433,
                                "Duration": 47,
                                "ExitNumber": [],
                                "GeometryOffset": 40,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1131,
                                "Duration": 81,
                                "ExitNumber": [],
                                "GeometryOffset": 54,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 54,
                                "Duration": 4,
                                "ExitNumber": [],
                                "GeometryOffset": 79,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 520,
                                "Duration": 39,
                                "ExitNumber": [],
                                "GeometryOffset": 83,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 1123,
                                "Duration": 111,
                                "ExitNumber": [],
                                "GeometryOffset": 101,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1131,
                                "Duration": 81,
                                "ExitNumber": [],
                                "GeometryOffset": 141,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 448,
                                "Duration": 34,
                                "ExitNumber": [],
                                "GeometryOffset": 167,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 1797,
                                "Duration": 151,
                                "ExitNumber": [],
                                "GeometryOffset": 182,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 2836,
                                "Duration": 224,
                                "ExitNumber": [],
                                "GeometryOffset": 222,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 339,
                                "Duration": 30,
                                "ExitNumber": [],
                                "GeometryOffset": 326,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 64,
                                "Duration": 23,
                                "ExitNumber": [],
                                "GeometryOffset": 335,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 337,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "en",
                        "Value": "HWY-1A"
                    }
                },
                {
                    "RoadName": {
                        "Language": "en",
                        "Value": "Nanaimo St"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.116655,
    49.281538
  ],
  "Destination": [
    -123.01791785749363,
    49.22782762759908
  ],
  "TravelMode": "Car",
  "Avoid": {
    "Areas": [
      {
        "Geometry": {
          "PolylinePolygon": [
            "BF0s0sJxglvXr5CvkCAgpEs5CvkC"
          ]
        }
      }
    ]
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.13277 49.281538 \
--destination -123.01791785749363 49.22782762759908 \
--travel-mode "Car" \
--avoid '{"Areas":[{"Geometry":{"PolylinePolygon":["BF0s0sJxglvXr5CvkCAgpEs5CvkC"]}}]}'
```

------

### Gunakan CalculateRoutes dengan menghindari Koridor untuk membuat rute khusus.
<a name="calculate-routes-custom-avoidance-corridor"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.116655,
        49.281538
    ],
    "Destination": [
        -123.01791785749363,
        49.22782762759908
    ],
    "TravelMode": "Car",
    "Avoid": {
        "Areas": [
            {
                "Geometry": {
                    "PolylineCorridor": {
                        "Polyline": "Redacted",
                        "Radius": 10
                    }
                }
            }
        ]
    }
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.0179179,
                                    49.2278276
                                ],
                                "Position": [
                                    -123.0229001,
                                    49.22883
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.116655,
                                    49.281538
                                ],
                                "Position": [
                                    -123.1166332,
                                    49.2815528
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1144,
                                "Duration": 85,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 35,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 1356,
                                "Duration": 134,
                                "ExitNumber": [],
                                "GeometryOffset": 40,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 2468,
                                "Duration": 204,
                                "ExitNumber": [],
                                "GeometryOffset": 90,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 1100,
                                "Duration": 88,
                                "ExitNumber": [],
                                "GeometryOffset": 170,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1588,
                                "Duration": 133,
                                "ExitNumber": [],
                                "GeometryOffset": 214,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 47,
                                "Duration": 14,
                                "ExitNumber": [],
                                "GeometryOffset": 260,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 2478,
                                "Duration": 196,
                                "ExitNumber": [],
                                "GeometryOffset": 265,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 339,
                                "Duration": 30,
                                "ExitNumber": [],
                                "GeometryOffset": 357,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 64,
                                "Duration": 23,
                                "ExitNumber": [],
                                "GeometryOffset": 366,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 368,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "en",
                        "Value": "HWY-1A"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.116655,
    49.281538
  ],
  "Destination": [
    -123.01791785749363,
    49.22782762759908
  ],
  "TravelMode": "Car",
  "Avoid": {
    "Areas": [
      {
        "Geometry": {
          "PolylineCorridor": {
            "Polyline": "Redacted",
            "Radius": 10
          }
        }
      }
    ]
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.116655 49.281538 \
--destination -123.01791785749363 49.22782762759908 \
--travel-mode "Car" \
--avoid '{"Areas": [{"Geometry": {"PolylineCorridor": {"Polyline": "BF2mysJnmkvX5ekiC", "Radius": 10}}}]}'
```

------

### Gunakan CalculateRoutes dengan menghindari PolylineCorridor untuk membuat rute khusus.
<a name="calculate-routes-custom-avoidance-polyline-corridor"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.116655,
        49.281538
    ],
    "Destination": [
        -123.01791785749363,
        49.22782762759908
    ],
    "TravelMode": "Car",
    "Avoid": {
        "Areas": [
            {
                "Geometry": {
                    "Corridor": {
                        "LineString": [
                            [
                                -123.06532243038754,
                                49.245226301868776
                            ],
                            [
                                -123.0547357660333,
                                49.24030469850804
                            ]
                        ],
                        "Radius": 10
                    }
                }
            }
        ]
    }
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.0179179,
                                    49.2278276
                                ],
                                "Position": [
                                    -123.0229001,
                                    49.22883
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.116655,
                                    49.281538
                                ],
                                "Position": [
                                    -123.1166332,
                                    49.2815528
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1144,
                                "Duration": 85,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 35,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 1356,
                                "Duration": 134,
                                "ExitNumber": [],
                                "GeometryOffset": 40,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 2468,
                                "Duration": 204,
                                "ExitNumber": [],
                                "GeometryOffset": 90,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 1100,
                                "Duration": 88,
                                "ExitNumber": [],
                                "GeometryOffset": 170,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 1588,
                                "Duration": 133,
                                "ExitNumber": [],
                                "GeometryOffset": 214,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 47,
                                "Duration": 14,
                                "ExitNumber": [],
                                "GeometryOffset": 260,
                                "Type": "Continue"
                            },
                            {
                                "Distance": 2478,
                                "Duration": 196,
                                "ExitNumber": [],
                                "GeometryOffset": 265,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 339,
                                "Duration": 30,
                                "ExitNumber": [],
                                "GeometryOffset": 357,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 64,
                                "Duration": 23,
                                "ExitNumber": [],
                                "GeometryOffset": 366,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 368,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "en",
                        "Value": "HWY-1A"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.116655,
    49.281538
  ],
  "Destination": [
    -123.01791785749363,
    49.22782762759908
  ],
  "TravelMode": "Car",
  "Avoid": {
    "Areas": [
      {
        "Geometry": {
          "Corridor": {
            "LineString": [
              [
                -123.06532243038754,
                49.245226301868776
              ],
              [
                -123.0547357660333,
                49.24030469850804
              ]
            ],
            "Radius": 10
          }
        }
      }
    ]
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.13277 49.281538 \
--destination -123.01791785749363 49.22782762759908 \
--travel-mode "Car" \
--avoid '{"Areas":[{"Geometry":{"Corridor":{"LineString":[[-123.06532243038754,49.245226301868776],[-123.0547357660333,49.24030469850804]],"Radius":10}}}]}'
```

------

# Cara membuat rute dengan penghindaran khusus dari beberapa item potensial
<a name="calculate-routes-custom-avoidance-multiple"></a>

 CalculateRoutes API membantu Anda menemukan rute terbaik antara asal dan tujuan, serta peluang terbaik untuk istirahat pengemudi. Ini mendukung mode perjalanan seperti mobil, truk, pejalan kaki dan skuter. Ini juga mendukung hingga 25 titik arah (persinggahan) termasuk asal dan tujuan, dengan hanya beberapa kendala.

## Kasus penggunaan potensial
<a name="potential-use-cases"></a>
+ **Hitung rute dengan penghindaran khusus:** Sesuaikan rute dengan penghindaran untuk rute yang lebih baik dan perencanaan perjalanan.

## Contoh
<a name="calculate-routes-examples"></a>

### Gunakan CalculateRoutes dengan menghindari tol, belokan, feri, jalan raya, terowongan, dan lainnya.
<a name="calculate-routes-custom-avoidance-tolls-ferries"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.118105,
        49.282423
    ],
    "Destination": [
        -123.020098,
        49.232872
    ],
    "TravelMode": "Car",
    "Avoid": {
        "TollRoads": true,
        "UTurns": true,
        "Ferries": true,
        "ControlledAccessHighways": true,
        "Tunnels": true
    }
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.020098,
                                    49.232872
                                ],
                                "Position": [
                                    -123.0203051,
                                    49.2328499
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.1181051,
                                    49.282423
                                ],
                                "Position": [
                                    -123.1180883,
                                    49.2824349
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1288,
                                "Duration": 102,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 37,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 1356,
                                "Duration": 134,
                                "ExitNumber": [],
                                "GeometryOffset": 42,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 7092,
                                "Duration": 568,
                                "ExitNumber": [],
                                "GeometryOffset": 92,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 65,
                                "Duration": 26,
                                "ExitNumber": [],
                                "GeometryOffset": 337,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 50,
                                "Duration": 18,
                                "ExitNumber": [],
                                "GeometryOffset": 339,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 343,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "en",
                        "Value": "HWY-1A"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.118105,
    49.282423
  ],
  "Destination": [
    -123.020098,
    49.232872
  ],
  "TravelMode": "Car",
  "Avoid": {
    "TollRoads": true,
    "UTurns": true,
    "Ferries": true,
    "ControlledAccessHighways": true,
    "Tunnels": true
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.118105 49.282423 \
--destination -123.020098 49.232872 \
--travel-mode "Car" \
--avoid '{"TollRoads": true, "UTurns": true, "Ferries": true, "ControlledAccessHighways": true, "Tunnels": true}'
```

------

# Cara menemukan rute tercepat
<a name="calculate-routes-custom-avoidance-fast"></a>

 CalculateRoutes API membantu Anda menemukan rute tercepat antara asal dan tujuan.

## Kasus penggunaan potensial
<a name="calculate-routes-fast-potential-use"></a>
+ **Optimalkan rute untuk efisiensi waktu:** Tingkatkan operasi pengiriman dengan menghitung rute tercepat. Ini berguna untuk mengurangi waktu perjalanan dalam logistik dan layanan pengiriman.

## Contoh
<a name="calculate-routes-fast-examples"></a>

### Hitung rute tercepat
<a name="calculate-routes-fast-car"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.118105,
        49.282423
    ],
    "Destination": [
        -123.020098,
        49.232872
    ],
    "TravelMode": "Car",
    "OptimizeRoutingFor": "FastestRoute"
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.020098,
                                    49.232872
                                ],
                                "Position": [
                                    -123.0203051,
                                    49.2328499
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.1181051,
                                    49.282423
                                ],
                                "Position": [
                                    -123.1180883,
                                    49.2824349
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1288,
                                "Duration": 102,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 37,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 1356,
                                "Duration": 134,
                                "ExitNumber": [],
                                "GeometryOffset": 42,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 7092,
                                "Duration": 568,
                                "ExitNumber": [],
                                "GeometryOffset": 92,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 65,
                                "Duration": 26,
                                "ExitNumber": [],
                                "GeometryOffset": 337,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 50,
                                "Duration": 18,
                                "ExitNumber": [],
                                "GeometryOffset": 339,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 343,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "en",
                        "Value": "HWY-1A"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "Origin": [
    -123.118105,
    49.282423
  ],
  "Destination": [
    -123.020098,
    49.232872
  ],
  "TravelMode": "Car",
  "OptimizeRoutingFor": "FastestRoute"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.118105 49.282423 \
--destination -123.020098 49.232872 \
--travel-mode "Car" \
--optimize-routing-for "FastestRoute"
```

------

# Cara menemukan rute terpendek
<a name="calculate-routes-custom-avoidance-shortest"></a>

 CalculateRoutes API membantu Anda menemukan rute terpendek antara asal dan tujuan.

## Kasus penggunaan potensial
<a name="calculate-routes-short-potential-use"></a>
+ **Optimalkan rute untuk efisiensi waktu:** Tingkatkan operasi pengiriman dengan menghitung rute terpendek. Ini berguna untuk mengurangi jarak perjalanan dalam logistik dan layanan pengiriman.

## Contoh
<a name="calculate-routes-short-examples"></a>

### Gunakan CalculateRoutes untuk menemukan rute terpendek dan menghemat jarak perjalanan.
<a name="calculate-routes-shortest"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.118105,
        49.282423
    ],
    "Destination": [
        -123.020098,
        49.232872
    ],
    "TravelMode": "Car",
    "OptimizeRoutingFor": "ShortestRoute"
}
```

------
#### [ Sample response ]

```
{
    "LegGeometryFormat": "FlexiblePolyline",
    "Notices": [],
    "Routes": [
        {
            "Legs": [
                {
                    "Geometry": {
                        "Polyline": "Redacted"
                    },
                    "TravelMode": "Car",
                    "Type": "Vehicle",
                    "VehicleLegDetails": {
                        "AfterTravelSteps": [],
                        "Arrival": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.020098,
                                    49.232872
                                ],
                                "Position": [
                                    -123.0203051,
                                    49.2328499
                                ]
                            }
                        },
                        "Departure": {
                            "Place": {
                                "ChargingStation": false,
                                "OriginalPosition": [
                                    -123.1181051,
                                    49.282423
                                ],
                                "Position": [
                                    -123.1180883,
                                    49.2824349
                                ]
                            }
                        },
                        "Incidents": [],
                        "Notices": [],
                        "PassThroughWaypoints": [],
                        "Spans": [],
                        "Tolls": [],
                        "TollSystems": [],
                        "TravelSteps": [
                            {
                                "Distance": 1288,
                                "Duration": 102,
                                "ExitNumber": [],
                                "GeometryOffset": 0,
                                "Type": "Depart"
                            },
                            {
                                "Distance": 262,
                                "Duration": 24,
                                "ExitNumber": [],
                                "GeometryOffset": 37,
                                "RampStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right"
                                },
                                "Type": "Ramp"
                            },
                            {
                                "Distance": 1356,
                                "Duration": 134,
                                "ExitNumber": [],
                                "GeometryOffset": 42,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 7092,
                                "Duration": 568,
                                "ExitNumber": [],
                                "GeometryOffset": 92,
                                "KeepStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left"
                                },
                                "Type": "Keep"
                            },
                            {
                                "Distance": 65,
                                "Duration": 26,
                                "ExitNumber": [],
                                "GeometryOffset": 337,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Left",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 50,
                                "Duration": 18,
                                "ExitNumber": [],
                                "GeometryOffset": 339,
                                "TurnStepDetails": {
                                    "Intersection": [],
                                    "SteeringDirection": "Right",
                                    "TurnIntensity": "Typical"
                                },
                                "Type": "Turn"
                            },
                            {
                                "Distance": 0,
                                "Duration": 0,
                                "ExitNumber": [],
                                "GeometryOffset": 343,
                                "Type": "Arrive"
                            }
                        ],
                        "TruckRoadTypes": [],
                        "Zones": []
                    }
                }
            ],
            "MajorRoadLabels": [
                {
                    "RouteNumber": {
                        "Language": "en",
                        "Value": "HWY-1A"
                    }
                }
            ]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/routes?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.118105,
        49.282423
    ],
    "Destination": [
        -123.020098,
        49.232872
    ],
    "TravelMode": "Car",
    "OptimizeRoutingFor": "ShortestRoute"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-routes --key ${YourKey} \
--origin -123.118105 49.282423 \
--destination -123.020098 49.232872 \
--travel-mode "Scooter" \
--optimize-routing-for "ShortestRoute"
```

------

# Pelajari cara menggunakan CalculateIsolines
<a name="calculate-isolines-how-to"></a>

Di bagian ini Anda mempelajari cara menggunakan `CalculateIsolines` rentang waktu atau jarak, serta mengatur area yang harus dihindari.

**Topics**
+ [Cara menghitung area layanan berdasarkan rentang waktu](calculate-service-area-based-on-time.md)
+ [Cara menghitung area layanan berdasarkan rentang jarak](calculate-service-area-based-on-distance.md)
+ [Cara menghitung area layanan berdasarkan penghindaran](calculate-service-area-based-on-avoidance.md)

# Cara menghitung area layanan berdasarkan rentang waktu
<a name="calculate-service-area-based-on-time"></a>

 CalculateIsolines API memungkinkan Anda menentukan area layanan yang dapat dijangkau dalam rentang waktu atau jarak tertentu, dengan memperhitungkan jaringan jalan dan kondisi lalu lintas. Kemampuan ini mendukung aplikasi dalam menentukan area layanan untuk restoran, toko kelontong, atau penyedia layanan lainnya yang dapat membantu dalam merencanakan efisiensi bahan bakar dan menentukan area yang dapat diakses untuk cakupan layanan.

## Kasus penggunaan potensial
<a name="calculate-service-area-time-potential-use"></a>
+ **Rencanakan area layanan:** Gunakan API ini untuk merencanakan area yang dapat diakses untuk layanan seperti restoran atau pengiriman bahan makanan berdasarkan waktu atau jarak perjalanan.

## Contoh
<a name="calculate-service-area-time-examples"></a>

### Hitung area servis berdasarkan rentang waktu dengan Mobil TravelMode
<a name="calculate-service-area-time"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Time": [
            500,
            1000,
            1500
        ]
    },
    "TravelMode": "Car"
}
```

------
#### [ Sample response ]

```
{
    "DepartureTime": "2024-10-28T14:27:56-07:00",
    "IsolineGeometryFormat": "FlexiblePolyline",
    "Isolines": [
        {
            "Connections": [],
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ],
            "TimeThreshold": 500
        },
        {
            "Connections": [],
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ],
            "TimeThreshold": 1000
        },
        {
            "Connections": [],
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ],
            "TimeThreshold": 1500
        }
    ],
    "SnappedOrigin": [
        -123.11687,
        49.2813999
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/isolines?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Time": [
            500,
            1000,
            1500
        ]
    },
    "TravelMode": "Car"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-isolines --key ${YourKey} \
--origin -123.11679620827039 49.28147612192166 \
--departure-time "2024-10-28T21:27:56Z" \
--thresholds '{"Time": [500, 1000, 1500]}' \
--travel-mode "Car"
```

------

# Cara menghitung area layanan berdasarkan rentang jarak
<a name="calculate-service-area-based-on-distance"></a>

 CalculateIsolines API memungkinkan Anda menentukan area layanan yang dapat dijangkau dalam rentang waktu atau jarak tertentu, dengan memperhitungkan jaringan jalan dan kondisi lalu lintas. Kemampuan ini mendukung aplikasi dalam menentukan area layanan untuk restoran, toko kelontong, atau penyedia layanan lainnya yang dapat membantu dalam merencanakan efisiensi bahan bakar dan menentukan area yang dapat diakses untuk cakupan layanan.

## Kasus penggunaan potensial
<a name="calculate-service-area-distance-potential-use"></a>
+ **Rencanakan area layanan:** Gunakan API ini untuk merencanakan area yang dapat diakses untuk layanan seperti restoran atau pengiriman bahan makanan berdasarkan waktu atau jarak perjalanan.

## Contoh
<a name="calculate-service-area-distance-examples"></a>

### Hitung area servis berdasarkan rentang jarak dengan Mobil TravelMode
<a name="calculate-service-area-distance"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            1000,
            2000,
            3000
        ]
    },
    "TravelMode": "Car"
}
```

------
#### [ Sample response ]

```
{
    "DepartureTime": "2024-10-28T14:27:56-07:00",
    "IsolineGeometryFormat": "FlexiblePolyline",
    "Isolines": [
        {
            "Connections": [],
            "DistanceThreshold": 1000,
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ]
        },
        {
            "Connections": [],
            "DistanceThreshold": 2000,
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ]
        },
        {
            "Connections": [],
            "DistanceThreshold": 3000,
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ]
        }
    ],
    "SnappedOrigin": [
        -123.11687,
        49.2813999
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/isolines?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            1000,
            2000,
            3000
        ]
    },
    "TravelMode": "Car"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-isolines --key ${YourKey} \
--origin -123.11679620827039 49.28147612192166 \
--departure-time "2024-10-28T21:27:56Z" \
--thresholds '{"Distance": [1000, 2000, 3000]}' \
--travel-mode "Car"
```

------

# Cara menghitung area layanan berdasarkan penghindaran
<a name="calculate-service-area-based-on-avoidance"></a>

 CalculateIsolines API memungkinkan Anda menentukan area layanan yang dapat dijangkau dalam rentang waktu atau jarak tertentu, memperhitungkan jaringan jalan dan kondisi lalu lintas yang harus dihindari. Kemampuan ini mendukung aplikasi dalam menentukan area layanan untuk restoran, toko kelontong, atau penyedia layanan lainnya yang dapat membantu dalam merencanakan efisiensi bahan bakar dan menentukan area yang dapat diakses untuk cakupan layanan.

## Kasus penggunaan potensial
<a name="calculate-service-area-avoidance-potential-use"></a>
+ **Rencanakan area layanan:** Gunakan API ini untuk merencanakan area yang dapat diakses untuk layanan seperti restoran atau pengiriman bahan makanan berdasarkan penghindaran.

## Contoh
<a name="calculate-service-area-avoidance-examples"></a>

### Hitung area servis berdasarkan penghindaran dengan Mobil TravelMode
<a name="calculate-service-area-avoidance-car"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "UTurns": true,
        "ControlledAccessHighways": true,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Car"
}
```

------
#### [ Sample response ]

```
{
    "DepartureTime": "2024-10-28T14:27:56-07:00",
    "IsolineGeometryFormat": "FlexiblePolyline",
    "Isolines": [
        {
            "Connections": [],
            "DistanceThreshold": 4000,
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ]
        }
    ],
    "SnappedOrigin": [
        -123.11687,
        49.2813999
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/isolines?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "UTurns": true,
        "ControlledAccessHighways": true,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Car"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-isolines --key ${YourKey} \
--origin -123.11679620827039 49.28147612192166 \
--departure-time "2024-10-28T21:27:56Z" \
--thresholds '{"Distance": [4000]}' \
--avoid '{"TollRoads": true, "UTurns": true, "ControlledAccessHighways": true, "Ferries": true, "DirtRoads": true, "SeasonalClosure": true, "CarShuttleTrains": true, "TollTransponders": true, "ZoneCategories": [{"Category": "Environmental"}]}' \
--travel-mode "Car"
```

------

### Hitung area servis berdasarkan penghindaran dengan Truk TravelMode
<a name="calculate-service-area-avoidance-truck"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "UTurns": true,
        "ControlledAccessHighways": true,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Truck"
}
```

------
#### [ Sample response ]

```
{
    "DepartureTime": "2024-10-28T14:27:56-07:00",
    "IsolineGeometryFormat": "FlexiblePolyline",
    "Isolines": [
        {
            "Connections": [],
            "DistanceThreshold": 4000,
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ]
        }
    ],
    "SnappedOrigin": [
        -123.11687,
        49.2813999
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/isolines?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "UTurns": true,
        "ControlledAccessHighways": true,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Truck"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-isolines --key ${YourKey} \
--origin -123.11679620827039 49.28147612192166 \
--departure-time "2024-10-28T21:27:56Z" \
--thresholds '{"Distance": [4000]}' \
--avoid '{"TollRoads": true, "UTurns": true, "ControlledAccessHighways": true, "Ferries": true, "DirtRoads": true, "SeasonalClosure": true, "CarShuttleTrains": true, "TollTransponders": true, "ZoneCategories": [{"Category": "Environmental"}]}' \
--travel-mode "Truck"
```

------

### Hitung area layanan berdasarkan penghindaran untuk pejalan kaki
<a name="calculate-service-area-avoidance-truck"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "ControlledAccessHighways": true,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Pedestrian"
}
```

------
#### [ Sample response ]

```
{
    "DepartureTime": "2024-10-28T14:27:56-07:00",
    "IsolineGeometryFormat": "FlexiblePolyline",
    "Isolines": [
        {
            "Connections": [],
            "DistanceThreshold": 4000,
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ]
        }
    ],
    "SnappedOrigin": [
        -123.11687,
        49.2813999
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/isolines?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "ControlledAccessHighways": true,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Pedestrian"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-isolines --key ${YourKey} \
--origin -123.11679620827039 49.28147612192166 \
--departure-time "2024-10-28T21:27:56Z" \
--thresholds '{"Distance": [4000]}' \
--avoid '{"TollRoads": true, "ControlledAccessHighways": true, "Ferries": true, "DirtRoads": true, "SeasonalClosure": true, "CarShuttleTrains": true, "TollTransponders": true, "ZoneCategories": [{"Category": "Environmental"}]}' \
--travel-mode "Pedestrian"
```

------

### Hitung area layanan berdasarkan penghindaran dengan Scooter TravelMode
<a name="calculate-service-area-avoidance-scooter"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "ControlledAccessHighways": true,
        "DifficultTurns": false,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Scooter"
}
```

------
#### [ Sample response ]

```
{
    "DepartureTime": "2024-10-28T14:27:56-07:00",
    "IsolineGeometryFormat": "FlexiblePolyline",
    "Isolines": [
        {
            "Connections": [],
            "DistanceThreshold": 4000,
            "Geometries": [
                {
                    "PolylinePolygon": [
                        "Redacted"
                    ]
                }
            ]
        }
    ],
    "SnappedOrigin": [
        -123.11687,
        49.2813999
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/isolines?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.11679620827039,
        49.28147612192166
    ],
    "DepartureTime": "2024-10-28T21:27:56Z",
    "Thresholds": {
        "Distance": [
            4000
        ]
    },
    "Avoid": {
        "TollRoads": true,
        "ControlledAccessHighways": true,
        "Ferries": true,
        "DirtRoads": true,
        "SeasonalClosure": true,
        "CarShuttleTrains": true,
        "TollTransponders": true,
        "ZoneCategories": [
            {
                "Category": "Environmental"
            }
        ]
    },
    "TravelMode": "Scooter"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-isolines --key ${YourKey} \
--origin -123.11679620827039 49.28147612192166 \
--departure-time "2024-10-28T21:27:56Z" \
--thresholds '{"Distance": [4000]}' \
--avoid '{"TollRoads": true, "ControlledAccessHighways": true, "Ferries": true, "DirtRoads": true, "SeasonalClosure": true, "CarShuttleTrains": true, "TollTransponders": true, "ZoneCategories": [{"Category": "Environmental"}]}' \
--travel-mode "Scooter"
```

------

# Pelajari cara menggunakan CalculateRouteMatrix
<a name="calculate-route-matrix-how-to"></a>

Di bagian ini Anda mempelajari cara menggunakan `CalculateRouteMatrix` untuk menemukan rute yang efisien untuk beberapa asal dan tujuan.

**Topics**
+ [Cara menghitung matriks rute jarak dan waktu untuk beberapa asal dan tujuan](calculate-route-matrix-distance.md)
+ [Cara menghitung matriks rute dengan penghindaran](calculate-route-matrix-with-avoidance.md)

# Cara menghitung matriks rute jarak dan waktu untuk beberapa asal dan tujuan
<a name="calculate-route-matrix-distance"></a>

 CalculateRouteMatrix API menghitung rute dan menyediakan waktu tempuh dan jarak tempuh untuk setiap kombinasi asal dan tujuan. Kemampuan ini berguna untuk aplikasi yang membutuhkan perencanaan dan pengoptimalan rute di beberapa lokasi.

Respons termasuk `Distance` dalam meter dan `Duration` dalam detik untuk setiap pasangan asal-tujuan.

## Kasus penggunaan potensial
<a name="calculate-route-matrix-potential-use"></a>
+ **Optimalkan perencanaan rute:** Gunakan matriks rute sebagai input untuk perangkat lunak pengoptimalan rute untuk meningkatkan efisiensi layanan dan mengurangi waktu perjalanan.

## Contoh
<a name="calculate-route-matrix-examples"></a>

### CalculateRouteMatrix dengan batas perutean tak terbatas
<a name="calculate-route-matrix-unbounded"></a>

------
#### [ Sample request ]

```
{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        },
        {
            "Position": [-123.11179620827039, 49.3014761219]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "DepartureTime": "2024-05-28T21:27:56Z",
    "RoutingBoundary": {
        "Unbounded": true
    }
}
```

------
#### [ Sample response ]

```
{
    "ErrorCount": 0,
    "RouteMatrix": [
        [
            {
                "Distance": 1907,
                "Duration": 343
            }
        ],
        [
            {
                "Distance": 5629,
                "Duration": 954
            }
        ]
    ],
    "RoutingBoundary": {
        "Unbounded": true
    }
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/route-matrix?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        },
        {
            "Position": [-123.11179620827039, 49.3014761219]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "DepartureTime": "2024-05-28T21:27:56Z",
    "RoutingBoundary": {
        "Unbounded": true
    }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-route-matrix --key ${YourKey} \
--origins '[{"Position": [-123.11679620827039, 49.28147612192166]}, {"Position": [-123.11179620827039, 49.3014761219]}]' \
--destinations '[{"Position": [-123.11179620827039, 49.28897192166]}]' \
--departure-time "2024-05-28T21:27:56Z" \
--routing-boundary '{"Unbounded": true}'
```

------

### CalculateRouteMatrix dengan batas routing berbasis geometri
<a name="calculate-route-matrix-geometry"></a>

------
#### [ Sample request ]

```
{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        },
        {
            "Position": [-123.11179620827039, 49.3014761219]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "DepartureTime": "2024-05-28T21:27:56Z",
    "RoutingBoundary": {
        "Geometry": {
            "AutoCircle": {
                "Margin": 10000,
                "MaxRadius": 30000
            }
        }
    }
}
```

------
#### [ Sample response ]

```
{
    "ErrorCount": 0,
    "RouteMatrix": [
        [
            {
                "Distance": 1907,
                "Duration": 344
            }
        ],
        [
            {
                "Distance": 5629,
                "Duration": 950
            }
        ]
    ],
    "RoutingBoundary": {
        "Geometry": {
            "Circle": {
                "Center": [
                    -123.1142962082704,
                    49.29147612191083
                ],
                "Radius": 11127
            }
        },
        "Unbounded": false
    }
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/route-matrix?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        },
        {
            "Position": [-123.11179620827039, 49.3014761219]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "DepartureTime": "2024-05-28T21:27:56Z",
    "RoutingBoundary": {
        "Geometry": {
            "AutoCircle": {
                "Margin": 10000,
                "MaxRadius": 30000
            }
        }
    }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-route-matrix --key ${YourKey} \
--origins '[{"Position": [-123.11679620827039, 49.28147612192166]}, {"Position": [-123.11179620827039, 49.3014761219]}]' \
--destinations '[{"Position": [-123.11179620827039, 49.28897192166]}]' \
--departure-time "2024-05-28T21:27:56Z" \
--routing-boundary '{"Geometry": {"AutoCircle": {"Margin": 10000, "MaxRadius": 30000}}}'
```

------

# Cara menghitung matriks rute dengan penghindaran
<a name="calculate-route-matrix-with-avoidance"></a>

 CalculateRouteMatrix API menghitung rute dan mengembalikan waktu dan jarak perjalanan dari masing-masing asal ke setiap tujuan dalam daftar yang ditentukan. Respons termasuk `Distance` dalam meter dan `Duration` dalam detik. API dapat digunakan untuk mengatur opsi penghindaran untuk area atau fitur jalan tertentu, memastikan rute menghindari zona atau kondisi tertentu. Jika rute alternatif tidak layak, preferensi penghindaran dapat dilewati.

## Kasus penggunaan potensial
<a name="calculate-route-matrix-potential-use"></a>
+ **Perencanaan dan pengoptimalan rute:** Gunakan matriks rute sebagai masukan untuk perangkat lunak yang memerlukan rute perjalanan yang dioptimalkan sambil menghindari area atau fitur jalan tertentu.

## Contoh
<a name="calculate-route-matrix-examples"></a>

### CalculateRouteMatrix dengan area penghindaran
<a name="calculate-route-matrix-avoidance-area"></a>

------
#### [ Sample request ]

```
{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "Avoid": {
        "Areas": [
            {
                "Geometry": {
                    "BoundingBox": [
                         -123.116561,
                         49.281517,
                         -123.110165,
                         49.285689
                    ]
                }
            }
        ]
    },
    "RoutingBoundary": {
        "Unbounded": true
    }
}
```

------
#### [ Sample response ]

```
{
    "ErrorCount": 0,
    "RouteMatrix": [
        [
            {
                "Distance": 1855,
                "Duration": 295
            }
        ]
    ],
    "RoutingBoundary": {
        "Unbounded": true
    }
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/route-matrix?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "Avoid": {
        "Areas": [
            {
                "Geometry": {
                    "BoundingBox": [
                         -123.116561,
                         49.281517,
                         -123.110165,
                         49.285689
                    ]
                }
            }
        ]
    },
    "RoutingBoundary": {
        "Unbounded": true
    }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-route-matrix --key ${YourKey} \
--origins '[{"Position": [-123.11679620827039, 49.28147612192166]}]' \
--destinations '[{"Position": [-123.112317039, 49.28897192166]}]' \
--avoid '{"Areas": [{"Geometry": {"BoundingBox": [-123.116561, 49.281517, -123.110165, 49.285689]}}]}' \
--routing-boundary '{"Unbounded": true}'
```

------

### CalculateRouteMatrix menghindari jalan tol, jalan raya, dan feri
<a name="calculate-route-matrix-avoidance-features"></a>

------
#### [ Sample request ]

```
{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "Avoid": {
        "TollRoads": true,
        "ControlledAccessHighways": true,
        "Ferries": true    
    },
    "RoutingBoundary": {
        "Unbounded": true
    }
}
```

------
#### [ Sample response ]

```
{
    "ErrorCount": 0,
    "RouteMatrix": [
        [
            {
                "Distance": 1855,
                "Duration": 295
            }
        ]
    ],
    "RoutingBoundary": {
        "Unbounded": true
    }
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/route-matrix?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origins": [
        {
            "Position": [-123.11679620827039, 49.28147612192166]
        }
    ],
    "Destinations": [
        {
            "Position": [-123.112317039, 49.28897192166]
        }
    ],
    "Avoid": {
        "TollRoads": true,
        "ControlledAccessHighways": true,
        "Ferries": true    
    },
    "RoutingBoundary": {
        "Unbounded": true
    }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes calculate-route-matrix --key ${YourKey} \
--origins '[{"Position": [-123.11679620827039, 49.28147612192166]}]' \
--destinations '[{"Position": [-123.112317039, 49.28897192166]}]' \
--avoid '{"TollRoads": true, "ControlledAccessHighways": true, "Ferries": true}' \
--routing-boundary '{"Unbounded": true}'
```

------

# Pelajari cara menggunakan OptimizeWaypoints
<a name="optimize-waypoints-how-to"></a>

Pelajari cara menggunakan `OptimizeWaypoints` untuk menemukan rute terbaik untuk meminimalkan waktu atau jarak perjalanan.

**Topics**
+ [Cara mengoptimalkan titik arah untuk rute](optimize-waypoints.md)
+ [Cara mengoptimalkan titik arah untuk rute dengan kesadaran lalu lintas](optimize-waypoints-traffic-awareness.md)
+ [Cara mengoptimalkan titik arah untuk rute dengan kesadaran jam akses](optimize-waypoints-access-hours.md)

# Cara mengoptimalkan titik arah untuk rute
<a name="optimize-waypoints"></a>

 OptimizeWaypoints API menghitung rute paling efisien antara serangkaian titik arah, meminimalkan waktu perjalanan atau jarak total. API ini memecahkan Masalah Traveling Salesman dengan mempertimbangkan jaringan jalan dan kondisi lalu lintas untuk menentukan jalur yang optimal.

## Kasus penggunaan potensial
<a name="optimize-waypoints-potential-use"></a>
+ **Menganalisis pola area layanan:** Gunakan pengoptimalan waypoint untuk membuat keputusan berdasarkan informasi tentang area layanan bisnis dan meningkatkan efisiensi logistik.

## Contoh
<a name="optimize-waypoints-examples"></a>

### Optimalkan titik arah menggunakan Mobil TravelMode
<a name="optimize-waypoints-car"></a>

------
#### [ Sample Request ]

```
{
    "Origin": [
        -123.095740,
        49.274426
    ],
    "Waypoints": [
        {
            "Position": [
                -123.115193,
                49.280596
            ]
        },
        {
            "Position": [
                -123.089557,
                49.271774
            ]
        }
    ],
    "DepartureTime": "2024-10-25T18:13:42Z",
    "Destination": [
        -123.095185,
        49.263728
    ],
    "TravelMode": "Car"
}
```

------
#### [ Sample Response ]

```
{
    "Connections": [
        {
            "Distance": 1989,
            "From": "Origin",
            "RestDuration": 0,
            "To": "Waypoint0",
            "TravelDuration": 258,
            "WaitDuration": 0
        },
        {
            "Distance": 3010,
            "From": "Waypoint0",
            "RestDuration": 0,
            "To": "Waypoint1",
            "TravelDuration": 298,
            "WaitDuration": 0
        },
        {
            "Distance": 2371,
            "From": "Waypoint1",
            "RestDuration": 0,
            "To": "Destination",
            "TravelDuration": 311,
            "WaitDuration": 0
        }
    ],
    "Distance": 7370,
    "Duration": 867,
    "ImpedingWaypoints": [],
    "OptimizedWaypoints": [
        {
            "DepartureTime": "2024-10-25T18:13:42Z",
            "Id": "Origin",
            "Position": [
                -123.09574,
                49.274426
            ]
        },
        {
            "DepartureTime": "2024-10-25T18:18:00Z",
            "Id": "Waypoint0",
            "Position": [
                -123.115193,
                49.280596
            ]
        },
        {
            "DepartureTime": "2024-10-25T18:22:58Z",
            "Id": "Waypoint1",
            "Position": [
                -123.089557,
                49.271774
            ]
        },
        {
            "ArrivalTime": "2024-10-25T18:28:09Z",
            "Id": "Destination",
            "Position": [
                -123.095185,
                49.263728
            ]
        }
    ],
    "TimeBreakdown": {
        "RestDuration": 0,
        "ServiceDuration": 0,
        "TravelDuration": 867,
        "WaitDuration": 0
    }
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/optimize-waypoints?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.095740,
        49.274426
    ],
    "Waypoints": [
        {
            "Position": [
                -123.115193,
                49.280596
            ]
        },
        {
            "Position": [
                -123.089557,
                49.271774
            ]
        }
    ],
    "DepartureTime": "2024-10-25T18:13:42Z",
    "Destination": [
        -123.095185,
        49.263728
    ],
    "TravelMode": "Car"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes optimize-waypoints --key ${YourKey} \
--origin -123.095740 49.274426 \
--waypoints '[{"Position": [-123.115193 , 49.280596]}, {"Position": [-123.089557 , 49.271774]}]' \
--destination -123.095185 49.263728 \
--departure-time "2024-10-25T18:13:42Z" \
--travel-mode "Car"
```

------

# Cara mengoptimalkan titik arah untuk rute dengan kesadaran lalu lintas
<a name="optimize-waypoints-traffic-awareness"></a>

 OptimizeWaypoints API menghitung rute optimal antara beberapa titik arah untuk meminimalkan waktu perjalanan atau jarak total. Ini menggunakan algoritma canggih untuk memecahkan Masalah Traveling Salesman, menentukan jalur yang paling efisien sambil memperhitungkan faktor-faktor seperti jaringan jalan dan kondisi lalu lintas real-time.

## Kasus penggunaan potensial
<a name="optimize-waypoints-potential-use"></a>
+ **Optimalkan rute multi-stop untuk efisiensi pengiriman:** Tingkatkan operasi pengiriman dengan menghitung rute terpendek atau tercepat di antara beberapa pemberhentian. Ini berguna untuk mengurangi biaya operasional, konsumsi bahan bakar, dan waktu perjalanan dalam logistik dan layanan pengiriman.

## Contoh
<a name="optimize-waypoints-examples"></a>

### Optimalkan titik arah dengan kesadaran lalu lintas menggunakan mobil TravelMode
<a name="optimize-waypoints-traffic-car"></a>

------
#### [ Sample request ]

```
{
    "Origin": [
        -123.095740,
        49.274426
    ],
    "Waypoints": [
        {
            "Position": [
                -123.115193,
                49.280596
            ]
        },
        {
            "Position": [
                -123.089557,
                49.271774
            ]
        }
    ],
    "DepartureTime": "2024-10-25T18:13:42Z",
    "Destination": [
        -123.095185,
        49.263728
    ],
    "TravelMode": "Car",
    "Traffic": {
        "Usage": "UseTrafficData"
    }
}
```

------
#### [ Sample response ]

```
{
    "Connections": [
        {
            "Distance": 1989,
            "From": "Origin",
            "RestDuration": 0,
            "To": "Waypoint0",
            "TravelDuration": 324,
            "WaitDuration": 0
        },
        {
            "Distance": 2692,
            "From": "Waypoint0",
            "RestDuration": 0,
            "To": "Waypoint1",
            "TravelDuration": 338,
            "WaitDuration": 0
        },
        {
            "Distance": 2371,
            "From": "Waypoint1",
            "RestDuration": 0,
            "To": "Destination",
            "TravelDuration": 395,
            "WaitDuration": 0
        }
    ],
    "Distance": 7052,
    "Duration": 1057,
    "ImpedingWaypoints": [],
    "OptimizedWaypoints": [
        {
            "DepartureTime": "2024-10-25T18:13:42Z",
            "Id": "Origin",
            "Position": [
                -123.09574,
                49.274426
            ]
        },
        {
            "ArrivalTime": "2024-10-25T18:19:06Z",
            "DepartureTime": "2024-10-25T18:19:06Z",
            "Id": "Waypoint0",
            "Position": [
                -123.115193,
                49.280596
            ]
        },
        {
            "ArrivalTime": "2024-10-25T18:24:44Z",
            "DepartureTime": "2024-10-25T18:24:44Z",
            "Id": "Waypoint1",
            "Position": [
                -123.089557,
                49.271774
            ]
        },
        {
            "ArrivalTime": "2024-10-25T18:31:19Z",
            "Id": "Destination",
            "Position": [
                -123.095185,
                49.263728
            ]
        }
    ],
    "TimeBreakdown": {
        "RestDuration": 0,
        "ServiceDuration": 0,
        "TravelDuration": 1057,
        "WaitDuration": 0
    }
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/optimize-waypoints?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.095740,
        49.274426
    ],
    "Waypoints": [
        {
            "Position": [
                -123.115193,
                49.280596
            ]
        },
        {
            "Position": [
                -123.089557,
                49.271774
            ]
        }
    ],
    "DepartureTime": "2024-10-25T18:13:42Z",
    "Destination": [
        -123.095185,
        49.263728
    ],
    "TravelMode": "Car",
    "Traffic": {
        "Usage": "UseTrafficData"
    }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes optimize-waypoints --key ${YourKey} \
--origin -123.095740 49.274426 \
--waypoints '[{"Position": [-123.115193 , 49.280596]}, {"Position": [-123.089557 , 49.271774]}]' \
--destination -123.095185 49.263728 \
--departure-time "2024-10-25T18:13:42Z" \
--travel-mode "Car" \
--traffic '{"Usage": "UseTrafficData"}'
```

------

# Cara mengoptimalkan titik arah untuk rute dengan kesadaran jam akses
<a name="optimize-waypoints-access-hours"></a>

 OptimizeWaypoints API juga menghitung rute optimal antara serangkaian titik arah, dengan tujuan meminimalkan waktu perjalanan atau total jarak yang ditempuh. Ini memecahkan Masalah Penjual Perjalanan dalam menentukan jalur yang paling efisien, dengan mempertimbangkan faktor-faktor seperti jaringan jalan dan kondisi lalu lintas.

## Kasus penggunaan potensial
<a name="optimize-waypoints-access-hours-potential-use"></a>
+ **Analisis jam akses pelanggan:** Rencanakan efisiensi di sekitar jam akses pelanggan Anda.

## Contoh
<a name="optimize-waypoints-examples"></a>

### Optimalkan titik arah dengan kesadaran jam akses menggunakan Mobil TravelMode
<a name="optimize-waypoints-car"></a>

------
#### [ Sample Request ]

```
{
    "Origin": [
        -123.095740,
        49.274426
    ],
    "Waypoints": [
        {
            "Position": [
                -123.115193,
                49.280596
            ],
            "SideOfStreet": {
                "Position": [
                    -123.089557,
                    49.271774
                ],
                "UseWith": "AnyStreet"
            },
            "AccessHours": {
                "From": {
                    "DayOfWeek": "Saturday",
                    "TimeOfDay": "00:02:42Z"
                },
                "To": {
                    "DayOfWeek": "Friday",
                    "TimeOfDay": "1:33:36+02:50"
                }
            },
            "Heading": "250",
            "ServiceDuration": "200"
        },
        {
            "Position": [
                -123.089557,
                49.271774
            ],
            "AccessHours": {
                "From": {
                    "DayOfWeek": "Monday",
                    "TimeOfDay": "00:02:42Z"
                },
                "To": {
                    "DayOfWeek": "Tuesday",
                    "TimeOfDay": "1:33:36+02:50"
                }
            },
            "ServiceDuration": "200"
        }
    ],
    "DepartureTime": "2024-10-25T18:13:42Z",
    "Destination": [
        -123.095185,
        49.263728
    ],
    "TravelMode": "Car"
}
```

------
#### [ Sample Response ]

```
{
    "Connections": [
        {
            "Distance": 1989,
            "From": "Origin",
            "RestDuration": 0,
            "To": "Waypoint0",
            "TravelDuration": 258,
            "WaitDuration": 20682
        },
        {
            "Distance": 3360,
            "From": "Waypoint0",
            "RestDuration": 0,
            "To": "Waypoint1",
            "TravelDuration": 378,
            "WaitDuration": 172222
        },
        {
            "Distance": 2371,
            "From": "Waypoint1",
            "RestDuration": 0,
            "To": "Destination",
            "TravelDuration": 311,
            "WaitDuration": 0
        }
    ],
    "Distance": 7720,
    "Duration": 194251,
    "ImpedingWaypoints": [],
    "OptimizedWaypoints": [
        {
            "DepartureTime": "2024-10-25T18:13:42Z",
            "Id": "Origin",
            "Position": [
                -123.09574,
                49.274426
            ]
        },
        {
            "ArrivalTime": "2024-10-25T18:18:00Z",
            "DepartureTime": "2024-10-26T00:06:02Z",
            "Id": "Waypoint0",
            "Position": [
                -123.115193,
                49.280596
            ]
        },
        {
            "ArrivalTime": "2024-10-26T00:12:20Z",
            "DepartureTime": "2024-10-28T00:06:02Z",
            "Id": "Waypoint1",
            "Position": [
                -123.089557,
                49.271774
            ]
        },
        {
            "ArrivalTime": "2024-10-28T00:11:13Z",
            "Id": "Destination",
            "Position": [
                -123.095185,
                49.263728
            ]
        }
    ],
    "TimeBreakdown": {
        "RestDuration": 0,
        "ServiceDuration": 400,
        "TravelDuration": 947,
        "WaitDuration": 192904
    }
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/optimize-waypoints?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
    "Origin": [
        -123.095740,
        49.274426
    ],
    "Waypoints": [
        {
            "Position": [
                -123.115193,
                49.280596
            ],
            "SideOfStreet": {
                "Position": [
                    -123.089557,
                    49.271774
                ],
                "UseWith": "AnyStreet"
            },
            "AccessHours": {
                "From": {
                    "DayOfWeek": "Saturday",
                    "TimeOfDay": "00:02:42Z"
                },
                "To": {
                    "DayOfWeek": "Friday",
                    "TimeOfDay": "1:33:36+02:50"
                }
            },
            "Heading": "250",
            "ServiceDuration": "200"
        },
        {
            "Position": [
                -123.089557,
                49.271774
            ],
            "AccessHours": {
                "From": {
                    "DayOfWeek": "Monday",
                    "TimeOfDay": "00:02:42Z"
                },
                "To": {
                    "DayOfWeek": "Tuesday",
                    "TimeOfDay": "1:33:36+02:50"
                }
            },
            "ServiceDuration": "200"
        }
    ],
    "DepartureTime": "2024-10-25T18:13:42Z",
    "Destination": [
        -123.095185,
        49.263728
    ],
    "TravelMode": "Car"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes optimize-waypoints --key ${YourKey} \
--origin -123.095740 49.274426 \
--waypoints '[{"Position": [-123.115193 , 49.280596], "SideOfStreet": {"Position": [-123.089557, 49.271774], "UseWith": "AnyStreet"}, "AccessHours": {"From": {"DayOfWeek": "Saturday", "TimeOfDay": "00:02:42Z"}, "To": {"DayOfWeek": "Friday", "TimeOfDay": "1:33:36+02:50"}}, "Heading": 250, "ServiceDuration": 200}, {"Position": [-123.089557, 49.271774], "AccessHours": {"From": {"DayOfWeek": "Monday", "TimeOfDay": "00:02:42Z"}, "To": {"DayOfWeek": "Tuesday", "TimeOfDay": "1:33:36+02:50"}}, "ServiceDuration": 200}]' \
--destination -123.095185 49.263728 \
--departure-time "2024-10-25T18:13:42Z" \
--travel-mode "Car"
```

------

# Pelajari cara menggunakan SnapToRoads
<a name="snap-to-roads-how-to"></a>

 Topik ini menjelaskan cara menggunakan `SnapToRoads` untuk menyelaraskan jejak GPS dengan jaringan jalan, meningkatkan akurasi posisi untuk navigasi dan aplikasi manajemen armada. API ini mengoreksi penyimpangan GPS dan kehilangan sinyal dengan menjentikkan koordinat ke segmen jalan terdekat, sambil juga menghormati pembatasan mode perjalanan. Contoh menggambarkan penggunaan praktis, seperti melapisi jejak GPS, mengisi celah data, dan mengurangi noise untuk visualisasi rute yang lebih jelas.

**Topics**
+ [Cara mencocokkan jejak GPS ke jaringan jalan](how-to-match-gps-traces.md)

# Cara mencocokkan jejak GPS ke jaringan jalan
<a name="how-to-match-gps-traces"></a>

 SnapToRoads API memungkinkan Anda untuk mencocokkan jejak GPS ke jaringan jalan. Jejak GPS mencakup posisi dan metadata seperti stempel waktu, kecepatan, dan heading yang direkam menggunakan perangkat GPS. Jejak ini sering memiliki margin kesalahan, membuatnya sulit digunakan untuk analisis dan visualisasi secara langsung.

SnapToRoads mempertimbangkan batasan hukum dan waktu untuk mode perjalanan yang ditentukan saat mencocokkan jejak. Jika jejak sangat menunjukkan pelanggaran pembatasan, rute aktual yang diambil dipertahankan.

## Kasus penggunaan potensial
<a name="potential-use"></a>
+ **Hamparan jejak GPS ke jalan yang paling mungkin digerakkan:** Fitur ini membantu menyelaraskan data GPS ke jalur paling akurat di jaringan jalan, mendukung visualisasi data yang lebih jelas.
+ **Interpolasi celah dalam jejak GPS:** SnapToRoads dapat mengisi celah dengan menjentikkan koordinat ke segmen jalan, menciptakan kumpulan data yang lebih berkelanjutan dan berguna untuk aplikasi.
+ **Filter noise dan outlier:** Dengan menjentikkan ke jalan terdekat, API ini dapat membantu menghilangkan outlier dan mengurangi noise GPS, meningkatkan keandalan data untuk analisis.

## Contoh
<a name="examples"></a>

### Cocokkan jejak GPS menggunakan mode mobil
<a name="match-gps-car-mode"></a>

------
#### [ Sample request ]

```
{
  "TracePoints": [
    {
      "Position": [8.53404,50.16364],
      "Timestamp": "2024-05-22T18:13:42Z"
    },
    {
      "Position": [8.53379056,50.16352417],
      "Speed": 20,
      "Timestamp": "2024-05-22T18:13:59Z"
    }
  ],
  "TravelMode": "Car"
}
```

------
#### [ Sample response ]

```
{
    "Notices": [],
    "SnappedGeometry": {
        "Polyline": "Redacted"
    },
    "SnappedGeometryFormat": "FlexiblePolyline",
    "SnappedTracePoints": [
        {
            "Confidence": 1,
            "OriginalPosition": [8.53404, 50.16364],
            "SnappedPosition": [8.53402, 50.16367]
        },
        {
            "Confidence": 0.86,
            "OriginalPosition": [8.53379056, 50.16352417],
            "SnappedPosition": [8.53375, 50.16356]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/snap-to-roads?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "TracePoints": [
    {
      "Position": [8.53404,50.16364],
      "Timestamp": "2024-05-22T18:13:42Z"
    },
    {
      "Position": [8.53379056,50.16352417],
      "Speed": 20,
      "Timestamp": "2024-05-22T18:13:59Z"
    }
  ],
  "TravelMode": "Car"
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes snap-to-roads --key ${YourKey} \
--trace-points '[{"Position": [8.53404, 50.16364], "Timestamp": "2024-05-22T18:13:42Z"}, {"Position": [8.53379056, 50.16352417], "Speed": 20, "Timestamp": "2024-05-22T18:13:59Z"}]' \
--travel-mode "Car"
```

------

### Cocokkan jejak GPS menggunakan mode truk dengan opsi
<a name="match-gps-truck-mode-options"></a>

------
#### [ Sample request ]

```
{
  "TracePoints": [
    {
      "Position": [8.53404,50.16364],
      "Timestamp": "2024-05-22T18:13:42Z"
    },
    {
      "Position": [8.53379056,50.16352417],
      "Speed": 20,
      "Timestamp": "2024-05-22T18:13:59Z"
    }
  ],
  "TravelMode": "Truck",
  "TravelModeOptions": {
    "Truck": {
      "GrossWeight": 10000
    }
  }
}
```

------
#### [ Sample response ]

```
{
    "Notices": [],
    "SnappedGeometry": {
        "Polyline": "Redacted"
    },
    "SnappedGeometryFormat": "FlexiblePolyline",
    "SnappedTracePoints": [
        {
            "Confidence": 1,
            "OriginalPosition": [8.53404, 50.16364],
            "SnappedPosition": [8.53402, 50.16367]
        },
        {
            "Confidence": 0.86,
            "OriginalPosition": [8.53379056, 50.16352417],
            "SnappedPosition": [8.53375, 50.16356]
        }
    ]
}
```

------
#### [ cURL ]

```
curl --request POST \
  --url 'https://routes.geo.eu-central-1.amazonaws.com/v2/snap-to-roads?key=Your_key' \
  --header 'Content-Type: application/json' \
  --data '{
  "TracePoints": [
    {
      "Position": [8.53404,50.16364],
      "Timestamp": "2024-05-22T18:13:42Z"
    },
    {
      "Position": [8.53379056,50.16352417],
      "Speed": 20,
      "Timestamp": "2024-05-22T18:13:59Z"
    }
  ],
  "TravelMode": "Truck",
  "TravelModeOptions": {
    "Truck": {
      "GrossWeight": 10000
    }
  }
}'
```

------
#### [ AWS CLI ]

```
aws geo-routes snap-to-roads --key ${YourKey} \
--trace-points '[{"Position": [8.53404, 50.16364], "Timestamp": "2024-05-22T18:13:42Z"}, {"Position": [8.53379056, 50.16352417], "Speed": 20, "Timestamp": "2024-05-22T18:13:59Z"}]' \
--travel-mode "Truck" \
--travel-mode-options '{"Truck": {"GrossWeight": 10000}}'
```

------

# Mengelola biaya dan penggunaan
<a name="routes-whats-next"></a>

Saat Anda terus belajar tentang rute Lokasi Amazon, penting untuk memahami cara mengelola kapasitas layanan, memastikan Anda mengikuti batas penggunaan, dan mendapatkan hasil terbaik melalui pengoptimalan kuota dan API. Dengan menerapkan praktik terbaik untuk kinerja dan akurasi, Anda dapat menyesuaikan aplikasi Anda untuk menangani kueri terkait tempat secara efisien dan memaksimalkan permintaan API Anda.

**Topics**
+ [Praktik terbaik](routes-best-practices.md)
+ [Harga rute](routes-pricing.md)
+ [Kuota dan Penggunaan Rute](routes-quota-usage.md)

# Praktik terbaik
<a name="routes-best-practices"></a>

Bagian ini mencakup praktik terbaik untuk menggunakan kompresi dan memilih antara Simple (GeoJSON) FlexiblePolyline dan format saat berinteraksi dengan API, memberikan panduan untuk mengoptimalkan kinerja, bandwidth, dan penanganan data.

## Kompresi
<a name="compression"></a>

Untuk meningkatkan kinerja dan efisiensi aplikasi Anda saat berinteraksi dengan API kami, disarankan untuk mengaktifkan kompresi untuk respons, terutama saat menangani muatan berbasis teks yang besar. Anda dapat mengaktifkan kompresi dengan memasukkan `Accept-Encoding` header dalam permintaan API Anda, menentukan metode kompresi pilihan Anda. Kami mendukung `gzip` dan `deflate` untuk kemampuan kompresi mereka, dengan `gzip` biasanya menawarkan rasio kompresi yang lebih baik.

### Kapan Mengaktifkan Kompresi
<a name="when-to-enable-compression"></a>

**Tanggapan Besar**  
Aktifkan kompresi untuk respons berbasis teks yang besar untuk mengurangi penggunaan bandwidth dan meningkatkan waktu muat.

**Kendala Jaringan**  
Jika aplikasi Anda beroperasi melalui bandwidth terbatas atau jaringan latensi tinggi, kompresi dapat meningkatkan efisiensi transfer data.

### Cara Menggunakan Kompresi Secara Efektif
<a name="how-to-use-compression-effectively"></a>

**Mengatur Header Accept-Encoding**  
Sertakan `Accept-Encoding: gzip, deflate` dalam permintaan HTTP Anda untuk memberi tahu API kami bahwa Anda mendukung metode kompresi ini. Metode untuk mengaktifkan dan menangani kompresi bervariasi menurut [AWS SDK](https://docs.aws.amazon.com/sdkref/latest/guide/overview.html) dan bahasa pemrograman. Misalnya, [AWS SDK for Java](https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/ClientConfiguration.html#withGzip-boolean-) v1 menggunakan `withGzip` metode di kelas untuk mengaktifkan gzip`ClientConfiguration`, sedangkan AWS SDK for Go memerlukan penambahan middleware khusus untuk penanganan kompresi. Untuk informasi lainnya SDKs, silakan merujuk ke [Panduan Referensi AWS SDK](https://docs.aws.amazon.com/sdkref/latest/guide/overview.html) untuk petunjuk terperinci.

**Tangani Dekompresi dengan Benar**  
Pastikan aplikasi klien Anda dapat mendekompresi respons dengan benar berdasarkan `Content-Encoding` header yang dikembalikan oleh API kami.

**Uji dan Monitor**  
Evaluasi secara teratur dampak kompresi pada kinerja aplikasi Anda, menyeimbangkan manfaat pengurangan ukuran muatan terhadap overhead CPU tambahan dari proses dekompresi.

## Polyline
<a name="polyline"></a>

Praktik terbaik untuk memilih antara Simple (GeoJSON) FlexiblePolyline dan format saat berinteraksi dengan API kami, untuk mengoptimalkan kinerja dan kegunaan data geospasial Anda.

### Gunakan Format Sederhana (GeoJSON)
<a name="use-simple-format"></a>

**Keterbacaan dan Standardisasi**  
Gunakan saat Anda memerlukan format yang dikenal luas dan dapat dibaca manusia untuk kemudahan debugging dan interoperabilitas dengan berbagai alat geospasial.

**presisi**  
Pilih format Sederhana saat aplikasi Anda membutuhkan presisi tinggi untuk koordinat, karena GeoJSON mempertahankan presisi desimal penuh tanpa kehilangan.

**Dataset yang lebih kecil**  
Format sederhana sangat ideal ketika bekerja dengan set data koordinat yang lebih kecil di mana manfaat pengurangan ukuran kompresi minimal.

### Gunakan FlexiblePolyline Format
<a name="use-flexiblepolyline-format"></a>

**Pengurangan Ukuran Data**  
FlexiblePolyline sangat ideal ketika Anda perlu meminimalkan jumlah data yang dikirimkan, terutama untuk daftar koordinat yang besar, dengan memanfaatkan teknik kompresi lossy.

**Keamanan URL**  
FlexiblePolyline menyediakan string yang ringkas dan aman URL yang dapat digunakan secara langsung dalam parameter kueri tanpa pengkodean tambahan.

**Optimalisasi Kinerja**  
FlexiblePolyline membantu mengurangi ukuran muatan, yang mengarah ke transfer data yang lebih cepat dan penggunaan bandwidth yang lebih rendah, menjadikannya penting untuk aplikasi berkinerja tinggi atau yang beroperasi melalui jaringan terbatas.

# Harga rute
<a name="routes-pricing"></a>

Silakan lihat di bawah untuk ember harga untuk setiap API:

## Hitung Rute
<a name="calculate-routes-price"></a>

Harga ini didasarkan pada jumlah permintaan API. `CalculateRoutes`memiliki tiga bucket harga: Core, Advanced, dan Premium.

**Core**  
Bucket harga ini mendukung moda perjalanan Mobil, Truk, dan Pejalan Kaki, tanpa perhitungan biaya tol.

**Lanjutan**  
Bucket harga ini mendukung mode perjalanan alternatif seperti Scooter, tanpa perhitungan biaya tol.

**Premium**  
Bucket harga ini mendukung perhitungan biaya tol. Anda akan dikenakan biaya Premium ketika Anda meminta perhitungan biaya tol dengan menetapkan parameter permintaan `LegAdditionalFeatures["Tolls"]` atau`SpanAdditionalFeatures["TollSystems"]`, terlepas dari mode perjalanan.

## Hitung Matriks Rute
<a name="calculate-route-matri-price"></a>

Harga ini didasarkan pada jumlah rute yang dihitung. Jumlah rute yang dihitung dalam setiap permintaan sama dengan jumlah asal dikalikan dengan jumlah tujuan,. `Number of Routes = Number of origins x Number of Destinations` Misalnya, ketika menggunakan ukuran matriks 300 asal dengan 100 tujuan, jumlah total rute yang dihitung adalah 30.000 (300 x 100 = 30.000).

**catatan**  
Perhitungan rute ditagih untuk setiap pasangan asal dan tujuan. Jika Anda menggunakan matriks asal dan tujuan yang besar, biaya Anda akan meningkat.

`CalculateRouteMatrix`memiliki 2 ember harga: Core dan Advanced.

**Core**  
Bucket harga ini mendukung mode perjalanan Mobil, Truk, dan Pejalan Kaki.

**Lanjutan**  
Bucket harga ini mendukung mode perjalanan alternatif, seperti Scooter.

## Optimalkan Waypoint
<a name="optimize-waypoint-price"></a>

Harga ini didasarkan pada jumlah permintaan API. `OptimizeWaypoint`memiliki 2 ember harga: Advanced dan Premium.

**Lanjutan**  
 Bucket harga ini mendukung hingga 30 titik arah dalam satu permintaan; mode perjalanan untuk Mobil, Truk, dan Pejalan Kaki, dengan kotak pembatas titik input dalam jarak 200 km, dan tanpa parameter opsional seperti,,,`Avoid`,,,, `Clustering` `Driver` `Exclude.Countries` `TravelModeOptions.Truck.HazardousCargos``TravelModeOptions.Truck.TunnelRestrictionCode`, dan tanpa titik arah tambahan atau kendala tujuan seperti,,,,,. `AccessHours` `AppointmentTime` `Before` `Heading` `ServiceDuration` `SideOfStreet`  
Pengelompokan otomatis dapat terjadi ketika titik arah berada dalam jarak dekat, tetapi masih dianggap sebagai bucket harga lanjutan.

**Premium**  
 Bucket harga ini mendukung hingga 50 titik arah dalam satu permintaan; tanpa batasan mode perjalanan; kotak pembatas titik input dalam jarak 500 km; dan dengan parameter opsional seperti`Avoid`,,,, `Clustering``Driver`,`Exclude.Countries`. `TravelModeOptions.Truck.HazardousCargos` `TravelModeOptions.Truck.TunnelRestrictionCode` Selain itu, bucket harga ini mendukung kendala waypoint dan tujuan opsional, seperti,,,`AccessHours`,`AppointmentTime`,`Before`. `Heading` `ServiceDuration` `SideOfStreet`   
Satu permintaan hanya dapat mendukung hingga 20 titik arah jika salah satu titik arah opsional dan kendala tujuan diterapkan.

## S nap-to-road
<a name="snap-to-road-price"></a>

Harga ini didasarkan pada jumlah permintaan API. `SnaptoRoad`memiliki 2 ember harga: Advanced dan Premium.

**Lanjutan**  
Bucket harga ini mendukung mode perjalanan Mobil, Truk dan Pejalan Kaki, dengan `TracePoints` hitungan hingga 200 dan dengan jarak maskapai maksimum antara 100 `TracePoints` kilometer.

**Premium**  
Bucket harga ini tidak memiliki batasan pada mode perjalanan, hingga 5.000 `TracePoints` poin.

## Hitung Isoline
<a name="calculate-isoline-price"></a>

Harga ini didasarkan pada jumlah Isolines yang dihitung dalam respons. `CalculateIsolines`memiliki 2 ember harga: Advanced dan Premium.

**Lanjutan**  
Bucket harga ini mendukung mode perjalanan Mobil, Truk dan Pejalan Kaki, dengan `Thresholds.Time` nilai hingga 60 menit atau `Thresholds.Distance` nilai hingga 100 kilometer.

**Premium**  
Bucket harga ini tidak memiliki batasan pada mode perjalanan, dengan `Thresholds.Time` nilai hingga 180 menit atau `Thresholds.Distance` nilai hingga 300KM.

# Kuota dan Penggunaan Rute
<a name="routes-quota-usage"></a>

## Kuota Layanan
<a name="service-quota"></a>

Amazon Location Service APIs memiliki kuota default. Anda dapat meningkatkan kuota menggunakan konsol [kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas). Untuk batas melebihi 2x default, minta melalui konsol swalayan atau hubungi dukungan.


**Batas Kuota Layanan**  

| Nama API | Default | Batas Maks yang Dapat Disesuaikan | Lebih dari Batas Maks yang Dapat Disesuaikan | 
| --- | --- | --- | --- | 
| [Hitung rute](calculate-routes.md) | 20 | 40 | Permintaan pada [konsol kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas) atau hubungi tim dukungan | 
| [Hitung isolin](calculate-isolines.md) | 20 | 40 | Permintaan pada [konsol kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas) atau hubungi tim dukungan | 
| [Snap ke Jalan](snap-to-roads.md) | 20 | 40 | Permintaan pada [konsol kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas) atau hubungi tim dukungan | 
| [Hitung matriks rute](calculate-route-matrix.md) | 5 | 10 | Permintaan pada [konsol kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas) atau hubungi tim dukungan | 
| [Optimalkan titik arah](actions-optimize-waypoints.md) | 5 | 10 | Permintaan pada [konsol kuota layanan](https://console.aws.amazon.com/servicequotas/home#!/services/geo/quotas) atau hubungi tim dukungan | 

## Batas Penggunaan Lainnya
<a name="other-usage-limits"></a>

Selain kuota layanan, batas penggunaan API berikut berlaku:


**Batas Penggunaan Lainnya**  

| Nama API | Kuota | Nilai | 
| --- | --- | --- | 
| [Snap ke Jalan](snap-to-roads.md) | Jumlah jarak geodesik antara semua TracePoints | 500KM | 
| [Optimalkan titik arah](actions-optimize-waypoints.md) | Jumlah jarak Geodesik antara Asal, Titik Arah dalam urutan yang disediakan, dan Tujuan | 100KM | 
| [Optimalkan titik arah](actions-optimize-waypoints.md) | Perimeter kotak pembatas yang mengelilingi Asal, Titik Arah, dan Tujuan | 500KM | 
| [Hitung matriks rute](calculate-route-matrix.md) | Jarak Maks antara Asal dan Tujuan untuk perutean Tidak Terbatas (Jika Dihindari atau TravelModeOptions .Truk digunakan) | 60KM | 
| [Hitung matriks rute](calculate-route-matrix.md) | Jarak Maks antara Origins dan Destination untuk routing Unbounded | 10000KM | 
| [Hitung rute](calculate-routes.md) | Ukuran muatan respons setelah kompresi | 6MB | 
| [Hitung matriks rute](calculate-route-matrix.md) | Ukuran muatan respons setelah kompresi | 6MB | 
| [Hitung isolin](calculate-isolines.md) | Ukuran muatan respons setelah kompresi | 6MB | 
| [Optimalkan titik arah](actions-optimize-waypoints.md) | Ukuran muatan respons setelah kompresi | 6MB | 
| [Snap ke Jalan](snap-to-roads.md) | Ukuran muatan respons setelah kompresi | 6MB | 

## Langkah Berikutnya
<a name="next-steps"></a>

Silakan periksa yang berikut ini untuk detail lebih lanjut:
+ [Atribusi](https://docs.aws.amazon.com/location/latest/developerguide/data-attribution.html): Informasi tentang persyaratan atribusi data untuk Amazon Location Service.
+ [SLA](https://aws.amazon.com/location/sla/): Perjanjian tingkat layanan untuk Amazon Location Service, termasuk komitmen uptime dan waktu respons.
+ [Ketentuan Layanan](https://aws.amazon.com/service-terms/): Ketentuan yang mengatur penggunaan Amazon Location Service, termasuk pembatasan dan batasan.