Akun layanan adalah Akun Google khusus yang dapat digunakan oleh aplikasi untuk mengakses Google API secara terprogram melalui OAuth 2.0. Akun layanan menggunakan alur OAuth 2.0 yang tidak memerlukan otorisasi manusia. Sebagai gantinya, kode ini menggunakan file kunci yang hanya dapat diakses oleh aplikasi Anda. Panduan ini membahas cara mengakses Content API for Shopping dengan akun layanan.
Catatan: Aplikasi yang menggunakan akun layanan untuk autentikasi hanya dapat mengakses akun Merchant Center Anda sendiri. Jika Anda menulis aplikasi pihak ketiga yang memerlukan akses ke akun Merchant Center klien, lihat panduan Meminta Otorisasi.
Prasyarat
- Akun Merchant Center.
Langkah-langkah menggunakan akun layanan untuk mengakses Content API for Shopping
- Buat kredensial akun layanan atau akses kredensial publik
yang telah Anda buat. Anda perlu membuat Client ID OAuth 2.0 dan mendapatkan file kunci pribadi *.json:
- Buka Konsol Google API.
- Pilih project di menu drop-down di bagian atas halaman. Jika Anda belum memilikinya, buat dengan mengklik NEW PROJECT.
- Jika Anda belum mengaktifkan Content API for Shopping untuk project ini, telusuri di daftar Google API dan aktifkan.
- Di sidebar sebelah kiri, pilih Kredensial. Anda mungkin perlu mengklik panah yang mengarah ke kiri di kiri atas untuk melihatnya.
- Untuk menyiapkan akun layanan, pilih CREATE CREDENTIALS, lalu
Service account.
- Beri nama akun layanan baru. Nama ini juga berfungsi sebagai nama pengguna default untuk ID akun layanan. Catat ID akun layanan, termasuk bagian setelah
karakter '@', untuk digunakan nanti. Klik CREATE, lalu ikuti
langkah-langkah opsional untuk memberikan akses ke project dan pengguna, lalu klik DONE.
Pilihan peran untuk akun layanan tidak akan memengaruhi panggilan yang dapat dilakukan ke Content API, karena akses ke metode Content API ditentukan oleh peran yang terkait dengan ID akun layanan di Merchant Center. Jika tidak yakin harus memilih yang mana, pilih Project > Viewer.
- Anda akan diarahkan ke halaman Akun Layanan tempat akun layanan baru Anda dapat diakses.
- Untuk mendapatkan kunci pribadi JSON, klik akun layanan, lalu tab KEYS. Klik ADD KEY > Create new key, lalu pilih JSON sebagai jenis kunci. Klik CREATE untuk mendownload kunci pribadi ke komputer Anda.
- Tambahkan akun layanan baru sebagai pengguna ke akun Merchant Center Anda. Jika Anda adalah developer
pihak ketiga, Anda harus meminta klien untuk melakukan langkah ini.
- Buka akun Merchant Center Anda.
- Buka Akses Akun di setelan akun Merchant Center Anda.
- Klik + Tambahkan pengguna dan gunakan ID akun layanan sebagai alamat email untuk pengguna baru.
Jika Anda tidak mencatat ID akun layanan sebelumnya, buka halaman administrasi Akun Layanan dan pilih project yang Anda buat.
- Tentukan preferensi Akses pengguna dan Notifikasi email
untuk akun layanan. Perhatikan bahwa penggunaan
layanan
Accounts
memerlukan akses Admin. - Klik Tambahkan pengguna untuk menyimpan preferensi dan kembali ke daftar pengguna. ID akun layanan harus dicantumkan dengan peran pengguna yang dipilih.
- Ulangi prosesnya untuk semua akun layanan lain yang ingin Anda tambahkan.
- Sekarang Anda dapat mengakses akun Merchant Center menggunakan akun layanan baik dengan menggunakan alur Kredensial Default Aplikasi Google atau dengan menggunakan alur akun layanan secara langsung. Contoh Content API for Shopping menunjukkan cara menggunakan kedua alur untuk kredensial akun layanan di setiap bahasa pemrograman yang didukung. Lihat contoh kode untuk mencoba akun layanan baru dan untuk mempelajari perubahan yang diperlukan untuk menggunakan akun layanan dalam kode Anda sendiri.
Pertanyaan umum (FAQ)
- Dapatkah saya login ke UI Merchant Center dengan akun layanan saya?
- Tidak, akun layanan bukan Akun Google biasa dan tidak dapat mengakses UI Merchant Center.
- Seberapa sering saya perlu memperbarui token akses akun layanan?
- Masa berlaku token akses berakhir satu jam setelah dikeluarkan oleh Server Otorisasi OAuth 2.0 Google. Ketika token akses berakhir, aplikasi harus menggunakan library klien untuk mengambil token akses yang lain.