Crea la tua prima inserzione nell'API Marketing seguendo questi passaggi.
Devi acquisire familiarità con l'API Graph e la struttura delle campagne pubblicitarie di Facebook. Quando vorrai iniziare a effettuare chiamate, avrai bisogno degli elementi seguenti:
Ora sei pronto per iniziare. Non dimenticare di consultare le best practice generali per l'uso dell'API Marketing.
Inizia il processo creando un nuovo oggetto campagna dalla classe Campaign
. In questa fase, devi impostare un obiettivo per le tue inserzioni, che è l'obiettivo complessivo della tua campagna. Inizialmente è consigliabile creare una campagna PAUSED
, in modo che i test non vengano addebitati.
curl -X POST \
-F 'name="My campaign"' \
-F 'objective="OUTCOME_TRAFFIC"' \
-F 'status="PAUSED"' \
-F 'special_ad_categories=[]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/campaigns
Se l'azione viene eseguita correttamente, viene restituito un ID per la campagna pubblicitaria appena creata. Ricorda di salvare questo ID. Puoi inoltre verificare che la tua campagna sia stata creata in Gestione inserzioni.
Prima di passare alla creazione dei gruppi di inserzioni, devi definire il pubblico di destinazione. Nel prossimo passaggio, crei un gruppo di inserzioni e specifichi gli attributi del tuo pubblico.
Hai molte opzioni di targetizzazione. In questo esempio, usiamo la ricerca della targetizzazione per individuare valori predefiniti che possono essere utilizzati per configurare un pubblico.
In primo luogo, diamo un'occhiata ai Paesi disponibili includendo la parola "united":
curl -G \ -d 'location_types=["country"]' \ -d 'type=adgeolocation' \ -d 'q=united' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search Open In Graph API ExplorerOpen In Postman
Quindi, possiamo cercare gli interessi includendo la parola "movie":
curl -G \ -d 'type=adinterest' \ -d 'q=movie' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
Sulla base dei valori restituiti dalle chiamate precedenti, sappiamo che possiamo creare un pubblico di persone negli Stati Uniti interessate ai film. La specifica di targetizzazione si presenta così:
targeting={ "geo_locations": {"countries":["US"]}, "interests": [{id: 6003139266461, 'name': 'Movies'}] }
Un gruppo di inserzioni condivide il budget giornaliero o totale, la programmazione, la fatturazione, l'ottimizzazione e i dati di targetizzazione. In questo passaggio, devi creare un nuovo oggetto dalla classe AdSet
e specificare:
start_time
e end_time
.optimization_goal
.billing_event
.bid_amount
.Per creare il tuo gruppo di inserzioni, hai bisogno anche dell'ID della campagna pubblicitaria salvato nel Passaggio 1:
curl -X POST \
-F 'name="My Reach Ad Set"' \
-F 'optimization_goal="REACH"' \
-F 'billing_event="IMPRESSIONS"' \
-F 'bid_amount=2' \
-F 'daily_budget=1000' \
-F 'campaign_id="<AD_CAMPAIGN_ID>"' \
-F 'targeting={
"geo_locations": {
"countries": [
"US"
]
},
"facebook_positions": [
"feed"
]
}' \
-F 'status="PAUSED"' \
-F 'promoted_object={
"page_id": "<PAGE_ID>"
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/adsets
Ti consigliamo di creare un gruppo di inserzioni con lo stato PAUSED
per evitare addebiti durante il test.
In questo passaggio, userai l'oggetto AdCreative
per fornire gli elementi visivi della tua inserzione. Le informazioni che devi fornire dipendono dall'obiettivo, ma gli attributi comuni sono:
In base al tuo obiettivo, potresti dover fornire campi avanzati. Ad esempio, le inserzioni per un'app per iOS richiedono un URL dell'App Store.
Puoi definire la creatività come parte di un gruppo di inserzioni o standalone. In entrambi i casi, archiviamo la creatività dell'inserzione nella libreria delle creatività del tuo account pubblicitario per utilizzarla nelle inserzioni.
Questo esempio mostra come fornire un'immagine e creare l'oggetto AdCreative
.
Innanzitutto, crea un oggetto AdImage
da un file immagine:
curl \ -F 'filename=@<IMAGE_PATH>' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adimages
Successivamente, usa l'hash dell'immagine per creare l'AdCreative
:
curl -X POST \ -F 'name="Sample Creative"' \ -F 'object_story_spec={ "page_id": "<PAGE_ID>", "link_data": { "image_hash": "<IMAGE_HASH>", "link": "https://facebook.com/<PAGE_ID>", "message": "try it out" } }' \ -F 'degrees_of_freedom_spec={ "creative_features_spec": { "standard_enhancements": { "enroll_status": "OPT_IN" } } }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/act_<AD_ACCOUNT_ID>/adcreatives Open In Graph API ExplorerOpen In Postman
Verifica il caricamento dell'immagine aprendo la tua Libreria multimediale in Gestione inserzioni.
A questo punto, l'AdCreative
con il tuo link non è ancora visibile in Gestione inserzioni. Visualizzerai questi dati una volta prenotata la tua inserzione. Puoi eseguire il debug delle creatività dell'inserzione con il Tool di esplorazione per l'API Graph e specificare i campi che desideri leggere:
GET /{my-creative-id} HTTP/1.1
Host: graph.facebook.com/?fields=object_story_spec
Infine, crea il tuo oggetto Inserzione per collegarvi AdCreative
e AdSet
. Imposta lo status
dell'Ad
su paused
per non inviare l'ordine istantaneamente.
curl -X POST \
-F 'name="My Ad"' \
-F 'adset_id="<AD_SET_ID>"' \
-F 'creative={
"creative_id": "<CREATIVE_ID>"
}' \
-F 'status="PAUSED"' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v21.0/act_<AD_ACCOUNT_ID>/ads
Verifica l'esistenza della tua inserzione in Gestione inserzioni. Clicca sulla campagna appena creata, quindi sul gruppo di inserzioni e sull'inserzione.
Quando desideri prenotare le inserzioni con l'API, imposta lo stato su active
. L'inserzione viene prima sottoposta al processo di analisi e presenta lo stato PENDING_REVIEW
. Al termine dell'analisi, lo stato torna su ACTIVE
.
In alternativa, puoi copiare un'inserzione, una risorsa o una campagna esistente. Ciò ti aiuta a duplicare velocemente una campagna, al fine di modificarne le configurazioni o creare gruppi di test per ricavare dati sulle prestazioni. Per maggiori dettagli, consulta: