W tym podejściu do interakcji z interfejsem Merchant API wysyłasz nieprzetworzone żądania bezpośrednio do punktów końcowych interfejsu API, zwykle za pomocą protokołu HTTP(S). Ręcznie obsługujesz takie aspekty jak tworzenie treści żądania, ustawianie nagłówków (w tym uwierzytelniania) i parsowanie odpowiedzi.
Krok 1. Zarejestruj się jako programista
Aby korzystać z interfejsu Merchant API, musisz zarejestrować dane kontaktowe dewelopera.
Rejestracja umożliwia:
- Tworzy kontakt techniczny dla konta Merchant Center, przypisując użytkownikowi rolę
API developer
. Dzięki temu Google może wysyłać ważne aktualizacje dotyczące konkretnie interfejsu API i funkcji, z których korzysta deweloper, np. ogłoszenia o usługach i informacje o nowych funkcjach, które mogą być mniej interesujące dla osób niebędących deweloperami. - Umożliwia korzystanie z wielu kont sprzedawców bez konieczności wielokrotnej rejestracji. Podczas rejestracji identyfikator projektu Google Cloud używany do uwierzytelniania w interfejsie Merchant API jest powiązany z kontem Merchant Center, które ma kontakty techniczne (
API developer
). Dzięki temu możesz otrzymywać ważne aktualizacje dotyczące wszystkich kont sprzedawcy, którymi zarządzasz, o ile uwierzytelnianie odbywa się za pomocą zarejestrowanego projektu Google Cloud.
Podczas rejestracji zapoznaj się z wymaganiami wstępnymi i ograniczeniami opisanymi w sekcji Rejestracja.
Aby zarejestrować się za pomocą metody developerRegistration.registerGcp
, możesz zacząć od tego przykładu, zastępując {DEVELOPER_EMAIL}
odpowiednim adresem e-mail w treści żądania.
POST https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/developerRegistration:registerGcp
{
"developerEmail": "{DEVELOPER_EMAIL}"
}
Wywołanie zakończone pomyślnie zwraca zasób DeveloperRegistration
, który potwierdza połączenie między Twoim projektem a kontem.
{
"name": "accounts/{ACCOUNT_ID}/developerRegistration",
"gcpIds": [
"123456789012345"
]
}
Krok 2. Zarządzanie kontaktami dewelopera i uprawnieniami
Podczas rejestracji:
- Jeśli adres e-mail należy do użytkownika konta Merchant Center, otrzyma on rolę
API_DEVELOPER
. - Jeśli adres e-mail nie należy do istniejącego użytkownika, na ten adres zostanie wysłane zaproszenie. Aby zostać dodanym jako nowy użytkownik z rolą
API_DEVELOPER
, odbiorca musi zaakceptować zaproszenie.
Po wstępnej rejestracji zalecamy dodanie kilku deweloperów i przyznanie im dodatkowych uprawnień dostępu.
Krok 2a. Przyznawanie dodatkowych uprawnień
Rola API_DEVELOPER
jest wymagana do otrzymywania ważnych powiadomień, ale ma minimalne uprawnienia w Merchant Center. Aby umożliwić temu użytkownikowi wykonywanie innych wywołań interfejsu API lub zarządzanie ustawieniami w interfejsie Merchant Center, musisz przyznać mu dodatkowe role, takie jak STANDARD
lub ADMIN
. Więcej informacji znajdziesz w sekcji Typy dostępu.
Uprawnienia dostępu użytkownika możesz zaktualizować za pomocą metody accounts.users.patch
.
Poniższy przykład pokazuje, jak zaktualizować użytkownika, aby przyznać mu role ADMIN
i API_DEVELOPER
. Dzięki temu będą mogli w pełni zarządzać kontem i otrzymywać powiadomienia dotyczące interfejsu API.
PATCH https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/users/{DEVELOPER_EMAIL}?update_mask=access_rights
{
"access_rights": [
"ADMIN",
"API_DEVELOPER"
]
}
Krok 2b. Dodawanie deweloperów rezerwowych
Aby zapobiec przerwaniu dostępu do interfejsu API w przypadku, gdy główna osoba kontaktowa dewelopera opuści Twoją organizację, dodaj co najmniej jednego dewelopera rezerwowego.
Użytkownika możesz dodać za pomocą metody accounts.users.create
, a zaktualizować za pomocą metody accounts.users.patch
.
Zalecamy przyznanie temu użytkownikowi ról ADMIN
i API_DEVELOPER
.
Krok 3. Tworzenie podstawowego źródła danych o produktach
Aby wstawić produkt, musisz mieć podstawowe źródło danych o produktach. Poniższa prośba pokazuje, jak utworzyć źródło danych, którego możesz użyć do wstawienia produktu na konto:
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"
}
Zastąp {ACCOUNT_ID} identyfikatorem utworzonego konta Merchant Center.
Po pomyślnym uruchomieniu tego żądania powinna pojawić się taka odpowiedź:
{
"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"
}
Skopiuj wartość pola name
. Będzie on potrzebny do wstawienia produktu.
To źródło danych możesz wyświetlić w interfejsie Merchant Center. Więcej informacji znajdziesz w artykule Jak znaleźć kartę Źródła danych.
Krok 4. Wstaw produkt
Po utworzeniu źródła danych spróbuj wstawić do niego produkt. Uruchom to polecenie, podając prawidłową wartość ACCOUNT_ID
. Zastąp {DATASOURCE_NAME} skopiowaną wcześniej wartością.
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"
}
Po pomyślnym uruchomieniu tego żądania powinna pojawić się taka odpowiedź:
{
"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"
}
}
Identyfikator nowo utworzonego produktu to en~US~tshirt-123
. Aby pobrać szczegółowe informacje o tym produkcie, możesz użyć metody accounts.products.get
. Możesz też wyświetlić ten produkt w interfejsie Merchant Center. Zobacz Wyświetlanie danych produktów.