Daftar Periksa Pra-Peluncuran Google Maps APIs for Work

Laman ini hanya untuk pelanggan yang memiliki lisensi sebelumnya dari Maps APIs for Work atau lisensi Maps API for Business. Laman ini tidak berlaku untuk pelanggan yang memiliki Google Maps APIs Premium Plan baru, yang tersedia pada Januari 2016.

  1. Memastikan Tim Anda Memiliki Akses ke Sumber Daya yang Diperlukan
    1. Terima Surat Sambutan Google Maps APIs for Work
    2. Dapatkan Akses ke dan Gunakan Google Cloud Support Portal
    3. Berlangganan ke Umpan Notifikasi yang Relevan
    4. Siapkan Nomor Telepon Hotline Dukungan
  2. Optimalisasi Aplikasi
    1. Konfigurasikan Firewall untuk Mengizinkan Akses ke Layanan Google Maps APIs
    2. Memuat API Melalui SSL
    3. Menggunakan Maps API Sisi-klien di Domain SSL Anda
    4. Pemilihan Versi API yang Sesuai
    5. Mengoptimalkan Penggunaan Tampilan Laman
    6. Desain Sisi-klien vs. Sisi-server: Pilih yang Tepat untuk Kasus Penggunaan Anda
    7. Kuota dan Pengelolaan Layanan Web
    8. Pengujian beban
  3. Bermigrasi dari Implementasi Gratis ke Google Maps APIs for Work
    1. Otorisasi Domain
    2. Integrasi ID Klien Anda
    3. Menggunakan Kunci Kriptografik untuk Menandatangani Permintaan Layanan Web
    4. Melacak Pemakaian Aplikasi dan Parameter Saluran
    5. Hapus Parameter yang Tidak Dipakai dari Permintaan API

Memastikan Tim Anda Memiliki Akses ke Sumber Daya yang Diperlukan

Terima Surat Sambutan Google Maps APIs for Work

Mengapa penting: Surat sambutan Anda adalah paket mulai Google Maps APIs for Work dan juga merupakan alat pertolongan pertama. Surat ini berisi informasi yang sangat penting, seperti ID klien dan kunci kriptografik Anda, yang diperlukan untuk mulai menggunakan Google Maps APIs. Surat ini juga berisi semua informasi yang Anda perlukan untuk menghubungi tim dukungan Google Cloud Support jika Anda mengalami masalah teknis pada Google Maps APIs yang mana pun.

Dapatkan Akses ke dan Gunakan Google Cloud Support Portal

Mengapa penting: Portal dukungan memberi Anda akses ke informasi, seperti laporan penggunaan, umpan berita, dan sumber daya developer yang berguna. Yang lebih penting, portal dukungan memungkinkan Anda mengajukan kasus dukungan kepada tim dukungan Google Maps APIs jika Anda menemui masalah teknis selama proses development atau peluncuran. Anda bisa mengakses portal dukungan di URL berikut:

https://google.secure.force.com/

Sebelum peluncuran, harap luangkan waktu untuk mengaktifkan akses ke portal dukungan bagi semua developer yang bertanggung jawab atas pengelolaan aplikasi Anda. Jika Anda mengalami masalah teknis, akses ke portal dukungan akan memberikan keuntungan ganda, yaitu mengizinkan anggota tim Anda menghubungi dukungan dan mengizinkan tim dukungan kami menghubungi pemangku kepentingan yang tepat di organisasi Anda. Misalnya, tim dukungan mungkin perlu menghubungi organisasi Anda jika kami mendeteksi lalu lintas yang tidak normal atau perilaku yang berpotensi merusak aplikasi Anda. Memastikan kami dapat menghubungi developer yang tepat akan menjadi pembeda antara gangguan layanan yang tidak diduga dan mencegah gangguan layanan. Jika Anda tidak memiliki akses ke portal dukungan, harap minta akses di sini:

Minta Akun Google Cloud Support Portal

Berlangganan ke Umpan Notifikasi yang Relevan

Mengapa penting: Untuk memastikan Anda mendapatkan informasi terbaru mengenai development dan perubahan pada Google Maps APIs, kami sarankan Anda agar berlangganan umpan notifikasi yang relevan. Sebaiknya Anda berlangganan Blog Google Geo Developers serta Google Grup pengumuman yang relevan untuk API yang Anda gunakan, seperti yang dijelaskan di sini:

https://developers.google.com/maps/faq#notify

Luangkan waktu sejenak untuk berlangganan grup pengumuman untuk API yang sedang Anda gunakan atau akan Anda gunakan. Anda juga bisa berlangganan ke umpan RSS berikut:

http://google.force.com/services/xml/MapsRSS

untuk menerima pembaruan dari tim dukungan Google Maps APIs.

Siapkan Nomor Telepon Hotline Dukungan

1-877-355-5787 untuk pelanggan di AS, +1 404-978-9282 untuk pelanggan di luar AS

Mengapa penting: Nomor telepon hotline ini berfungsi untuk menghubungi Google Cloud Support Portal. Harap bookmark laman ini untuk menemukan nomor telepon hotline dukungan yang terkini dan terbaru. Harap perhatikan bahwa meskipun Anda boleh menggunakan hotline dukungan untuk melaporkan masalah teknis ke tim kami, nomor ini hanya diperuntukkan untuk kasus produksi yang tidak aktif atau layanan yang tidak bisa digunakan. Tingkat prioritas kami dijelaskan di:

https://support.google.com/work/answer/184028

Optimalisasi Aplikasi

Konfigurasikan Firewall untuk Mengizinkan Akses ke Layanan Google Maps APIs

Mengapa penting: Layanan Google Maps APIs menggunakan berbagai domain, yang beberapa di antaranya bukan milik domain *google.com. Jika Anda berada di belakang firewall yang ketat, penting bagi Anda untuk mengizinkan akses ke domain yang digunakan oleh setiap layanan Maps API. Jika firewall Anda tidak mengizinkan akses ke domain ini, permintaan API akan gagal yang bisa mencegah fungsi aplikasi Anda. Anda bisa menemukan daftar lengkap domain yang digunakan oleh Maps API di Portal Dukungan:

  1. Masuk ke Google Cloud Support Portal.
    Portal Dukungan hanya tersedia untuk pelanggan yang memiliki lisensi Google Maps APIs Premium Plan atau Google Maps APIs for Work lama atau Google Maps for Business.
  2. Masuk ke tab Resources.
  3. Pilih list of domains used by the Google Maps APIs family.
  4. Izinkan aplikasi Anda mengakses domain yang tercantum.

Kami tidak menyarankan pengelolaan pembatasan firewall berdasarkan alamat IP, karena IP yang dikaitkan dengan domain ini tidak statis.

Catatan: Layanan Google Maps APIs menggunakan porta 80 (http) dan 443 (https) untuk lalu lintas masuk dan keluar. Layanan ini juga memerlukan permintaan GET, POST, PUT, DELETE, dan HEAD. Konfigurasikan firewall Anda agar mengizinkan lalu lintas melalui porta ini dan mengizinkan permintaan, bergantung pada API dan kasus penggunaan.

Memuat API Melalui SSL

Mengapa penting: Aplikasi yang memuat Maps JavaScript API, Web Service API, atau Image API melalui SSL harus melakukannya dari https://maps.googleapis.com, bukan hostname lawas, https://maps-api-ssl.google.com.

Menggunakan Maps API Sisi-klien di Domain SSL Anda

Mengapa penting: Saat menggunakan API sisi-klien dengan domain SSL, penting bahwa Anda telah mengotorisasi domain HTTPS Anda secara eksplisit untuk memastikan permintaan Anda tidak ditolak. Harap perhatikan bahwa mengotorisasi http://yourdomain.com tidak otomatis mengaktifkan SSL-nya yang terkait, https://yourdomain.com. Anda bisa memeriksa daftar domain yang diotorisasi di Google Cloud Support Portal dengan memilih tautan Maps: Manage Client ID dari menu navigasi di sebelah kiri. Untuk memecahkan masalah yang terkait dengan penggunaan API sisi-klien dengan domain SSL, kami sarankan Anda untuk memeriksa apakah ada elemen di laman Anda yang dimuat melalui HTTP. Harap lihat juga artikel Memecahkan Masalah Otorisasi untuk Implementasi Google Maps APIs for Work.

Pemilihan Versi API yang Sesuai

Mengapa penting: Sebelum mengembangkan aplikasi, penting bagi Anda untuk mengetahui versi API mana yang tidak digunakan lagi. Memilih mengembangkan aplikasi dengan API selain versi yang tidak digunakan lagi akan menghemat waktu dan biaya development setelah versi yang tidak digunakan lagi sudah tidak tersedia.

Sangat penting juga untuk memahami skema pembuatan versi API untuk menghindari penggunaan versi API yang tidak sesuai secara tidak sengaja di lingkungan Anda

https://developers.google.com/maps/documentation/javascript/versions

Misalnya, penggunaan versi nightly (yaitu, versi eksperimen) API mungkin sesuai untuk lingkungan dev/pengujian, tetapi kami sangat tidak menganjurkan penggunaan versi nightly dalam lingkungan produksi. SLA kami hanya berlaku untuk versi API yang stabil, sehingga Anda sangat disarankan hanya menggunakan versi stabil di lingkungan produksi Anda.

Mengoptimalkan Penggunaan Tampilan Laman

Mengapa penting: Jika Anda tidak selalu menampilkan peta Google di situs Anda, mengapa Anda harus membayarnya? Sebagai praktik terbaik untuk menggunakan tampilan laman secara lebih efisien, kami sarankan agar Anda memuat Maps API secara asinkron pada laman tempat Anda benar-benar menampilkan peta. Ini akan mengurangi jumlah tampilan laman yang dibeli secara signifikan yang dikonsumsi aplikasi Anda. Perhatikan bahwa setiap kali laman yang memuat API disegarkan, laman akan membebankan tampilan laman tambahan. Dengan demikian, sebaiknya saat merancang aplikasi di situs yang akan memuat API hanya memulai penyegaran laman hanya saat benar-benar diperlukan.

Desain Sisi-klien vs. Sisi-server: Pilih yang Tepat untuk Kasus Penggunaan Anda

Mengapa penting: Memilih pendekatan sisi-klien atau sisi-server merupakan keputusan arsitektural dan sangat penting bagi stabilitas dan skalabilitas aplikasi Anda. Umumnya, pendekatan sisi-server harus digunakan untuk prapemrosesan dan pascapemrosesan rekaman secara offline (yaitu, di luar aplikasi Anda). Atau, pendekatan sisi-klien harus digunakan untuk bagian aplikasi Anda yang berinteraksi dengan pengguna Anda (yaitu, memproses permintaan yang dikirimkan pengguna secara real-time).

Menerapkan pendekatan sisi-server dalam kondisi pendekatan sisi-klien harus digunakan merupakan penyebab utama melebihi kuota dan menyebabkan aplikasi tidak berfungsi. Kami sangat menyarankan untuk membaca dokumen Strategi Geocoding sebelum mendesain atau meluncurkan aplikasi yang bergantung pada panggilan sisi-server.

Kuota dan Pengelolaan Layanan Web

Mengapa penting: Secara default, kuota layanan web disetel pada 100.000 kueri per 24 jam. Untuk perincian kuota yang lebih detail per API, kunjungi dokumentasi batas penggunaan. Untuk memeriksa berapa banyak kuota yang tersedia untuk ID klien Anda, harap kirimkan kasus dukungan. Sebelum meluncurkan layanan, sangat penting bagi Anda untuk memahami berbagai kesalahan yang terkait dengan kuota (misalnya OVER_QUERY_LIMIT, User Rate Limit Exceeded), dan menyiapkan logika yang tepat untuk aplikasi Anda agar bisa merespons kesalahan tersebut jika Anda melebihi kuota. Mulai dengan membaca artikel Batas Penggunaan untuk Layanan Web Google Maps APIs. Memahami dan mengimplementasikan konsep ini akan sangat mengurangi peluang aplikasi Anda melebihi kuota yang diperbolehkan, diblokir oleh Google, dan/atau berhenti berfungsi.

Pengujian Beban

Mengapa penting: Pengujian beban terhadap layanan Google secara langsung akan menyebabkan aplikasi Anda melebihi kuota yang diizinkan dan akan diblokir Google.

Google Maps APIs bisa melayani volume yang sangat tinggi; di tahun 2012, Pelacak Sinterklas melayani 1.600.000 permintaan per detik. Dengan demikian, tidak perlu melakukan pengujian beban terhadap layanan Google. Sebagai gantinya, pengujian beban aplikasi Anda harus memastikan aplikasi bisa menangani volume permintaan yang tinggi tanpa melebihi kuota untuk Maps API. Contoh: jika kuota Anda untuk Google Maps Geocoding API adalah 20 QPS (kueri per detik); pengujian beban pada aplikasi Anda akan memastikan aplikasi Anda bisa menangani 600 QPS tanpa mengirimkan lebih dari 20 QPS ke Google Maps Geocoding API.

Untuk mencapai ini dengan aman, pengujian beban harus dilakukan terhadap API tiruan (palsu) — layanan yang bisa menyerap jumlah permintaan yang tinggi dan membalasnya dengan respons yang valid, tanpa melibatkan Google Maps APIs. Dengan demikian, Anda bisa melakukan pengujian beban pada aplikasi Anda tanpa harus menanggung risiko diblokir oleh Google Maps APIs.

Harap lihat contoh API tiruan, yang diimplementasikan sebagai aplikasi Google App Engine yang kecil: https://github.com/googlemaps/js-v2-samples/blob/gh-pages/mock_maps_apis/. Anda bisa mengunggah contoh ini ke aplikasi App Engine Anda sendiri (setelah Anda mendaftarkan aplikasi di https://appengine.google.com/) dan memerintahkan aplikasi Anda mengirimkan permintaan ke sana, bukan ke maps.googleapis.com.

Kuota default App Engine (gratis) umumnya sudah cukup untuk melakukan pengujian beban pada aplikasi Anda jauh di atas kuota Anda untuk layanan web Maps API. Harap pastikan aplikasi Anda menyetel header User-Agent dengan benar untuk mengaktifkan kompresi respons. Ini penting untuk memastikan penggunaan bandwidth secara efisien yang khususnya penting untuk aplikasi App Engine yang melayani respons teks biasa (JSON/XML) dalam volume tinggi. Jika Anda perlu kuota yang lebih tinggi untuk aplikasi App Engine, Anda juga bisa mengaktifkan penagihan, meskipun ini jarang diperlukan.

Memigrasikan API Anda dari lisensi gratis ke Google Maps APIs for Work

Otorisasi Domain

Mengapa penting: Untuk mencegah situs yang tidak diotorisasi agar tidak menggunakan ID klien Anda, Google Maps JavaScript API kami mengharuskan Anda mengotorisasi semua domain dengan tim dukungan kami untuk semua situs yang akan menggunakan ID klien Anda. Jika tidak ada kecocokan antara URL yang diotorisasi untuk menggunakan ID klien Anda dan situs yang mencoba menggunakan ID klien Anda, situs Anda tidak dapat menggunakan API dengan ID klien Anda. Anda bisa mengotorisasi domain kapan saja, jadi pastikan Anda telah mengotorisasi domain untuk semua situs Anda terlebih dulu sebelum peluncuran.

Google Street View Image API dan Google Static Maps API bisa digunakan untuk implementasi sisi-klien atau sisi-server, yang keduanya membebankan tampilan laman. Sebagai hasilnya, API ini mengharuskan Anda menandatangani permintaan menggunakan kunci kriptografik dan juga Anda harus mengotorisasi semua domain yang menggunakan API ini. Ini memastikan aplikasi Anda ditagih dengan benar, sesuai dengan Ketentuan Layanan kami yang didukung dan dicakup oleh SLA.

Anda bisa memeriksa daftar domain yang diotorisasi di Google Cloud Support Portal dengan memilih tautan Maps: Manage Client ID dari menu navigasi di sebelah kiri.

Untuk masalah otorisasi, kami sarankan agar Anda membaca artikel Pemecahan Masalah Otorisasi untuk Implementasi Google Maps APIs for Work sebelum mengajukan kasus.

Integrasi ID Klien Anda (misalnya, &client=gme-yourclientid)

Mengapa penting: Salah satu hal terpenting yang bisa Anda lakukan untuk aplikasi Anda adalah memastikan Anda menyertakan '&client=gme-yourclientid' di permintaan. ID klien unik bisa ditemukan di surat sambutan yang dikirimkan kepada kontak utama organisasi Anda. ID klien mengidentifikasi permintaan Anda sebagai permintaan Google Maps APIs for Work. Anda harus menyertakan ID klien di aplikasi Anda untuk memanfaatkan fitur khusus di Google Maps APIs for Work. Menyertakan ID klien Anda juga diperlukan untuk menerima Dukungan Teknis dan untuk memastikan aplikasi Anda tercakup SLA kami.

Menggunakan Kunci Kriptografik (misalnya vNIXE0xscrmjlyV-12Nj_BvUPaw=) untuk Menandatangani Permintaan Layanan Web

Mengapa penting: Kunci kriptografik privat Anda digunakan untuk membuat tanda tangan yang memberi tahu Google bahwa permintaan Anda berasal dari sumber yang dipercaya. Kunci kriptografik unik bisa ditemukan di surat sambutan yang dikirimkan kepada kontak utama organisasi Anda. Sebagai pelanggan Google Maps APIs for Work, Layanan Web kami mengharuskan Anda menandatangani permintaan menggunakan kunci kriptografik Anda. Ini menambahkan lapisan keamanan pada permintaan Anda yang lebih melindungi kuota yang terkait dengan ID klien Anda.

Harap diperhatikan: kunci kriptografik digunakan untuk membuat tanda tangan. Kunci ini harus tidak ditambahkan di permintaan Anda sebagai permintaan itu sendiri. Kunci kriptografik mirip dengan nomor PIN ATM Anda. Kunci ini digunakan sebagai sarana autentikasi untuk mengakses akun Anda dan harus tidak dibagikan secara terbuka dengan atau terlihat oleh sumber yang tidak dipercaya. Permintaan layanan web Google Maps APIs for Work yang tidak ditandatangani dengan benar akan ditolak oleh server kami, sehingga penting bagi aplikasi Anda untuk menandatangani permintaan dengan benar sebelum diluncurkan. (catatan: Google Maps Geocoding API v2 saat ini tidak memerlukan tanda tangan). Lihat dokumentasi kami tentang penandatanganan URL:

https://developers.google.com/maps/premium/previous-licenses/webservices/auth

Melacak Pemakaian Aplikasi dan Parameter Saluran

Mengapa penting: Parameter channel adalah parameter opsional yang memungkinkan Anda melacak penggunaan yang menggunakan ID klien Anda dengan menetapkan saluran terpisah ke setiap aplikasi Anda. Parameter saluran tidak perlu didaftarkan ke ID klien Anda. Cukup dengan menambahkan parameter saluran ke permintaan API, parameter saluran akan mulai muncul di laporan penggunaan portal dukungan Anda 1 sampai 2 hari setelah implementasi. Anda bisa menentukan di mana saluran Anda akan diimplementasikan dan demikian juga, bagaimana penggunaan Anda digabungkan. Harap putuskan sebelum peluncuran apakah aplikasi Anda akan mengintegrasikan parameter saluran untuk melacak penggunaan aplikasi Anda:

https://developers.google.com/maps/premium/previous-licenses/clientside/quota#reporting

Parameter channel harus menggunakan format berikut:

  • Harus berupa string alfanumerik ASCII.
  • Karakter titik (.), setrip bawah (_) dan garis pemisah (-) diperbolehkan.
  • Parameter channel peka huruf besar/kecil; parameter channel huruf besar, campuran huruf besar/kecil dan huruf kecil digabungkan ke parameter huruf kecil yang setara. Misalnya, penggunaan pada saluran CUSTOMER dikombinasikan dengan penggunaan pada saluran customer.

Anda bisa mengimplementasikan hingga 2.000 saluran berbeda per ID klien.

Untuk menggunakan parameter channel, sertakan di URL permintaan bersama dengan parameter client yang digunakan untuk meneruskan ID klien.

Harap perhatikan bahwa parameter channel harus berupa nilai yang ditetapkan secara statis per aplikasi. Parameter harus tidak dibuat secara dinamis dan digunakan untuk melacak pengguna individual.

Hapus Parameter yang Tidak Dipakai dari Permintaan API (misalnya, parameter '&key=ABQIAAAA…')

Mengapa penting: Untuk memuat Google Maps JavaScript API dengan benar, Anda harus menyertakan ID klien Anda. Anda juga harus membuang semua parameter key. Jika permintaan Anda menyertakan kunci API dan ID klien sekaligus, permintaan akan gagal.

Ikuti panduan Google Maps APIs for Work untuk informasi selengkapnya tentang cara memformat permintaan Google Maps APIs for Work dengan benar per API: https://developers.google.com/maps/premium/previous-licenses/