Checklist Pra-peluncuran

Tempat mengelola Client ID Anda di Google Cloud Console

Fungsi pengelolaan Client ID Premium Plan akan pindah dari Portal Dukungan ke Cloud Console pada halaman Kredensial Maps di bagian Akun Layanan.

Area Client ID baru di halaman Kredensial

Catatan: Premium Plan Google Maps Platform tidak lagi tersedia untuk pendaftar atau pelanggan baru.

Memastikan tim Anda memiliki akses ke sumber daya yang diperlukan

Simpan email selamat datang Premium Plan Google Maps Platform di tempat yang aman

Mengapa penting: Email selamat datang yang Anda terima adalah kit awal Premium Plan Google Maps Platform dan juga bisa dianggap alat pertolongan pertama Anda. Email tersebut berisi informasi yang sangat penting seperti project ID Google Cloud Console, client ID Anda, dan kunci kriptografis, yang diperlukan untuk mulai menggunakan Premium Plan. Email juga berisi semua informasi yang Anda butuhkan untuk menghubungi tim Dukungan Premium Plan jika mengalami masalah teknis dengan Google Maps API.

Menggunakan Google Cloud Console

Mengapa penting: Google Cloud Console memberi Anda akses ke informasi seperti laporan penggunaan, feed berita, dan referensi bagi developer. Yang lebih penting, Cloud Console memungkinkan Anda untuk mengajukan kasus dukungan ke tim Dukungan Premium Plan jika Anda mengalami masalah teknis selama pengembangan atau peluncuran.

Sebelum peluncuran, pastikan semua developer yang bertanggung jawab atas pemeliharaan aplikasi Anda memiliki akses ke Cloud Console. Jika Anda mengalami masalah teknis, akses ke Cloud Console akan memungkinkan anggota tim Anda menghubungi dukungan dan juga memungkinkan tim dukungan kami untuk menghubungi pemangku kepentingan yang tepat di organisasi Anda. Misalnya, tim dukungan mungkin perlu menghubungi organisasi Anda jika kami mendeteksi traffic yang tidak biasa atau perilaku yang berpotensi merusak aplikasi Anda. Memastikan kami dapat menghubungi developer yang tepat akan membantu kami mencegah terjadinya penonaktifan layanan sehingga tidak terjadi penonaktifan layanan yang tidak diduga.

Berlangganan grup email notifikasi

Mengapa penting: Untuk memastikan Anda tetap mengetahui kabar terbaru mengenai pengembangan dan perubahan pada Maps API, sebaiknya Anda berlangganan satu atau beberapa grup email berikut ini:

Berlangganan feed notifikasi yang relevan

Mengapa penting: Untuk memastikan Anda tetap mengetahui kabar terbaru mengenai pengembangan dan perubahan pada Maps API, kami menyarankan agar Anda berlangganan feed notifikasi yang relevan, seperti yang dijelaskan di FAQ.

Anda juga bisa berlangganan feed RSS berikut untuk Pengumuman Google Maps Premier API: Penonaktifan, Info Terbaru, Notifikasi Layanan:

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

Simpan nomor telepon hotline dukungan

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

Mengapa penting: Hotline adalah cara Anda untuk menghubungi dukungan. Nomor untuk setiap negara tersedia di Cloud Console, bersama dengan PIN. Meski Anda boleh menggunakan nomor telepon hotline dukungan untuk melaporkan masalah teknis ke tim kami, nomor ini hanya untuk kasus gangguan produksi, atau layanan yang tidak bisa digunakan. Tingkat prioritas kami dijelaskan dalam dokumen ini.

Mengoptimalkan aplikasi

Konfigurasi firewall untuk mengizinkan akses ke Layanan Google Maps Platform

Mengapa penting: Layanan Google Maps Platform menggunakan berbagai domain, beberapa di antaranya tidak termasuk dalam domain *google.com. Jika Anda berada di belakang firewall yang ketat, Anda harus mengizinkan akses ke domain yang digunakan oleh setiap layanan Maps API. Jika firewall Anda tidak mengizinkan akses ke domain ini, permintaan API akan gagal, dan bisa menghentikan fungsi aplikasi Anda. Lihat daftar lengkap domain yang digunakan oleh Maps API.

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

Catatan: Layanan Google Maps Platform menggunakan port 80 (http) dan 443 (https) untuk traffic masuk dan keluar. Layanan ini juga memerlukan permintaan GET, POST, PUT, DELETE, dan HEAD. Konfigurasi firewall Anda untuk mengizinkan traffic melalui port ini dan untuk mengizinkan permintaan, bergantung pada API dan kasus penggunaan.

Muat API melalui nama host SSL yang benar

Mengapa penting: Aplikasi yang memuat Maps API melalui SSL harus melakukannya dari https://maps.googleapis.com bukan dari nama host lama, https://maps-api-ssl.google.com.

Beri otorisasi domain SSL Anda untuk digunakan dengan Maps JavaScript API

Mengapa penting: Saat menggunakan Maps JavaScript API dengan domain SSL, Anda harus secara eksplisit memberi otorisasi domain HTTPS untuk memastikan permintaan Anda tidak ditolak. Perhatikan bahwa memberi otorisasi http://yourdomain.com tidak otomatis mengaktifkan SSL yang setara dengannya, yaitu https://yourdomain.com. Periksa daftar domain yang diberi otorisasi di Cloud Console dan scroll ke bagian Client ID. Untuk memecahkan masalah terkait penggunaan API sisi klien dengan domain SSL, periksa apakah ada elemen di halaman Anda yang dimuat melalui HTTP. Lihat panduan untuk pemecahan masalah otorisasi.

Pilih versi API yang tepat

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

Yang terpenting, Anda harus memahami skema pembuatan versi yang digunakan oleh Maps JavaScript API, sehingga dapat menghindari penggunaan versi API yang tidak sesuai secara tidak sengaja di lingkungan Anda.

Misalnya, versi eksperimental API mungkin cocok digunakan di lingkungan pengujian atau pengembangan, tetapi kami sangat tidak menyarankan penggunaan versi eksperimental di lingkungan produksi. SLA kami hanya berlaku untuk versi API yang stabil, jadi sebaiknya hanya gunakan versi stabil di lingkungan produksi.

Lihat panduan untuk versi Maps JavaScript API.

Pilih desain sisi klien atau sisi server

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 digunakan untuk pra-pemrosesan dan pasca-pemrosesan data secara offline (yaitu di luar aplikasi Anda). Sementara itu, pendekatan sisi klien digunakan untuk bagian dari aplikasi yang berinteraksi dengan pengguna (yaitu, memproses permintaan yang dikirimkan pengguna secara real time).

Men-deploy pendekatan sisi server di saat seharusnya pendekatan sisi klien digunakan merupakan penyebab utama kelebihan kuota, yang menyebabkan aplikasi tidak berfungsi. Sebaiknya pelajari strategi geocoding sebelum mendesain atau meluncurkan aplikasi yang bergantung pada panggilan sisi server.

Optimalkan penggunaan kuota

Mengapa penting: Memahami bagaimana aplikasi Anda memakai kuota, yang disebut sebagai Kredit Maps API, membantu Anda mengurangi jumlah yang harus Anda bayarkan. Misalnya, jika Anda menggunakan Maps JavaScript API, aplikasi Anda akan memakai Kredit Maps API untuk setiap beban peta. Lihat panduan untuk batas dan tarif penggunaan Premium Plan.

Kelola penggunaan kuota layanan web

Mengapa penting: Secara default, kuota layanan web bersama ditetapkan sebesar 100.000 permintaan gratis harian. Untuk perincian kuota yang lebih mendetail per API, lihat dokumentasi batas penggunaan. Periksa kuota Anda di Cloud Console, atau ajukan kasus dukungan jika Anda mengalami masalah kuota.

Sebelum meluncurkan layanan, Anda harus memahami berbagai error yang terkait dengan kuota (misalnya, OVER_QUERY_LIMIT, User Rate Limit Exceeded), dan menyiapkan logika yang tepat untuk aplikasi Anda agar bisa merespons error tersebut jika Anda melebihi kuota Anda. Mulailah dengan membaca FAQ batas penggunaan. Untuk informasi tentang kode status yang ditampilkan setiap API, baca panduan developer untuk API tersebut. Misalnya, lihat panduan untuk kode status Directions API. Memahami dan menerapkan konsep ini akan menekan kemungkinan aplikasi Anda melebihi kuota yang diperbolehkan, diblokir oleh Google, dan/atau berhenti berfungsi.

Lakukan pengujian beban pada aplikasi

Mengapa penting: Gunakan pengujian beban aplikasi untuk memastikan aplikasi dapat menangani volume permintaan yang tinggi tanpa melebihi kuota untuk Maps API.

Pengujian beban terhadap layanan Google secara langsung akan menyebabkan aplikasi Anda melebihi kuota yang diizinkan dan akan diblokir Google. Google Maps Platform bisa menangani volume yang sangat tinggi. Pada tahun 2012, Pelacak Sinterklas menangani 1.600.000 permintaan per detik. Dengan demikian, pengujian beban terhadap layanan Google tidak perlu dilakukan. Namun, pengujian beban pada aplikasi dapat memastikan bahwa aplikasi mampu menangani volume permintaan yang tinggi tanpa melebihi kuota untuk Maps API. Contoh: jika kuota untuk Geocoding API adalah 20 QPS (kueri per detik), pengujian beban pada aplikasi dapat memastikan bahwa aplikasi bisa menangani 600 QPS tanpa mengirim lebih dari 20 QPS ke Geocoding API.

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

Lihat contoh API rekaan ini, yang diterapkan sebagai aplikasi Google App Engine kecil. Anda bisa mengupload contoh ini ke aplikasi App Engine Anda (setelah mendaftarkannya ke appengine.google.com) dan membuat aplikasi mengirim permintaan ke sana, bukan ke maps.googleapis.com.

Kuota App Engine default (gratis) biasanya cukup untuk melakukan pengujian beban pada aplikasi Anda melebihi kuota untuk layanan web Maps API. Pastikan aplikasi Anda menetapkan header User-Agent yang benar untuk mengaktifkan kompresi respons. Ini penting untuk memastikan penggunaan bandwidth yang efisien, yang sangat penting untuk aplikasi App Engine yang menangani respons teks biasa (JSON/XML) dalam volume tinggi. Jika memerlukan kuota yang lebih tinggi untuk aplikasi App Engine, Anda juga bisa mengaktifkan penagihan, meski ini jarang diperlukan.

Memigrasikan aplikasi dari lisensi standar ke premium

Sertakan client ID atau kunci API di permintaan API

Mengapa penting: Salah satu hal paling penting yang bisa Anda lakukan untuk aplikasi adalah memastikan Anda menyertakan client ID (gme-yourclientid) atau kunci API (yang tampilannya seperti ini: AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0) dalam permintaan API Anda. Client ID atau kunci API mengidentifikasi permintaan Anda sebagai permintaan Premium Plan Google Maps Platform.

Anda harus menyertakan client ID atau kunci API di aplikasi Anda agar dapat memanfaatkan fitur khusus Premium Plan. Penyertaan client ID atau kunci API juga diperlukan agar dapat menerima dukungan teknis dan memastikan aplikasi tercakup dalam SLA kami.

Untuk sebagian besar API, Anda bisa memilih antara menggunakan client ID atau kunci API. Client ID Anda disertakan dalam email selamat datang yang dikirim ke kontak utama organisasi Anda. Anda dapat membuat kunci API sendiri di Google Cloud Console.

Detail ada di panduan untuk autentikasi dan otorisasi.

Sertakan kunci API atau client ID di permintaan API, tetapi jangan sertakan keduanya.

Mengapa penting: Untuk memuat Maps JavaScript API dengan benar, atau untuk mengirim permintaan ke Google Maps API lainnya, Anda harus menyertakan entah client ID atau kunci API, jangan keduanya. Jika memilih untuk menggunakan client ID Anda harus menghapus semua parameter key. Jika permintaan Anda menyertakan client ID dan kunci, aplikasi Anda mungkin mengalami error atau menunjukkan perilaku yang tidak diduga.

Ikuti panduan untuk autentikasi dan otorisasi guna mendapatkan informasi lengkap tentang cara memformat permintaan Premium Plan per API dengan benar.

Saat menggunakan client ID, beri otorisasi domain untuk digunakan dengan Maps JavaScript API

Mengapa penting: Untuk mencegah situs yang tidak sah menggunakan client ID Anda, Maps JavaScript API mengharuskan Anda memberi otorisasi semua domain dengan tim dukungan kami untuk semua situs yang akan menggunakan client ID Anda. (Pendaftaran URL tidak diperlukan jika Anda menggunakan kunci API, bukan client ID.) Jika tidak ada kecocokan antara URL yang diizinkan untuk menggunakan client ID Anda dan situs yang mencoba menggunakan client ID Anda, situs Anda tidak akan bisa menggunakan API dengan client ID Anda. Anda bisa memberi otorisasi domain kapan saja, jadi pastikan domain untuk semua situs Anda sudah diberi otorisasi sebelum peluncuran.

Anda dapat memeriksa daftar domain yang diberi otorisasi di Cloud Console dengan membuka halaman Kredensial dan menuju ke bagian Client ID.

Untuk masalah otorisasi, sebaiknya tinjau panduan untuk pemecahan masalah otorisasi sebelum mengajukan kasus.

Saat menggunakan client ID, tanda tangani permintaan layanan web menggunakan tanda tangan yang dibuat dengan kunci kriptografis pribadi

Mengapa penting: Kunci kriptografis pribadi Anda digunakan untuk membuat tanda tangan digital yang memberi tahu Google bahwa permintaan Anda berasal dari sumber yang dipercaya. API layanan web kami mengharuskan Anda menambahkan tanda tangan digital ke permintaan, jika Anda menggunakan client ID untuk autentikasi. Tanda tangan digital ini menambahkan lapisan keamanan pada permintaan Anda, sehingga lebih melindungi kuota yang dikaitkan dengan client ID Anda. Kunci kriptografis Anda (misalnya, vNIXE0xscrmjlyV-12Nj_BvUPaw=) disertakan dalam email selamat datang yang dikirimkan ke kontak utama organisasi Anda.

Catatan: Kunci kriptografis digunakan untuk membuat tanda tangan. Jangan tambahkan kunci ini ke permintaan sebagai tanda tangan. Kunci kriptografis mirip dengan nomor PIN ATM. Kunci ini digunakan sebagai sarana autentikasi untuk mengakses akun dan tidak boleh dibagikan secara terbuka atau dilihat oleh sumber yang tidak dipercaya. Permintaan layanan web Premium Plan yang tidak ditandatangani dengan benar akan ditolak oleh server kami, jadi pastikan aplikasi menandatangani permintaan dengan benar sebelum peluncuran. Lihat panduan untuk autentikasi dan otorisasi.

Lacak penggunaan aplikasi

Mengapa penting: Sebagai pelanggan Premium Plan, Anda memiliki akses ke laporan mendetail tentang penggunaan oleh aplikasi Anda, termasuk permintaan yang dibuat, kredit yang dipakai, error yang ditampilkan, dan lainnya. Lihat panduan untuk laporan.

Parameter channel adalah parameter opsional yang memungkinkan Anda melacak penggunaan berdasarkan client ID Anda dengan menetapkan saluran terpisah untuk setiap aplikasi Anda. Parameter saluran tidak perlu didaftarkan ke client ID Anda. Dengan menambahkan parameter saluran ke permintaan API, hasil penggunaan per saluran akan mulai muncul di laporan penggunaan portal dukungan Anda dalam waktu 1 sampai 2 hari setelah penerapan. Anda bisa menentukan tempat penerapan saluran Anda dan cara penggabungan penggunaan Anda. Sebelum peluncuran, tentukan apakah aplikasi Anda akan mengintegrasikan parameter saluran untuk melacak penggunaan aplikasi atau tidak.

Parameter channel harus menggunakan format berikut:

  • Harus berupa string alfanumerik ASCII.
  • Karakter titik (.), garis bawah (_), dan tanda hubung (-) boleh digunakan.
  • Parameter channel tidak peka huruf besar/kecil; parameter channel dengan huruf besar, huruf besar/kecil, dan huruf kecil akan diubah menjadi huruf kecil. Misalnya, penggunaan pada saluran CUSTOMER digabungkan dengan penggunaan pada saluran customer.

Anda bisa mengimplementasikan hingga 2.000 saluran berbeda per client ID.

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

Perhatikan bahwa parameter saluran harus berupa nilai yang ditetapkan secara statis per aplikasi. Parameter tidak boleh dibuat secara dinamis dan digunakan untuk melacak masing-masing pengguna.