Panggilan API langsung

Dalam pendekatan ini untuk berinteraksi dengan Merchant API, buat permintaan mentah ke endpoint API secara langsung, biasanya melalui HTTP(S). Anda menangani aspek seperti membentuk isi permintaan, menyetel header (termasuk autentikasi), dan mengurai respons secara manual.

Langkah 1. Daftarkan diri sebagai pengembang

Untuk menggunakan Merchant API, Anda harus mendaftarkan informasi kontak developer Anda.

Pendaftaran akan melakukan hal berikut:

  • Membuat kontak teknis untuk akun Merchant Center Anda dengan menetapkan peran API developer kepada pengguna. Dengan demikian, Google dapat mengirimkan update penting khusus tentang API dan fitur yang digunakan developer, seperti pengumuman layanan dan informasi tentang fitur baru, yang mungkin kurang menarik bagi non-developer.
  • Memungkinkan Anda menggunakan beberapa akun penjual tanpa harus mendaftar beberapa kali. Saat Anda mendaftar, ID project Google Cloud yang digunakan untuk mengautentikasi ke Merchant API dikaitkan dengan akun Merchant Center Anda, yang memiliki kontak teknis (API developer). Dengan cara ini, Anda dapat memperoleh info terbaru penting untuk semua akun penjual yang Anda kelola selama autentikasi dilakukan dengan project Google Cloud yang terdaftar.

Saat mendaftar, perhatikan prasyarat dan batasan yang dijelaskan di Pendaftaran.

Untuk mendaftar menggunakan metode developerRegistration.registerGcp, Anda dapat memulai dengan contoh ini, mengganti {DEVELOPER_EMAIL} dengan alamat email yang sesuai di isi permintaan.

POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp

{
  "developerEmail": "{DEVELOPER_EMAIL}"
}

Panggilan yang berhasil akan menampilkan resource DeveloperRegistration, yang mengonfirmasi link antara project dan akun Anda.

{
  "name": "accounts/{ACCOUNT_ID}/developerRegistration",
  "gcpIds": [
    "123456789012345"
  ]
}

Langkah 2. Mengelola kontak dan izin developer

Saat Anda mendaftar:

  • Jika alamat email tersebut milik pengguna di akun Merchant Center, pengguna tersebut akan diberi peran API_DEVELOPER.
  • Jika alamat email bukan milik pengguna yang ada, undangan akan dikirim ke alamat tersebut. Penerima harus menerima undangan untuk ditambahkan sebagai pengguna baru dengan peran API_DEVELOPER.

Setelah pendaftaran awal, sebaiknya tambahkan beberapa developer dan beri mereka hak akses tambahan.

Langkah 2a. Memberikan izin tambahan

Peran API_DEVELOPER diperlukan untuk menerima notifikasi penting, tetapi memiliki izin minimal dalam Merchant Center. Untuk mengizinkan pengguna ini melakukan panggilan API lain atau mengelola setelan di UI Merchant Center, Anda perlu memberikan peran tambahan kepada pengguna tersebut, seperti STANDARD atau ADMIN. Untuk mengetahui informasi selengkapnya, lihat Jenis akses.

Anda dapat memperbarui hak akses pengguna dengan metode accounts.users.patch.

Contoh berikut menunjukkan cara memperbarui pengguna untuk memberikan peran ADMIN dan API_DEVELOPER kepada mereka. Dengan demikian, mereka dapat mengelola akun sepenuhnya dan juga akan menerima komunikasi terkait API.

PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/users/{DEVELOPER_EMAIL}?update_mask=access_rights
{
  "access_rights": [
    "ADMIN",
    "API_DEVELOPER"
  ]
}

Langkah 2b. Menambahkan developer cadangan

Untuk mencegah terganggunya akses API Anda jika kontak developer utama Anda keluar dari organisasi, Anda harus menambahkan setidaknya satu developer cadangan.

Anda dapat menambahkan pengguna dengan metode accounts.users.create atau memperbarui pengguna dengan accounts.users.patch. Sebaiknya berikan peran ADMIN dan API_DEVELOPER kepada pengguna ini.

Langkah 3. Membuat sumber data produk utama

Untuk menyisipkan produk, Anda memerlukan sumber data produk utama. Permintaan berikut menunjukkan cara membuat sumber data yang dapat Anda gunakan untuk menyisipkan produk ke akun Anda:

POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources

{
  "primaryProductDataSource": {
    "contentLanguage": "en",
    "countries": [
      "US"
    ],
    "feedLabel": "US"
  },
  "name": "primary-data-source",
  "displayName": "Primary Products Data Source"
}

Ganti {ACCOUNT_ID} dengan ID akun Merchant Center yang Anda buat.

Setelah berhasil menjalankan permintaan ini, Anda akan melihat respons berikut:

{
  "name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
  "dataSourceId": "{DATASOURCE_ID}",
  "displayName": "Primary Products Data Source",
  "primaryProductDataSource": {
    "feedLabel": "US",
    "contentLanguage": "en",
    "countries": [
      "US"
    ],
    "defaultRule": {
      "takeFromDataSources": [
        {
          "self": true
        }
      ]
    }
  },
  "input": "API"
}

Salin nilai kolom name. Anda akan memerlukannya untuk menyisipkan produk.

Anda dapat melihat sumber data ini di UI Merchant Center. Untuk mengetahui informasi selengkapnya, lihat Cara menemukan tab Sumber data.

Langkah 4. Masukkan produk

Setelah membuat sumber data, coba sisipkan produk ke dalamnya. Jalankan perintah berikut, dengan memberikan ACCOUNT_ID yang benar. Ganti {DATASOURCE_NAME} dengan nilai yang Anda salin sebelumnya.

POST https://merchantapi.googleapis.com/products/v1/accounts/{ACCOUNT_ID}/productInputs:insert?dataSource={DATASOURCE_NAME}
{
  "contentLanguage": "en",
  "feedLabel": "US",
  "name": "Red T-shirt",
  "productAttributes": {
    "gender": "MALE",
    "brand": "New brand"
  },
  "offerId": "tshirt-123"
}

Setelah berhasil menjalankan permintaan ini, Anda akan melihat respons berikut:

{
  "name": "accounts/{ACCOUNT_ID}/productInputs/en~US~tshirt-123",
  "product": "accounts/{ACCOUNT_ID}/products/en~US~tshirt-123",
  "offerId": "tshirt-123",
  "contentLanguage": "en",
  "feedLabel": "US",
  "productAttributes": {
    "brand": "New brand",
    "gender": "MALE"
  }
}

ID produk untuk produk yang baru dibuat adalah en~US~tshirt-123. Anda dapat menggunakan metode accounts.products.get untuk mengambil detail tentang produk ini. Anda juga dapat menggunakan UI Merchant Center untuk melihat produk ini. Lihat Melihat data produk.