Doğrudan API çağrıları

Merchant API ile etkileşim kurmaya yönelik bu yaklaşımda, genellikle HTTP(S) üzerinden doğrudan API uç noktalarına ham istekler gönderilir. İstek gövdesini oluşturma, başlıkları (kimlik doğrulama dahil) ayarlama ve yanıtı ayrıştırma gibi işlemleri manuel olarak yaparsınız.

1. Adım: Geliştirici olarak kayıt ol

Merchant API'yi kullanmak için geliştirici iletişim bilgilerinizi kaydetmeniz gerekir.

Kaydolma işlemiyle aşağıdakiler yapılır:

  • Bir kullanıcıya API developer rolünü atayarak Merchant Center hesabınız için teknik bir kişi oluşturur. Bu sayede Google, özellikle API ve geliştiricinin kullandığı özelliklerle ilgili önemli güncellemeleri (ör. hizmet duyuruları ve yeni özellikler hakkında bilgiler) gönderebilir. Bu güncellemeler, geliştirici olmayan kullanıcıların ilgisini daha az çekebilir.
  • Birden fazla satıcı hesabıyla çalışmanıza olanak tanır ve birden fazla kez kaydolmanızı gerektirmez. Kaydolduğunuzda, Merchant API'de kimlik doğrulaması yapmak için kullanılan Google Cloud proje kimliği, teknik kişilerin (API developer) bulunduğu Merchant Center hesabınızla ilişkilendirilir. Bu sayede, kimlik doğrulama işlemi kayıtlı Google Cloud projesiyle yapıldığı sürece yönettiğiniz tüm satıcı hesaplarıyla ilgili önemli güncellemeleri alabilirsiniz.

Kayıt sırasında Kayıt bölümünde ayrıntılı olarak açıklanan ön koşullara ve kısıtlamalara uyun.

developerRegistration.registerGcp yöntemini kullanarak kaydolmak için bu örnekle başlayabilir, {DEVELOPER_EMAIL} yerine istek gövdesindeki uygun e-posta adresini kullanabilirsiniz.

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

{
  "developerEmail": "{DEVELOPER_EMAIL}"
}

Başarılı bir çağrı, projeniz ile hesabınız arasındaki bağlantıyı onaylayan bir DeveloperRegistration kaynağı döndürür.

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

2. adım: Geliştirici kişilerini ve izinlerini yönetme

Kaydolduğunuzda:

  • E-posta adresi, Merchant Center hesabındaki bir kullanıcıya aitse bu kullanıcıya API_DEVELOPER rolü verilir.
  • E-posta adresi mevcut bir kullanıcıya ait değilse bu adrese davetiye gönderilir. Alıcının, API_DEVELOPER rolüyle yeni kullanıcı olarak eklenmek için daveti kabul etmesi gerekir.

İlk kayıttan sonra birden fazla geliştirici eklemenizi ve onlara ek erişim hakları vermenizi öneririz.

Adım 2a. Ek izinler verme

Önemli bildirimleri almak için API_DEVELOPER rolü gereklidir ancak bu rol, Merchant Center'da minimum izinlere sahiptir. Bu kullanıcının başka API çağrıları yapmasına veya Merchant Center kullanıcı arayüzünde ayarları yönetmesine izin vermek için kullanıcıya STANDARD veya ADMIN gibi ek roller vermeniz gerekir. Daha fazla bilgi için Erişim türleri başlıklı makaleyi inceleyin.

Kullanıcının erişim haklarını accounts.users.patch yöntemiyle güncelleyebilirsiniz.

Aşağıdaki örnekte, bir kullanıcının hem ADMIN hem de API_DEVELOPER rollerini alacak şekilde nasıl güncelleneceği gösterilmektedir. Bu sayede, hesabı tam olarak yönetebilirler ve API ile ilgili iletişimleri de alırlar.

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

2b adımı. Yedek geliştiriciler ekleme

Birincil geliştirici iletişim kişiniz kuruluşunuzdan ayrılırsa API erişiminizin kesintiye uğramasını önlemek için en az bir yedek geliştirici eklemeniz gerekir.

accounts.users.create yöntemiyle kullanıcı ekleyebilir veya accounts.users.patch yöntemiyle kullanıcı güncelleyebilirsiniz. Bu kullanıcıya hem ADMIN hem de API_DEVELOPER rollerini vermenizi öneririz.

3. Adım: Birincil ürün veri kaynağı oluşturma

Ürün eklemek için birincil ürün veri kaynağına ihtiyacınız vardır. Aşağıdaki istekte, hesabınıza ürün eklemek için kullanabileceğiniz bir veri kaynağının nasıl oluşturulacağı gösterilmektedir:

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"
}

{ACCOUNT_ID} kısmını, oluşturduğunuz Merchant Center hesabının kimliğiyle değiştirin.

Bu isteği başarıyla çalıştırdıktan sonra aşağıdaki yanıtı görmeniz gerekir:

{
  "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"
}

name alanının değerini kopyalayın. Ürün eklemek için bu kimliğe ihtiyacınız vardır.

Bu veri kaynağını Merchant Center kullanıcı arayüzünde görüntüleyebilirsiniz. Daha fazla bilgi için Veri kaynakları sekmesini bulma başlıklı makaleyi inceleyin.

4. Adım. Ürün ekle

Veri kaynağını oluşturduktan sonra içine bir ürün eklemeyi deneyin. Aşağıdaki komutu çalıştırın ve doğru ACCOUNT_ID değerini girin. {DATASOURCE_NAME} kısmını, daha önce kopyaladığınız değerle değiştirin.

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"
}

Bu isteği başarıyla çalıştırdıktan sonra aşağıdaki yanıtı görmeniz gerekir:

{
  "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"
  }
}

Yeni oluşturulan ürünün ürün kimliği en~US~tshirt-123. Bu ürünle ilgili ayrıntıları almak için accounts.products.get yöntemini kullanabilirsiniz. Bu ürünü görüntülemek için Merchant Center kullanıcı arayüzünü de kullanabilirsiniz. Ürün verilerinizi görüntüleme başlıklı makaleyi inceleyin.