La products
offre una grande flessibilità e un controllo su più
oltre 60 attributi del prodotto.Esistono diversi campi obbligatori,
e devono essere inclusi per poter essere approvati per la visualizzazione su Google Shopping.
Esistono diversi campi facoltativi che possono diventare obbligatori in base
come località, tipo di prodotto, varianti di prodotto e prodotto
bundle. Per ulteriori dettagli sugli oltre 60 parametri facoltativi che possono essere
per i prodotti, consulta la sezione Dati di prodotto
Specifiche.
La risorsa products
consente di utilizzare insert
, get
, update
e delete
una
prodotto alla volta e list
tutti i prodotti presenti nel database di Merchant Center.
La
productstatuses
è una risorsa che può essere utilizzata per controllare lo stato di approvazione o disapprovazione di un
prodotto per una destinazione. Fai riferimento allo stato dei prodotti
per ulteriori dettagli su quali
prodotti potrebbero presentare problemi di qualità dei dati e quali potrebbero essere questi problemi.
Negli esempi relativi alle API, utilizziamo tre prodotti: due t-shirt Google e un
Tetto di Google. Utilizziamo un insieme minimo di dati di prodotto mostrati nella tabella seguente per
effettua products
chiamate alle risorse per inserire, ottenere, aggiornare, elencare ed eliminare
singoli prodotti e batch di prodotti.
Ti consigliamo di configurare i dati fiscali e di spedizione nell'account anziché a livello di prodotto.
Per i subaccount multi-venditore di
Marketplace, tutti i prodotti devono
includi il campo external_seller_id
. Consulta
ID prodotto per ulteriori dettagli.
id | online:en:US:1111111111 | online:en:US:2222222222 | online:en:US:3333333333 |
---|---|---|---|
offerId | 1111111111 | 2222222222 | 3333333333 |
titolo | La T-shirt nera di Google | Maglietta Google verde | Cappello in twill di Google |
descrizione | La T-shirt nera di Google | T-shirt Google in cotone 100% | Cappello classico Google |
ID gruppo di articoli | google_tee | google_tee | |
link | http://my.site.com/blacktee | http://my.site.com/greentee | http://my.site.com/blackhat |
condizione | Nuovo | Novità | Nuovo |
prezzo | 21.99 EUR | 21.99 EUR | 10.99 EUR |
disponibilità | Disponibile | Disponibile | Disponibile |
imageLink | https://shop.example.com/ |
https://shop.example.com/ |
https://shop.example.com/ |
ean | 9504000059422 | 9504000059446 | 9504000059452 |
mpn | 00638NIC | 00638 | 00638ABC |
brand | |||
Categoria di prodotto Google | Abbigliamento e Accessori > Abbigliamento | Abbigliamento e Accessori > Abbigliamento | Abbigliamento e Accessori > Accessori di abbigliamento > Cappelli |
colore | nero | verde | nero |
dimensioni | L | M | M |
age_group | contenuti erotici | contenuti erotici | contenuti erotici |
genere | maschio | maschio | unisex |
included_destination | Shopping Actions, annunci Shopping | Shopping Actions, annunci Shopping | Shopping Actions |
products.insert
Per inserire un singolo prodotto, utilizza il seguente URL di richiesta, specificando
l'ID commerciante e un corpo JSON di esempio. Un inserto crea il nuovo prodotto. Valori Se
esistono per gli attributi channel
, contentLanguage
, offerId
e
feedLabel
per un determinato prodotto, questo metodo aggiorna la voce e sostituisce
tutti i dati delle chiamate API precedenti per il prodotto in questione.
I prodotti esclusi da tutte le destinazioni per più di 7 giorni vengono eliminati automaticamente.
Nell'esempio mostrato viene inserita una nuova "T-shirt Google nera" ai prodotti disponibili.
POST https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products
Esempio di chiamata del corpo della richiesta per products.insert
:
{
"kind": "content#product",
"offerId": "1111111111",
"title": "Google Tee Black",
"description": "The Black Google Tee is available in unisex sizing.",
"link": "http://my.site.com/blacktee/",
"imageLink": "https://shop.example.com/.../images/GGOEGXXX1100.jpg",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"ageGroup": "adult",
"availability": "in stock",
"availabilityDate": "2019-01-25T13:00:00-08:00",
"brand": "Google",
"color": "black",
"condition": "new",
"gender": "male",
"googleProductCategory": "1604",
"gtin": "608802531656",
"itemGroupId": "google_tee",
"mpn": "608802531656",
"price": {
"value": "21.99",
"currency": "USD"
},
"sizes": [
"Large"
]
}
Per un prodotto possono essere impostati anche attributi personalizzati nel corpo JSON. Ad esempio:
possiamo impostare un valore purchase_quantity_limit
per un singolo prodotto al fine di limitare
il numero di articoli che un cliente può ordinare:
"customAttributes": [
{
"name": "purchase_quantity_limit",
"value": "4"
}
]
Tieni presente che l'attributo personalizzato purchase_quantity_limit
imposta un limite di acquisto
per ordine cliente alla definizione del prodotto ed è supportato anche dai feed. La
è attualmente in versione beta finché non sarà completamente supportato dall'API. Qualsiasi
un altro attributo personalizzato può essere aggiunto da un commerciante, ma non comporta
alcuna elaborazione specifica da parte delle API.
Una chiamata riuscita restituisce un codice HTTP 200
e un corpo della risposta contenente
la risorsa di prodotto inserita con solo id
, offerId
, contentLanguage
,
feedLabel
e channel
compilati:
{
"kind": "content#product",
"id": "online:en:US:1111111111",
"offerId": "1111111111",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online"
}
products.get
Per ottenere informazioni su un prodotto specifico nel database di Merchant Center, utilizza
products.get
. Potrebbero essere necessari alcuni minuti prima che un prodotto appena inserito venga
disponibili tramite questa chiamata.
Utilizza il seguente URL e i parametri della richiesta HTTP, il tuo ID commerciante e il ID prodotto (formato ID REST) per il prodotto che vuoi ricevere:
GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId}
Una chiamata riuscita restituisce un HTTP 200
e la "risorsa di prodotto" nel
corpo della risposta. Di seguito sono riportati alcuni esempi di dati di prodotto recuperati da un prodotto con ID
online:en:US:1111111111
:
{
"kind": "content#product",
"id": "online:en:US:1111111111",
"offerId": "1111111111",
"source": "api",
"title": "Google Tee Black",
"description": "The Black Google Tee is available in unisex sizing.",
"link": "http://my.site.com/blacktee/",
"imageLink": "https://shop.example.com/.../images/GGOEGXXX1100.jpg",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"ageGroup": "adult",
"availability": "in stock",
"availabilityDate": "2019-01-25T13:00:00-08:00",
"brand": "Google",
"color": "black",
"condition": "new",
"gender": "male",
"googleProductCategory": "1604",
"gtin": "608802531656",
"itemGroupId": "google_tee",
"mpn": "608802531656",
"price": {
"value": "21.99",
"currency": "USD"
},
"sizes": [
"Large"
]
}
products.update
Per aggiornare un singolo prodotto, utilizza il seguente URL di richiesta con il metodo PATCH:
specificando l'ID commerciante, l'ID prodotto e un corpo JSON contenente i dati
che desidera aggiornare per il prodotto. A differenza di products.insert
, questo richiede
tutti i campi applicabili da fornire, products.update
richiede solo che tu
specifica i campi che vuoi modificare.
Per aggiungere o modificare un attributo, specifica il campo con il nuovo valore nel file JSON
del testo. L'esempio mostrato aggiornerà title
e description
di un modello esistente
"T-shirt nera Google" con i dati di prodotto forniti nel corpo della richiesta, lasciando
tutti gli altri campi non sono stati toccati.
PATCH https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId}
Esempio di chiamata del corpo della richiesta per products.update
:
{
"title": "Google Tee Black Limited Edition",
"description": "The Limited Edition Tee is available in unisex sizing and features a retail fit."
}
Solo i campi di primo livello possono essere aggiornati tramite una richiesta products.update
.
Se vuoi aggiornare i campi nidificati, devi fornire l'intero oggetto di primo livello.
L'esempio mostrato aggiornerà l'oggetto salePrice
di primo livello, inclusi gli elementi nidificati
di un prodotto esistente, con i dati di prodotto forniti nel
il corpo della richiesta, lasciando invariati tutti gli altri campi.
PATCH https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId}
{
"salePrice": {
"value": "17.99",
"currency": "USD"
}
}
Per selezionare determinati campi da aggiornare senza apportare modifiche agli altri inclusi
Nel corpo della richiesta, puoi specificare un updateMask
. Questa stringa di query
dovrebbe essere un elenco separato da virgole di campi da modificare.
Un updateMask
è utile quando vuoi affermare che solo i campi denominati
verrà aggiornato. Non specificare un updateMask
è l'equivalente di contrassegnare tutti
della richiesta di aggiornamento, come mostrato nell'esempio precedente.
L'esempio mostrato aggiornerà solo description
e availability
di una "T-shirt nera Google" esistente con i rispettivi dati di prodotto forniti in
il corpo della richiesta, lasciando invariati tutti gli altri campi, incluso title
.
PATCH https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId}?updateMask=description,availability
Esempio di chiamata del corpo della richiesta per products.update
:
{
"title": "Google Tee Black",
"description": "This Limited Edition is out of print.",
"availability": "out of stock"
}
Se un campo viene fornito nell'elenco updateMask
, ma non nel corpo della richiesta,
questo campo verrà eliminato dalla risorsa Product
, se esistente.
Nell'esempio mostrato verrà utilizzato updateMask
per rimuovere il valore del campo
salePrice
.
PATCH https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId}?updateMask=salePrice
Il corpo della richiesta di esempio non deve includere il campo salePrice
per
eliminarlo. Puoi anche specificare nessun corpo o un corpo vuoto. Gli altri campi
rimangono invariati a condizione che non vengano visualizzati nel updateMask
.
Per utilizzare updateMask
in una richiesta products.custombatch
, updateMask
deve essere specificato nel corpo della richiesta.
L'esempio mostrato aggiornerà price
e availability
di un modello esistente
"T-shirt nera Google" utilizza products.custombatch
con i dati di prodotto forniti
nella voce batch, lasciando tutti gli altri campi inclusi title
e description
senza modifiche.
POST https://shoppingcontent.googleapis.com/content/v2.1/products/batch
{
"entries": [{
"batchId": 1,
"merchantId": "MERCHANT_ID",
"productId": "online:en:US:1111111111",
"method": "update",
"product": {
"title": "Google Tee Black",
"description": "The Black Google Tee is available in unisex sizing.",
"availability": "in stock",
"price": {
"value": "19.99",
"currency": "USD"
}
},
"updateMask": "availability,price"
}]
}
products.delete
Per eliminare un singolo prodotto, utilizza products.delete
con la richiesta HTTP di esempio
URL, il tuo ID commerciante e l'ID prodotto (in formato ID REST come
online:en:US:1111111111
) per il prodotto che vuoi eliminare:
DELETE https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId}
Una risposta corretta restituisce un HTTP Status 204
senza corpo della risposta.
products.list
products.list
elenca tutti i prodotti di un commerciante in Merchant Center
per configurare un database. Utilizza il seguente URL di richiesta:
GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products
Una chiamata riuscita restituisce i dati HTTP 200
e JSON per i prodotti nel
"risorse" chiave.
Vengono restituiti i tre prodotti di esempio seguenti:
{
"kind": "content#productsListResponse",
"resources": [
{
"kind": "content#product",
"id": "online:en:US:1111111111",
"offerId": "1111111111",
"source": "api",
"title": "Google Tee Black",
"description": "The Black Google Tee is available in unisex sizing.",
"link": "http://my.site.com/blacktee/",
"imageLink": "https://shop.example.com/.../images/GGOEGXXX1100.jpg",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"ageGroup": "adult",
"availability": "in stock",
"availabilityDate": "2019-01-25T13:00:00-08:00",
"brand": "Google",
"color": "black",
"condition": "new",
"gender": "male",
"googleProductCategory": "1604",
"gtin": "608802531656",
"itemGroupId": "google_tee",
"mpn": "608802531656",
"price": {
"value": "21.99",
"currency": "USD"
},
"sizes": [
"Large"
]
},
{
"kind": "content#product",
"id": "online:en:US:2222222222",
"offerId": "2222222222",
"source": "api",
"title": "Google Tee Green",
"description": "100% cotton jersey fabric sets this Google t-shirt above the crowd.
Features the google logo across the chest. Unisex sizing.",
"link": "http://my.site.com/greentee/",
"imageLink": "https://shop.example.com/.../images/GGOEGXXX0906.jpg",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"ageGroup": "adult",
"availability": "in stock",
"availabilityDate": "2019-01-25T13:00:00-08:00",
"brand": "Google",
"color": "green",
"condition": "new",
"gender": "male",
"googleProductCategory": "1604",
"gtin": "608802531649",
"itemGroupId": "google_tee",
"mpn": "608802531649",
"price": {
"value": "21.99",
"currency": "USD"
},
"sizes": [
"Medium"
]
},
{
"kind": "content#product",
"id": "online:en:US:3333333333",
"offerId": "3333333333",
"source": "api",
"title": "Google Twill Cap",
"description": "Classic urban styling distinguishes this Google cap.
Retains its shape, even when not being worn.",
"link": "http://my.site.com/blackhat/",
"imageLink": "https://shop.example.com/.../images/GGOEGHPB071610.jpg",
"contentLanguage": "en",
"targetCountry": "US",
"feedLabel": "US",
"channel": "online",
"ageGroup": "adult",
"availability": "in stock",
"availabilityDate": "2019-01-07T13:00:00-08:00",
"brand": "Google",
"color": "black",
"condition": "new",
"gender": "male",
"googleProductCategory": "173",
"gtin": "689355417246",
"mpn": "689355417246",
"price": {
"value": "10.99",
"currency": "USD"
},
"sizes": [
"Medium"
]
}
]
}