Feed Record - Bulk
Definisce un feed che può essere scaricato e caricato in un file bulk.
Consiglio
Per una panoramica su come usare feed ed elementi del feed, vedi le guide tecniche Feed di Personalizzazione annunci, Feed di inventario automatico e Feed di pagine .
Nota
- Aggiorna gli annunci di testo espansi agli annunci di ricerca reattivi entro il 1° febbraio 2023. Dopo questa data, non sarà più possibile creare annunci di testo espansi nuovi o modificare quelli esistenti. Per altre informazioni, vedi Informazioni sugli annunci di ricerca reattivi.
- I feed pianificati continueranno a essere eseguiti e gli annunci di testo espansi esistenti usando i feed di personalizzazione degli annunci continueranno a essere pubblicati. Sarà possibile visualizzare i report sulle prestazioni.
- Potrai comunque sospendere, eseguire o rimuovere i feed di personalizzazione degli annunci esistenti. In caso contrario, i tentativi di creare o modificare gli strumenti di personalizzazione degli annunci esistenti per gli annunci di testo espansi genereranno un
CustomerNotEligibleForAdCustomizersFeed
errore. - Altre informazioni su questa modifica.
Se si creano nuove entità padre e figlio nello stesso file bulk, i record dipendenti devono essere inclusi dopo le dipendenze in base alla gerarchia:
È possibile avere 100 feed per account (questo numero massimo include tutti i tipi di feed) e il numero massimo di elementi di feed (righe) per account è 5 milioni.
È possibile scaricare tutti i record dei feed nell'account includendo il valore DownloadEntity dei feed nella richiesta di servizio DownloadCampaignsByAccountIds o DownloadCampaignsByCampaignIds . Inoltre, la richiesta di download deve includere l'ambito EntityData . Per altre informazioni sul servizio bulk, incluse le procedure consigliate, vedere Download e caricamento in blocco.
L'esempio csv bulk seguente aggiunge un nuovo feed di pagine, un inventario automatico e un feed di personalizzazione degli annunci con un elemento feed per ognuno.
Type,Status,Id,Parent Id,Sub Type,Campaign,Ad Group,Client Id,Modified Time,Start Date,End Date,Device Preference,Keyword,Match Type,Target,Physical Intent,Name,Ad Schedule,Audience Id,Feed Name,Custom Attributes
Format Version,,,,,,,,,,,,,,,,6,,,,
Feed,Active,-20,,PageFeed,,,PageFeedClientIdGoesHere,,,,,,,,,,,,MyPageFeedName,"[{""name"":""Page Url"",""feedAttributeType"":""Url"",""isPartOfKey"":true},{""name"":""Custom Label"",""feedAttributeType"":""StringList""},{""name"":""Ad Title"",""feedAttributeType"":""String""}]"
Feed,Active,-21,,AdCustomizerFeed,,,AdCustomizerFeedClientIdGoesHere,,,,,,,,,,,,MyAdCustomizerFeedName,"[{""name"":""DateTimeName"",""feedAttributeType"":""DateTime""},{""name"":""Int64Name"",""feedAttributeType"":""Int64""},{""name"":""PriceName"",""feedAttributeType"":""Price""},{""name"":""StringName"",""feedAttributeType"":""String"",""isPartOfKey"":true}]"
Feed,Active,123456789,DynamicDataAutoListingFeedNew,CampaignName,AUTO ad group,-21,,DynamicDataAutosListingFeed,,"[{""name"":""Vehicle ID""},{""name"":""Final URL""},{""name"":""Image URL""},{""name"":""Make""},{""name"":""Model""},{""name"":""Price""},{""name"":""Title""},{""name"":""Target campaign""},{""name"":""Target ad group""},{""name"":""Latitude""},{""name"":""Longitude""},{""name"":""Mileage value""},{""name"":""Mileage unit""},{""name"":""Year""},{""name"":""Fuel type""},{""name"":""Transmission""},{""name"":""City""},{""name"":""VIN""},{""name"":""State of vehicle""}]"
Feed Item,Active,123456789,DynamicDataAutoListingFeedNew,CampaignName,AUTO ad group,,-21,,,"{""Vehicle Id"":""2g161290-1d13"",""""Final Url"""":""https:\/\/www.contoso.com\/used-Redmond1"",""Image Urls"":""https:\/\/www.contoso.com\/inventoryphotos\/01.jpg;https:\/\/www.contoso.com\/inventoryphotos\/02.jpg"",""Make"":""Contoso"",""Model"":""SUV"",""Price"":""65495.00 USD"",""Title"":""2020 SUV"",""Target campaign"":""CampaignName"",""Target ad group"":"""",""Latitude"":"""",""Logitude"":"""",""Mileage Value"":""13000"",""Mileage Unit"":""MI"",""Year"":""2020"",""Fuel Type"":"""",""Transmission"":"""",""City"":""Redmond"",""Vin"":""SALLJGML8HA004044"",""State of Vehicle"":""USED"",""Trim"":""HSE""}"
Feed Item,Active,-200,-20,,,,20;200,,2020/06/22 00:00:00,2020/06/30 00:00:00,,,,,,,,,,"{""Page Url"":""https://contoso.com/3001"",""Custom Label"":[""Label_1_3001"",""Label_2_3001""],""Ad Title"":""An ad title""}"
Feed Item,Active,-210,-21,,,,21;210,,2020/06/22 00:00:00,2020/06/30 00:00:00,,value,Broad,,PeopleIn,,(Sunday[09:00-17:00]),,,"{""DateTimeName"":""2020/06/22 00:00:00"",""Int64Name"":237601,""PriceName"":""$601"",""StringName"":""s237601""}"
Se si usano gli SDK di Bing Ads per .NET, Java o Python, è possibile risparmiare tempo usando BulkServiceManager per caricare e scaricare l'oggetto BulkFeed , anziché chiamare direttamente le operazioni del servizio e scrivere codice personalizzato per analizzare ogni campo nel file bulk.
var uploadEntities = new List<BulkEntity>();
// Map properties in the Bulk file to the BulkFeed
var bulkAdCustomizerFeed = new BulkFeed
{
// 'Parent Id' column header in the Bulk file
AccountId = 0,
// 'Custom Attributes' column header in the Bulk file
CustomAttributes = new[]
{
// Each FeedCustomAttributeContract is represented as a JSON list item in the Bulk file.
new FeedCustomAttributeContract
{
FeedAttributeType = "DateTime",
Name = "DateTimeName"
},
new FeedCustomAttributeContract
{
FeedAttributeType = "Int64",
Name = "Int64Name"
},
new FeedCustomAttributeContract
{
FeedAttributeType = "Price",
Name = "PriceName"
},
new FeedCustomAttributeContract
{
FeedAttributeType = "String",
Name = "StringName",
IsPartOfKey = true
}
},
// 'Id' column header in the Bulk file
Id = adCustomizerFeedIdKey,
// 'Feed Name' column header in the Bulk file
Name = "My AdCustomizerFeed " + DateTime.UtcNow,
// 'Sub Type' column header in the Bulk file
SubType = "AdCustomizerFeed",
// 'Client Id' column header in the Bulk file
ClientId = "ClientIdGoesHere",
// 'Status' column header in the Bulk file
Status = Status.Active
};
uploadEntities.Add(bulkAdCustomizerFeed);
// Map properties in the Bulk file to the BulkFeed
var bulkPageFeed = new BulkFeed
{
// 'Parent Id' column header in the Bulk file
AccountId = 0,
// 'Custom Attributes' column header in the Bulk file
CustomAttributes = new []
{
// Each FeedCustomAttributeContract is represented as a JSON list item in the Bulk file.
new FeedCustomAttributeContract
{
FeedAttributeType = "Url",
Name = "Page Url"
},
new FeedCustomAttributeContract
{
FeedAttributeType = "StringList",
Name = "Custom Label"
}
},
// 'Id' column header in the Bulk file
Id = pageFeedIdKey,
// 'Feed Name' column header in the Bulk file
Name = "My PageFeed " + DateTime.UtcNow,
// 'Sub Type' column header in the Bulk file
SubType = "PageFeed",
// 'Client Id' column header in the Bulk file
ClientId = "ClientIdGoesHere",
// 'Status' column header in the Bulk file
Status = Status.Active
};
uploadEntities.Add(bulkPageFeed);
var entityUploadParameters = new EntityUploadParameters
{
Entities = uploadEntities,
ResponseMode = ResponseMode.ErrorsAndResults,
ResultFileDirectory = FileDirectory,
ResultFileName = DownloadFileName,
OverwriteResultFile = true,
};
var uploadResultEntities = (await BulkServiceManager.UploadEntitiesAsync(entityUploadParameters)).ToList();
Per un record feed , i campi dell'attributo seguenti sono disponibili nello schema file bulk.
ID Client
Usato per associare i record nel file di caricamento bulk ai record nel file dei risultati. Il valore di questo campo non viene utilizzato o archiviato dal server; viene semplicemente copiato dal record caricato nel record di risultati corrispondente. Può essere qualsiasi stringa valida fino a 100 di lunghezza.
Aggiungere: Opzionale
Aggiornamento: Opzionale
Elimina: Sola lettura
Attributi personalizzati
Gli attributi sono personalizzati per ogni sottotipo di feed e definiscono le informazioni sui prodotti o i servizi che vuoi inserire negli annunci.
Per il sottotipo AdCustomizerFeed , è possibile includere fino a 100 attributi personalizzati per ogni elemento del feed in cui ogni nome di attributo personalizzato è univoco.
Per il sottotipo DynamicDataAutosListingFeed , è possibile includere fino a 100 attributi personalizzati per ogni elemento del feed in cui ogni nome di attributo personalizzato è univoco.
Per il sottotipo PageFeed , è possibile includere uno o due attributi personalizzati per ogni elemento del feed in cui ogni nome di attributo personalizzato è univoco.
Gli attributi personalizzati sono rappresentati nel file bulk come stringa JSON. Per altri dettagli, vedere feedAttributeType, isPartOfKey e il nome riportato di seguito.
Ecco alcuni attributi personalizzati di esempio che è possibile caricare per un feed di pagine.
Nota
Nel file bulk separato da virgole è necessario racchiudere l'elenco di attributi, ogni chiave di attributo e ogni valore di attributo con un set aggiuntivo di virgolette doppie, ad esempio La stringa JSON precedente verrà scritta come "[{""name":""Page Url"","feedAttributeType"":"Url"","isPartOfKey"":true},{""name"":"Custom Label"","feedAttributeType"":"String""}",{"name":""Ad Title"","feedAttributeType"":"String""}]".
[
{
"name": "Page Url",
"feedAttributeType": "Url",
"isPartOfKey": true
},
{
"name": "Custom Label",
"feedAttributeType": "StringList"
},
{
"name": "Ad Title",
"feedAttributeType": "String"
}
]
Aggiungere: Obbligatorio. Per un personalizzatore di annunci e un feed DynamicDataAutosListing è necessario impostare almeno un attributo con le chiavi name e feedAttributeType . Per un feed di pagina è necessario impostare almeno un attributo con il nome impostato su "URL pagina". Vengono rispettate solo le chiavi name, feedAttributeType e isPartOfKey .
Aggiornamento: Opzionale. Non è possibile rimuovere attributi personalizzati dopo la creazione del feed. È possibile aggiungere nuovi attributi personalizzati caricando solo i nuovi attributi, ad esempio non includere attributi esistenti con i nuovi attributi. Se si includono attributi esistenti con nuovi attributi, verrà restituito un errore. Se si lascia vuoto questo campo o si carica una copia esatta degli attributi esistenti senza alcuna modifica, non verranno apportate modifiche.
Elimina: Sola lettura
feedAttributeType
Tipo di dati di ogni attributo personalizzato. Si definisce il tipo di dati nel record del feed e quindi si impostano i valori nell'elemento del feed. Finché ogni nome di attributo personalizzato è univoco all'interno del feed, è possibile definire più attributi con lo stesso tipo di dati.
Sono disponibili quattro diversi feedAttributeType
tipi di dati che è possibile impostare per i feed di personalizzazione degli annunci:
feedAttributeType | Situazioni di utilizzo | Valori dell'elemento feed accettati |
---|---|---|
Stringa | Nomi di prodotti, categorie di prodotti, descrizioni | Lettere, numeri o simboli |
Int64 | Numero di inventario, numero di colori disponibili | Qualsiasi numero intero |
Prezzo | Costo del prodotto, sconto per la vendita | Qualsiasi numero (inclusi i decimali) e caratteri di valuta validi |
DateTime | Ora di inizio evento, ultimo giorno di vendita | aaaa/mm/gg HH:mm:ss Per impostazione predefinita a mezzanotte all'inizio della giornata, è possibile omettere la parte HH:mm:ss. |
Ad esempio, è possibile definire gli attributi personalizzati di un feed di personalizzazione degli annunci.
[
{
"name": "DateTimeName",
"feedAttributeType": "DateTime"
},
{
"name": "Int64Name",
"feedAttributeType": "Int64"
},
{
"name": "PriceName",
"feedAttributeType": "Price"
},
{
"name": "StringName",
"feedAttributeType": "String",
"isPartOfKey": true
}
]
È quindi possibile eseguire il mapping di ogni nome di feed, ad esempio "DateTimeName", "Int64Name", "PriceName" e "StringName" nel caricamento dell'elemento feed :
{
"DateTimeName": "2020/06/22 00:00:00",
"Int64Name": 237601,
"PriceName": "$601",
"StringName": "s237601"
}
Sono disponibili sei diversi feedAttributeType
tipi di dati che è possibile impostare per i feed DynamicDataAutosListing:
feedAttributeType | Situazioni di utilizzo | Valori dell'elemento feed accettati |
---|---|---|
Stringa | Nome del veicolo, categoria di veicolo, descrizione | Lettere, numeri o simboli |
Int64 | anno del veicolo, motore | Qualsiasi numero intero |
Prezzo | Costo del veicolo, sconto per la vendita | Qualsiasi numero (inclusi i decimali) e caratteri di valuta validi |
DateTime | Ora di inizio evento, ultimo giorno di vendita | aaaa/mm/gg HH:mm:ss Per impostazione predefinita a mezzanotte all'inizio della giornata, è possibile omettere la parte HH:mm:ss. |
Url | Contiene l'URL del sito Web da includere nel feed. | È necessario includere un URL per elemento feed. |
StringList | Etichette che consentono di raggruppare gli URL all'interno del feed. | È possibile includere da una a dieci etichette personalizzate per elemento feed. Ogni etichetta personalizzata è rappresentata come voce di elenco nella notazione JSON. Ad esempio, la parte personalizzata dell'etichetta dell'elemento feed può essere scritta come ""Etichetta personalizzata":[""Label_1_3001"",""Label_2_3001"""] |
Ad esempio, è possibile definire gli attributi personalizzati di un feed DynamicDataAutosListing.
[
{
"name": "DateTimeName",
"feedAttributeType": "DateTime"
},
{
"name": "Int64Name",
"feedAttributeType": "Int64"
},
{
"name": "PriceName",
"feedAttributeType": "Price"
},
{
"name": "StringName",
"feedAttributeType": "String",
"isPartOfKey": true
},
{
"name": "Page Url",
"feedAttributeType": "Url",
"isPartOfKey": true
},
{
"name": "Custom Label",
"feedAttributeType": "StringList"
}
]
È quindi possibile eseguire il mapping di ogni nome di feed, ad esempio "DateTimeName", "Int64Name", "PriceName" e "StringName" nel caricamento dell'elemento feed :
{
"DateTimeName": "2020/06/22 00:00:00",
"Int64Name": 237601,
"PriceName": "$601",
"StringName": "s237601",
"Page Url": "https://contoso.com/3001",
"Custom Label": [
"Label_1_3001",
"Label_2_3001"
],
}
Questi sono i feedAttributeType
tipi di dati che è possibile impostare per i feed di pagine:
feedAttributeType | Situazioni di utilizzo | Valori dell'elemento feed accettati |
---|---|---|
Stringa | Titolo statico visualizzato invece del titolo generato dinamicamente. | Lettere, numeri o simboli fino a 63 caratteri. Puoi includere un titolo per ogni elemento del feed. |
StringList | Etichette che consentono di raggruppare gli URL all'interno del feed. | È possibile includere da una a dieci etichette personalizzate per elemento feed. Ogni etichetta personalizzata è rappresentata come voce di elenco nella notazione JSON. Ad esempio, la parte personalizzata dell'etichetta dell'elemento feed può essere scritta come ""Etichetta personalizzata":[""Label_1_3001"",""Label_2_3001"""] |
Url | Contiene l'URL del sito Web da includere nel feed. | È necessario includere un URL per elemento feed. |
Ad esempio, è possibile definire gli attributi personalizzati del feed di pagine.
Nota
È feedAttributeType
facoltativo per i feed di pagine. Se si imposta feedAttributeType
, deve essere impostato su "Url" per "URL pagina", "StringList" per "Etichetta personalizzata" e "String" per gli attributi denominati "Titolo annuncio".
[
{
"name": "Page Url",
"feedAttributeType": "Url",
"isPartOfKey": true
},
{
"name": "Custom Label",
"feedAttributeType": "StringList"
},
{
"name": "Ad Title",
"feedAttributeType": "String"
}
]
È quindi possibile eseguire il mapping di ogni nome di feed, ad esempio "URL pagina", "Etichetta personalizzata" e "Titolo annuncio" nel caricamento dell'elemento feed :
{
"Page Url": "https://contoso.com/3001",
"Custom Label": [
"Label_1_3001",
"Label_2_3001"
],
"Ad Title": "Find New Customers & Increase Sales!",
}
isPartOfKey
Determina isPartOfKey
se i valori per un attributo personalizzato devono essere univoci in tutti i record dell'elemento feed che vengono rollup nel feed. Se è isPartOfKey
impostato su "true", i valori devono essere univoci e in caso contrario è possibile caricare valori duplicati per lo stesso attributo personalizzato.
Per i feed e gli elementi del feed di ad customizer, una stringa denominata "ID personalizzato" viene sempre considerata come una chiave univoca, ad esempio l'oggetto isPartOfKey
è sempre "true". L'attributo "Id personalizzato" è attualmente l'unico modo per impostare una chiave univoca per i feed di personalizzazione degli annunci tramite l'applicazione Web Microsoft Advertising. Con l'API bulk è più flessibile usare qualsiasi nome di attributo come chiave univoca.
Per i feed di pagine e gli elementi del feed, l'"URL pagina" viene sempre considerato come una chiave univoca, ovvero è isPartOfKey
sempre "true".
Per i feed e gli elementi del feed DynamicDataAutosListing il "VehicleId" viene sempre considerato come una chiave univoca, ad esempio , è isPartOfKey
sempre "true".
Nome
L'attributo name
viene usato per eseguire il mapping di un attributo personalizzato distinto tra il feed e l'elemento feed. In effetti, questo è il modo in cui si garantisce che un elemento di feed specifico venga eseguito il rollup nella stessa "colonna" nel feed. Nell'esempio di personalizzazione degli annunci precedente, i nomi "DateTimeName", "Int64Name", "PriceName" e "StringName" vengono usati sia nel feed che nell'elemento del feed.
Nome feed
Nome del feed.
Il nome deve essere univoco (senza distinzione tra maiuscole e minuscole) tra tutti i feed all'interno dell'account. Il nome può contenere un massimo di 128 caratteri.
Aggiungere: Obbligatorio
Aggiornamento: Opzionale. Se non è impostato alcun valore per l'aggiornamento, questa impostazione non viene modificata.
Elimina: Sola lettura
Id
Identificatore generato dal sistema del feed.
Aggiungere: Opzionale. È necessario lasciare vuoto questo campo o specificare un identificatore negativo. È quindi possibile fare riferimento a un identificatore negativo impostato per il feed nel campo Id dei tipi di record dipendenti, ad esempio Elemento feed. Questa operazione è consigliata se si aggiungono nuovi feed ed elementi di feed nello stesso file bulk. Per altre informazioni, vedere Chiavi di riferimento dello schema file bulk.
Aggiornamento: Sola lettura e Obbligatorio
Elimina: Sola lettura e Obbligatorio
Ora modifica
Data e ora dell'ultimo aggiornamento dell'entità. Il valore è espresso nell'ora UTC (Coordinated Universal Time).
Nota
Il valore di data e ora riflette la data e l'ora nel server, non nel client. Per informazioni sul formato della data e dell'ora, vedere la voce dateTime in Tipi di dati XML primitivi.
Aggiungere: Sola lettura
Aggiornamento: Sola lettura
Elimina: Sola lettura
Parent Id
Identificatore generato dal sistema dell'account che contiene il feed.
Questo campo bulk esegue il mapping al campo ID del record account .
Aggiungere: Sola lettura
Aggiornamento: Sola lettura
Elimina: Sola lettura
Stato
Stato del feed.
I valori possibili sono Attivo o Eliminato.
Aggiungere: Opzionale. Il valore predefinito è Attivo.
Aggiornamento: Opzionale. Se non è impostato alcun valore per l'aggiornamento, questa impostazione non viene modificata.
Elimina: Obbligatorio. Lo stato deve essere impostato su Eliminato.
Sottotipo
Il sottotipo di feed è incluso nel file di download bulk per la leggibilità.
I valori possibili sono i seguenti:
- PageFeed
- AdCustomizerFeed
- DynamicDataToursAndActivitiesFeed
- DynamicDataCreditCardsFeed
- DynamicDataCruisesFeed
- DynamicDataHealthInsuranceFeed
- DynamicDataProfessionalServiceFeed
- DynamicDataMortgageLendersFeed
- DynamicDataEventsFeed
- DynamicDataHotelsAndVacationRentalsFeed
- DynamicDataCustomFeed
- DynamicDataAutosListingFeed
I nuovi valori potrebbero essere supportati in futuro, quindi non è necessario assumere una dipendenza da un set fisso di valori.
Aggiungere: Sola lettura
Aggiornamento: Sola lettura
Elimina: Sola lettura