Bu bölümde, Merchant API için geliştirici kaydıyla ilgili sık sorulan sorular ele alınmaktadır.
Genel Kayıt
Kayıt süreciyle ilgili sık sorulan sorular:
Merchant API'yi kullanmak için geliştirici kaydı zorunlu mu?
Evet. Google'ın hizmet duyuruları ve yeni özellik bilgileri gibi API'ye özel önemli güncellemeleri gönderebilmesi için geliştirici iletişim bilgilerinizi kaydetmeniz gerekir.
Merchant API'yi yalnızca keşfetmek ve test etmek istiyorsanız kayıt gerektirmeyen Google OAuth Playground ve API Gezgini gibi araçları kullanabilirsiniz.
Ne sıklıkta kaydolmam gerekir?
Kayıt, her Google Cloud projesi için bir kez yapılan bir işlemdir. Birden fazla satıcı hesabıyla çalışıp çalışmamanız fark etmeksizin, kayıt işlemini yalnızca bir kez gerçekleştirirsiniz. Bu işlem, bağlı Google Cloud projesindeki tüm kullanıcılar ve hizmet hesapları için geçerli olur.
Bir Google Cloud projesi başarıyla kaydedildikten sonra, unregisterGcp yöntemi çağrılarak açıkça kaldırılmadığı sürece bağlantı etkin kalır. API Gezgini veya OAuth Playground gibi Google'a ait paylaşılan projeleri kaydedemezsiniz.
Geliştirici iletişim bilgisi olarak hangi e-posta adresini sağlamalıyım?
Bir kişinin kurumsal e-posta adresini kullanmanızı öneririz. Alternatif olarak genel grup takma adlarını da kullanabilirsiniz. İletişimler insan alıcılara yönelik olduğundan hizmet hesabı e-postalarını kullanamazsınız. Google, hizmet duyuruları ve yeni özellik bilgileri gibi API'ye özel önemli güncellemeler gönderir.
E-posta adresi Merchant Center hesabındaki mevcut bir kullanıcıya aitse bu kullanıcıya otomatik olarak API developer rolü verilir. Hesap yoksa bu adrese bir davetiye gönderilir.
registerGcp yönteminde geliştirici iletişim e-posta adresi alanı isteğe bağlıdır. Kayıt sırasında bu alan için bir değer sağlamazsanız Merchant Center kullanıcı arayüzünde veya accounts.users.create yöntemini çağırarak API developer rolüne sahip bir kullanıcı oluşturmanız gerekir.
Geliştirici iletişim e-posta adresinin bir Google Hesabı olması gerekir mi?
Evet. Google dışı mevcut bir e-posta adresini kullanmak için Google Hesabı oluşturma kayıt sürecinde Mevcut e-posta adresinizi kullanın seçeneğini belirleyerek bu adresi bir Google Hesabı ile ilişkilendirebilirsiniz. Hizmet hesapları e-posta alamadığı için hizmet hesabı e-postalarını kullanamazsınız.
Kayıt çağrısı için kimlik doğrulama ve yetkilendirme işlemlerini nasıl yaparım?
Kullanım alanınıza bağlı olarak, kayıt çağrısının kimlik doğrulaması ve yetkilendirmesi için iki farklı kimlik doğrulama senaryosu kullanılabilir:
- OAuth 2.0: Birden fazla satıcı hesabını yöneten üçüncü taraf sağlayıcılar veya ajanslar için
- Hizmet Hesapları: Kendi Merchant Center hesabınıza erişmek için kullanılır.
Yukarıdaki şemada, kayıt çağrısı için iki kimlik doğrulama ve yetkilendirme akışı gösterilmektedir. Aşağıdakilerden birini seçebilirsiniz:
- OAuth'u bir Google Hesabı ile ilişkili account@email.com gibi bir e-posta adresiyle kullanma
- sa@project.iam.gserviceaccount.com gibi bir hizmet hesabı kullanma
OAuth'u kullanmaya karar verirseniz:
- E-postanız için Google Cloud projenizde OAuth kimlik bilgileri oluşturma
- Yetkilendirme e-posta adresinin Merchant Center'da mevcut olduğundan ve
ADMINerişim türüne sahip olduğundan emin olun.
Hizmet hesabı kullanmaya karar verirseniz:
- Hizmet hesabının Google Cloud projenizde mevcut olduğundan emin olun.
- Hizmet hesabıyla ilişkili e-posta adresinin Merchant Center'da bulunduğundan ve
ADMINerişim türüne sahip olduğundan emin olun.
Doğrudan API çağrılarını veya istemci kitaplıklarını kullanarak kimlik doğrulama kimliğinin güvenlik bağlamı altında kayıt çağrısını gerçekleştirin. Geliştiriciyle iletişim için bir e-posta adresi (ör. developer@email.com) sağlayın.
Kayıt çağrısı başarılı olursa Merchant Center'da, sağlanan geliştirici e-posta adresi ve API developer rolüne sahip bir kullanıcı oluşturulur. Yanıt olarak bir DeveloperRegistration kaynağı alırsınız.
Kimlik doğrulama e-postası ile geliştirici iletişim e-postası arasındaki fark nedir?
Bu iki e-posta adresi, Merchant API ekosisteminde farklı amaçlara hizmet eder:
- Kimlik doğrulama e-postası: Merchant API'ye gönderilen istekleri yetkilendirmek için genellikle Google Hesabınızla veya bir hizmet hesabıyla ilişkili e-posta adresini kimlik olarak kullanırsınız. Bunun için aşağıdaki koşulların karşılanması gerekir:
- Merchant Center'da mevcut ve
ADMINrolüne sahip. - Merchant API'nin etkin olduğu bir Google Cloud projesi, API çağrılarını yetkilendiren e-posta adresiyle ilişkili OAuth istemcisini veya hizmet hesabını barındırır.
- Merchant Center'da mevcut ve
- Geliştirici iletişim e-postası: Geliştirici iletişim e-postası da bir Google Hesabı ile ilişkilendirilmelidir ancak Google'dan gelen kritik hizmet duyuruları ve API güncellemeleri için öncelikli kişi olarak kullanılır. Bir kullanıcıya veya bir kullanıcı grubuna ait olabilir. Varsayılan olarak, Merchant Center'da
API developerrolünü alır.
Geliştirici iletişim e-posta adresine gönderilen daveti kabul etmem gerekir mi?
Evet. Belirttiğiniz geliştirici iletişim e-posta adresi alıcısının daveti kabul etmek için 14 günü vardır. Kayıt işlemi, yalnızca davetiyeyi kabul ettikten sonra tamamlanır. Ancak bu süre zarfında API çağrıları yapabilirsiniz.
Davetiye belirtilen süre içinde kabul edilmezse davetiye bağlantısının süresi dolar. Artık Merchant API çağrıları yapamazsınız ve kayıt işlemini yeniden başlatmanız gerekir.
Geliştirici kaydım neden "test hesabı" hatasıyla başarısız oluyor?
Entegrasyon kararlılığını sağlamak için geliştirici kaydı, üretim (canlı) hesaplarıyla sınırlıdır. Merchant Center'da "test hesabı" olarak işaretlenmiş, özellikle test için oluşturulmuş bir hesap kullanıyorsanız kayıt reddedilir.
Bir müşteri için yönettiğim alt hesabı kaydedebilir miyim?
İşletme kimliğinizi temsil eden hesabı kaydetmenizi önemle tavsiye ederiz. Müşterinin alt hesabını kaydetmeye izin verilmez ve bu işlem hataya açıktır. Müşteri hizmetinizi bırakır veya hesabı silerse API entegrasyonunuzun tamamı devre dışı bırakılabilir.
Web sitem için hak talebinde bulunmam gerekir mi yoksa yalnızca doğrulamam yeterli mi?
Geliştirici kaydı için web sitesinin doğrulanmış olması gerekir. Bu, hesapla ilişkili site üzerinde yönetim kontrolünüz olduğunu kanıtlar. Alışveriş reklamları gibi diğer özellikler için hak talebinde bulunmak gerekirken API kaydı için temel şart doğrulamadır.
Hesap ve Proje Yönetimi
Hesap ve proje yönetimiyle ilgili sık sorulan sorular:
Birden fazla Merchant Center hesabıyla çalışıyorum. Merchant API ile kullanmak istediğim her Merchant Center hesabını kaydetmem gerekir mi?
Hayır. Birden fazla satıcının hesabını yöneten bir üçüncü taraf geliştirici veya ajanssanız Google Cloud projenizi satıcılarınızın her birinin hesabıyla değil, kendi birincil Merchant Center hesabınızla kaydetmeniz gerekir. Bu şekilde, satıcılarınız için yaptığınız tüm API çalışmalarında geliştiriciyi temsil edersiniz.
Birden fazla Merchant Center hesabıyla çalışıyorum. Birincil Merchant Center hesabımı nasıl seçerim?
Kullanılacak birincil hesabın seçimi, işletmenizin türüne bağlıdır:
- Mevcut gelişmiş hesabı olan pazar yerleri: İşletmeniz pazar yeri olarak faaliyet gösteriyorsa ve tüm platformu temsil eden bir gelişmiş hesabı varsa bu mevcut hesap kimliğini birincil Merchant Center hesabı olarak kullanın.
- Karşılaştırmalı Alışveriş Hizmetleri (CSS): CSS iseniz benzersiz CSS hesap kimliğinizi veya CSS grubu hesap kimliğinizi kullanın.
- Ajanslar, geliştiriciler ve diğer 3. taraflar: Birden fazla satıcı hesabını yöneten ve işletmenizi temsil eden tek bir Merchant Center Kimliğine sahip olmayan bir ajans veya üçüncü taraf geliştirici gibi bir 3. taraf işletmeyseniz yeni bir birincil Merchant Center hesabı oluşturmanız ve bu hesabı gelişmiş hesaba dönüştürmeyi talep etmeniz gerekir.
Google Cloud projeniz birincil Merchant Center hesabınıza kaydedildikten sonra, erişiminiz olan diğer Merchant Center hesaplarını tek tek kaydetmenize gerek kalmadan aynı projeyi kullanarak yönetebilirsiniz.
Birden fazla Google Cloud projesi kullanıyorum. Her birini kaydetmem gerekiyor mu?
Evet. Kayıt işlemi, çağrı yapan Google Cloud projesini bağladığından, API çağrıları yapmak için kullandığınız her Google Cloud projesinden registerGcp çağrısını yapmanız gerekir.
Tek bir Google Cloud projesi, aynı anda yalnızca bir Merchant Center hesabına kaydedilebilir. Ancak tek bir Merchant Center hesabına birden fazla Google Cloud projesi kaydedilebilir. Benzer şekilde, birden fazla Google Cloud projesinde veya birden fazla Merchant Center'da birden fazla kayıt işlemi gerçekleştirmek için aynı geliştirici e-posta adresini kullanabilirsiniz.
Bir Google Cloud projesini birden fazla Merchant Center hesabına kaydedersem ne olur?
Başka bir Merchant Center hesabına kayıtlı bir Google Cloud projesini kaydetmeye çalışırsanız ALREADY_REGISTERED hatası alırsınız.
Geliştirici kaydı API çağrısının kimliğini nasıl doğrularım?
Merchant API için geliştirici kaydı API çağrısının kimliğini doğrulamak üzere Google Cloud projesi aracılığıyla yönetilen kimlik bilgilerini kullanırsınız. Kimlik doğrulama işlemini gerçekleştiren kimlik için iki ana seçeneğiniz vardır:
- OAuth 2.0 kullanan Gmail gibi Google Hesapları: Bu yöntem, Google Cloud projenizde oluşturulan OAuth 2.0 istemci kimlik bilgilerini kullanır. API çağrısı, kullanıcının oturum açtığı belirli bir Google Hesabı adına yetkilendirilir.
- Hizmet Hesabı: Bu yöntem, uygulamalar için tasarlanmış özel bir Google Hesabı türü olan Google Cloud hizmet hesabını kullanır. Hizmet hesabının kimlik bilgileri de Google Cloud projenizde yönetilir.
Geliştirici kaydının başarılı olması için kimlik doğrulama kimliğinin (Google Hesabı veya hizmet hesabı) Merchant Center'da aşağıdaki ölçütleri karşılaması gerekir:
- Merchant Center'da kullanıcı olarak mevcut olma: Kimlik doğrulama işlemini gerçekleştiren Google Hesabı veya hizmet hesabıyla ilişkili e-posta adresi, kaydettiğiniz Merchant Center hesabına kullanıcı olarak eklenmelidir.
- Yönetici Rolü Gerekli: Bu kullanıcıya, ilgili Merchant Center hesabında
ADMINrolü atanmış olmalıdır.
API çağrıları yaparken:
- Doğrudan API çağrıları kullanıyorsanız geçerli bir erişim jetonu alıp
Authorizationbaşlığında sağlamanız gerekir. Bu jeton, bir Google Hesabı için OAuth 2.0 akışı veya bir hizmet hesabı için sunucudan sunucuya kimlik doğrulama akışı tarafından oluşturulur. - Google tarafından sağlanan istemci kitaplıkları, yapılandırmalarının bir parçası olarak erişim jetonlarını alma ve yenileme işlemlerini sizin için gerçekleştirir.
Kimlik doğrulayan kullanıcı, geliştirici iletişim kullanıcısıyla aynı olmayabilir. Daha fazla bilgi için Kimlik doğrulama e-postası ile geliştirici iletişim e-postası arasındaki fark nedir? başlıklı makaleyi inceleyin.
Erişim jetonlarını ne sıklıkta yenilemem gerekir?
Hem hizmet hesapları hem de OAuth 2.0 için erişim jetonlarının süresi genellikle 1 saat sonra dolar. Ancak yeni bir anahtar alma mekanizması, kullandığınız kimlik doğrulama yöntemine bağlıdır:
- Hizmet hesapları, gerektiğinde yeni bir erişim jetonu oluşturmak için özel anahtar veya ortam kimlik bilgileri kullanır.
- OAuth 2.0 akışları, Google OAuth2 jeton uç noktasını çağırarak yeni bir 1 saatlik erişim jetonu almak için refresh_token kullanır.
Uygulamanızın hiçbir zaman kesinti yaşamaması için bu rotasyonu otomatik olarak gerçekleştiren resmi Google Auth kitaplıklarını kullanmanızı önemle tavsiye ederiz.
Kullanıcılar ve Roller
Kullanıcılar ve rollerle ilgili sık sorulan sorular:
Geliştirici e-posta hesabının Merchant Center'da zaten mevcut olması gerekir mi?
Hayır. Kayıt e-posta hesabı Merchant Center'da mevcut değilse Merchant API, Merchant Center'da belirtilen e-posta adresiyle "Beklemede" durumunda bir hesap oluşturur. Geliştirici e-posta adresi Merchant Center hesabındaki mevcut bir kullanıcıya aitse bu kullanıcıya otomatik olarak API developer rolü verilir.
Geliştirici iletişim e-postasının Merchant Center'da yönetici haklarına sahip olması gerekir mi?
Hayır. Geliştirici iletişim e-postasıyla ilişkili Merchant Center kullanıcısı, önemli bildirimleri almak için gereken API developer rolünü varsayılan olarak alır. Ancak Merchant Center'da minimum izinlere sahiptir. Bu kullanıcının diğer API çağrılarını yapmasına veya Merchant Center kullanıcı arayüzündeki ayarları yönetmesine izin vermek için kullanıcıya STANDARD veya ADMIN gibi ek roller vermeniz gerekir. Merchant Center rolleri hakkında daha fazla bilgi için Erişim türleri başlıklı makaleyi inceleyin.
"API developer" rolünün hangi izinleri var?
API developer rolü, Merchant Center'da minimum haklara sahip bir roldür. Merchant API'ye yapılan çağrıları yetkilendirmek için geliştirici iletişim e-postasını kullanmayı planlıyorsanız kullanıcının API çağrıları yapabilmesi için ADMIN veya STANDARD izinlerini eklemenizi öneririz.
API'yi çağıran her geliştirici kullanıcıyı veya hizmet hesabını kaydetmem gerekir mi?
Hayır. Geliştirici kaydı, tek tek kullanıcılara veya hizmet hesaplarına değil, API çağrıları yapmak için kullanılan Google Cloud projesine bağlıdır. Bir Google Cloud projesi, birincil Merchant Center hesabınıza başarıyla kaydedildikten sonra, Merchant Center'da mevcut olmaları ve ADMIN rolünün atanmış olması koşuluyla, Merchant API çağrılarını yetkilendirmek için OAuth kimlik bilgilerini veya hizmet hesaplarını kullanarak bağlı Google Cloud projesi aracılığıyla yönetilen herhangi bir kimliği kullanabilirsiniz.
İlk kayıttan sonra geliştirici iletişim e-postasını nasıl değiştirebilirim?
Kişileri yönetmek veya değiştirmek için standart accounts.users hizmetini ya da Merchant Center kullanıcı arayüzündeki "Erişim ve hizmetler" sayfasını kullanarak API developer rolüne sahip kullanıcıları ekleyin veya kaldırın.
Son "API developer" kullanıcısı Merchant Center hesabından kaldırılırsa ne olur?
Hizmetin hemen kesintiye uğramasını önlemek için 30 günlük ek süre tetiklenir. Bu süre içinde,
- Yöneticiler, e-posta yoluyla üç zorunlu hizmet duyurusu alır (genellikle engellemeden yaklaşık 30, 17 ve 4 gün önce).
- API çağrıları normal şekilde çalışmaya devam edecek.
- Ek süre sona ermeden önce yeni bir
API developereklenmezse ilişkili Google Cloud projelerinden gelen API çağrılarıAUTH_GCP_NOT_REGISTEREDhatasıyla engellenir.
30 günlük ek süre sona erdiğinde, ilişkili Google Cloud projelerinden gelen API çağrıları engellenir ve geçerli bir geliştirici iletişim bilgisi geri yüklenene kadar AUTH_GCP_NOT_REGISTERED hatası alınır.
Geliştirici kaydının yapıldığı Merchant Center kimliği silinirse ne olur?
Entegrasyonunuz etkinken geliştirici kaydı için kullanılan Merchant Center hesabını silmeyin. Bu hesabın silinmesi, entegrasyonunuzu hemen kesintiye uğratır ve artık ilişkili Google Cloud projesinden API çağrıları yapamazsınız.
Bu Merchant Center hesabını silmeniz gerekiyorsa bağlantıyı güvenli bir şekilde kaldırmak için önce unregisterGcp yöntemini çağırmanız ve ardından Merchant Center kimliğini silmeniz gerekir. Merchant API'yi kullanmaya devam etmek istiyorsanız mevcut Merchant Center kimliğinin kaydını iptal ettikten hemen sonra başka bir Merchant Center kimliğiyle kaydolmanız gerekir. Merchant Center kimliğini silme işlemine ancak bu adımdan sonra devam edin.
Merchant Center'da "API developer" rolünü neden göremiyorum?
API developer rolü, yalnızca ilgili Merchant Center hesabı için geliştirici kaydı yapıldıktan sonra Merchant Center kullanıcı arayüzünde görünür. Kayıtlı olmayan Merchant Center hesaplarında API developer rolü gösterilmez.
Özel Kullanım Alanları
Özel kullanım alanlarıyla ilgili sık sorulan sorular:
Birden fazla satıcı hesabını yöneten bir ajans veya üçüncü taraf geliştiriciyim. Bunu ayarlamanın en iyi yolu nedir?
Üçüncü taraf geliştiriciler ve ajanslar kendi birincil Merchant Center hesaplarını kullanmalı ve tüm Google Cloud projelerini bu tek, merkezi hesaba kaydetmelidir. Google Cloud projenizi her satıcının hesabına ayrı ayrı kaydetmeyin.
Google Apps Komut Dosyası'na kaydolma işlemi nasıl yapılır?
Apps Komut Dosyaları genellikle varsayılan bir Google Cloud projesinde çalışır. Bu varsayılan Google Cloud kimliğini Merchant Center hesabınıza kaydetmeniz gerekir. Google Cloud kimliği, API tarafından otomatik olarak alındığından parametre olarak sağlamanız gerekmez.
Bir Merchant Center kimliğinin belirli bir Google Cloud proje kimliğine kayıtlı olup olmadığını kontrol edebilir miyim?
Evet. getAccountForGcpRegistration yöntemini kullanarak belirli bir Google Cloud projesine hangi Merchant Center kimliğinin kayıtlı olduğunu kontrol edebilirsiniz. Merchant Center hesabınızdaki bir Google Cloud projesi bağlantısını kaldırmak için unregisterGcp yöntemini kullanın.
Shopify'daki Google & YouTube uygulaması kullanıcıları için Content API'den Merchant API'ye geçiş
Üçüncü taraf platformları ve uygulamaları için Content API'den Merchant API'ye geçiş hakkında sık sorulan sorular:
Content API'den Merchant API'ye geçiş yapmak için herhangi bir işlem yapmam gerekiyor mu?
Herhangi bir işlem yapmanız gerekmez. Merchant Center feed'lerinizi yönetmek için Shopify'da Google & YouTube uygulamasını kullanıyorsanız Content API'den Merchant API'ye geçiş işlemi Google tarafından gerçekleştirilir.
Geçiş işlemi ürün kimliklerimi değiştirir mi?
Hayır, geçiş işlemi Merchant Center feed'lerinizdeki ürün kimliklerini değiştirmez.
Geçişi tamamlamak için Shopify'daki Google & YouTube uygulamasını yeniden yüklemem gerekir mi?
Geçişi tamamlamak için herhangi bir işlem yapmanız gerekmez. Google & YouTube uygulamasını yeniden yüklemeniz gerekmez.
Neden Merchant Center'da Content API veri kaynaklarını görmeye devam ediyorum?
Merchant API'ye geçiş sırasında Content API veri kaynakları Merchant Center'da görünmeye devam edebilir. Bu durumlar normaldir ve herhangi bir işlem yapmanıza gerek yoktur.