Ce guide explique comment créer et publier des publicités clic vers Instagram à l’aide de l’API Marketing.
Les publicités clic vers Instagram Direct redirigent automatiquement les internautes qui cliquent sur vos publicités vers des conversations avec votre entreprise sur Instagram. Utilisez ces publicités pour toucher les internautes à grande échelle et leur offrir un service personnalisé de qualité.
Les publicités clic vers Instagram prennent en charge les publicités avec une image, une vidéo, un carrousel ou un diaporama. Vous pouvez également inclure des invites d’appel dans votre publicité.
Si vous souhaitez créer des publicités qui redirigent les internautes vers des discussions Messenger ou WhatsApp, consultez les procédures relatives aux Publicités clic vers Messenger ou Publicités clic vers WhatsApp. Vous pouvez également créer des publicités qui choisissent la destination la plus pertinente pour l’internaute. Pour plus d’informations, consultez la page relative aux Publicités qui renvoient à la multi-destination.
Ce document explique comment configurer votre intégration pour les publicités clic vers Instagram. Vous devez :
Ce guide considère que vous disposez des éléments suivants :
Pour réussir les appels aux points de terminaison mentionnés dans ce guide, vous aurez besoin des éléments suivants :
ads_management
pages_manage_ads
pages_read_engagement
pages_show_list
Commencez par créer votre campagne publicitaire. Pour ce faire, envoyez une requête POST
au point de terminaison /act_<AD_ACCOUNT_ID>/campaigns
où <AD_ACCOUNT_ID>
est l’ID de votre compte publicitaire Meta. Votre requête doit inclure :
Nom | Description |
---|---|
chaîne | Obligatoire. |
énumération | Obligatoire. |
liste<Object> | Obligatoire. |
énumération | Facultatif. |
curl -X POST \
-F 'name=Click to Instagram Campaign' \
-F 'objective=OUTCOME_ENGAGEMENT' \
-F 'status=ACTIVE' \
-F 'special_ad_categories=[]' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/campaigns
Si la requête aboutit, votre application reçoit une réponse JSON contenant l’ID de la campagne que vous venez de créer.
{ "id": "<AD_CAMPAIGN_ID>" }
Vous pouvez mettre à jour une campagne en envoyant une requête POST
à /<AD_CAMPAIGN_ID>
.
Pour vérifier que vous avez bien créé une campagne clic vers Instagram, vous pouvez envoyer une requête GET
à /<AD_CAMPAIGN_ID>
. Consultez la section Campagne publicitaire, Référence pour obtenir la liste complète des paramètres disponibles.
curl -X GET -G \
-d 'fields=name,status,objective' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/<AD_CAMPAIGN_ID>
{ "name": "Click to Instagram Campaign", "status": "ACTIVE", "objective": "OUTCOME_ENGAGEMENT", "id": "<AD_CAMPAIGN_ID>" }
Une fois que vous disposez d’une campagne publicitaire, créez votre ensemble de publicités. Pour créer un ensemble de publicités, envoyez une requête POST
au point de terminaison /act_<AD_ACCOUNT_ID>/adsets
où <AD_ACCOUNT_ID>
est l’ID de votre compte publicitaire Meta. Votre requête doit inclure :
Nom | Description |
---|---|
int32 non signé | Obligatoire si bid_strategy est défini sur |
énumération | Facultatif. |
énumération | Obligatoire. |
chaîne numérique ou nombre entier | Obligatoire. |
int64 | Obligatoire si |
chaîne | Obligatoire. À définir sur |
date et heure | Obligatoire lorsque |
int64 | Obligatoire si |
chaîne | Obligatoire. |
énumération | Obligatoire.
|
| Obligatoire.
Consultez la section Ensemble de publicités, objet promu pour plus d’informations. |
date et heure | Facultatif. |
énumération | Facultatif. |
objet de ciblage | Obligatoire. |
date et heure | Facultatif. |
date et heure | Obligatoire lorsque |
Consultez la section Référence sur le compte publicitaire d’un ensemble de publicités pour obtenir la liste complète des paramètres disponibles.
curl -X POST \ -F 'access_token=<ACCESS_TOKEN>' \ -F 'bid_strategy=LOWEST_COST_WITHOUT_CAP' \ -F 'billing_event=IMPRESSIONS' \ -F 'campaign_id=<AD_CAMPAIGN_ID>' \ -F 'daily_budget=<DAILY_BUDGET>' \ -F 'destination_type=INSTAGRAM_DIRECT' \ -F 'name=Click to Instagram Ad Set' \ -F 'optimization_goal=CONVERSATIONS' \ -F 'promoted_object={ "page_id": "<PAGE_ID>" }' \ -F 'status=ACTIVE' \ -F 'start_time=<START_TIME>' \ -F 'targeting={ "geo_locations": { "countries":["US","CA"] }, "device_platforms": ["mobile", "desktop"] }' \ https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/adsets
{ "id": "<AD_SET_ID>" }
Vous pouvez mettre à jour un ensemble de publicités en envoyant une requête POST
à /<AD_SET_ID>
.
Pour vérifier que vous avez bien créé un ensemble de publicités clic vers Instagram, vous pouvez envoyer une requête GET
à /<AD_SET_ID>
. Consultez la section Ensemble de publicités, Référence pour obtenir la liste complète des paramètres disponibles.
curl -X GET -G \
-d 'fields=name,destination_type,optimization_goal,bid_strategy,status' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/<AD_SET_ID>
{ "name": "Click to Instagram Ad Set", "destination_type": "INSTAGRAM_DIRECT", "optimization_goal": "CONVERSATIONS", "bid_strategy": "LOWEST_COST_WITHOUT_CAP", "status": "ACTIVE", "id": "<AD_SET_ID>" }
Le contenu publicitaire vous permet d’ajouter des éléments à vos publicités. Pour créer un contenu publicitaire, envoyez une requête POST
au point de terminaison /act_<AD_ACCOUNT_ID>/adcreatives
où <AD_ACCOUNT_ID>
est l’ID de votre compte publicitaire Meta. Votre requête doit inclure :
Nom | Description |
---|---|
chaîne | Obligatoire. |
| Obligatoire. Obligatoire :
Facultatif :
|
| Facultatif. |
Consultez la section Référence sur les contenus publicitaires pour obtenir la liste complète des paramètres disponibles.
Si l’erreur « Le contenu publicitaire doit fournir la valeur enroll_status pour les améliorations standard » apparaît, reportez-vous à l’article Améliorations standard pour le contenu publicitaire Advantage+ et corrigez-la.
Par défaut, le message visible par les internautes sera « Bonjour ! Puis-je en savoir plus à ce sujet ? ». Vous pouvez créer des expériences d’utilisation plus adaptées pour vos publicités clic vers Instagram en personnalisant le message d’accueil de vos publicités dans le champ page_welcome_message
sous object_story_spec
.
Ajout de textes de prise de contact avec réponse automatique facultative. Vous pouvez interpoler les chaînes {{user_first_name}}
, {{user_last_name}}
, {{user_full_name}}
et {{page_name}}
dans le message de bienvenue et la réponse automatique. Par exemple, « Bonjour {{user_first_name}}. Bienvenue sur {{page_name}} ! »
"page_welcome_message": { "type": "VISUAL_EDITOR", "version": 2, "landing_screen_type": "welcome_message", "media_type": "text", "text_format": { "customer_action_type": "ice_breakers", "message": { "text": "<GREETING_MESSAGE>", "ice_breakers": [ { "title": "<ICEBREAKER>", "response": "<AUTO_RESPONSE>" }, { "title": "<ICEBREAKER>", "response": "<AUTO_RESPONSE>" }, { "title": "<ICEBREAKER>", "response": "<AUTO_RESPONSE>" } ] } } }
Consultez la section Publicité, Image pour plus d’informations.
curl -X POST \
-F 'name=Sample ad creative' \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"instagram_actor_id": "<INSTAGRAM_ACCOUNT_ID>",
"link_data": {
"message": "<AD_PRIMARY_TEXT>",
"image_hash": "<IMAGE_HASH>"
"page_welcome_message": "<PAGE_WELCOME_MESSAGE>",
"call_to_action": {
"type": "INSTAGRAM_MESSAGE",
"value": {
"app_destination": "INSTAGRAM_DIRECT"
}
}
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/adcreatives
Consultez la section Publicités vidéo et carrousel pour plus d’informations.
curl -X POST \
-F 'name=Sample ad creative' \
-F 'object_story_spec={
"message": "<AD_PRIMARY_TEXT>",
"page_id": "<PAGE_ID>",
"instagram_actor_id": "<INSTAGRAM_ACCOUNT_ID>",
"video_data": {
"video_id": "<VIDEO_ID>",
"image_url": "<THUMBNAIL_URL>"
"page_welcome_message": "<PAGE_WELCOME_MESSAGE>",
"call_to_action": {
"type": "INSTAGRAM_MESSAGE",
"value": {
"app_destination": "INSTAGRAM_DIRECT"
}
}
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/adcreatives
curl -X POST \ -F 'name=Sample ad creative' \ -F 'object_story_spec={ "page_id": "<PAGE_ID>", "instagram_actor_id": "<INSTAGRAM_ACCOUNT_ID>", "link_data": { "message": "<AD_PRIMARY_TEXT>", "image_hash": "<IMAGE_HASH>" "call_to_action": { "type": "INSTAGRAM_MESSAGE", "value": { "app_destination": "INSTAGRAM_DIRECT" } } } }' \ -F 'asset_feed_spec={ "additional_data": { "partner_app_welcome_message_flow_id": "<FLOW_ID>", } }' \ -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v19.0/act_<AD_ACCOUNT_ID>/adcreatives
Pour plus d’informations sur les flux d’applications de messagerie, reportez-vous à la section sur les flux de messages de bienvenue dans la documentation de la plateforme Messenger.
Consultez la section Publicités vidéo et carrousel pour plus d’informations.
curl -X POST \
-F 'name=Sample ad creative' \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"instagram_actor_id": "<INSTAGRAM_ACCOUNT_ID>",
"link_data": {
"message": "<AD_PRIMARY_TEXT>",
"page_welcome_message": "<PAGE_WELCOME_MESSAGE>",
"call_to_action": {
"type": "INSTAGRAM_MESSAGE",
"value": {
"app_destination": "INSTAGRAM_DIRECT"
}
},
"child_attachments": [
{
"image_hash": "<IMAGE_HASH>",
"call_to_action": {
"type": "INSTAGRAM_MESSAGE",
"value": {
"app_destination": "INSTAGRAM_DIRECT"
}
},
"name": "<AD_HEADLINE>"
},
{
"video_id": "<VIDEO_ID>",
"picture": "<THUMBNAIL_URL>",
"call_to_action": {
"type": "INSTAGRAM_MESSAGE",
"value": {
"app_destination": "INSTAGRAM_DIRECT"
}
},
"name": "<AD_HEADLINE>"
}
],
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/adcreatives
Si la requête aboutit, votre application reçoit une réponse JSON contenant l’ID du contenu publicitaire que vous venez de créer.
{ "id": "<AD_CREATIVE_ID>" }
Consultez la section Utiliser des publications comme publicités Instagram pour plus d’informations.
curl -X POST \
-F 'name=Sample ad creative from Instagram post' \
-F 'object_id=<PAGE_ID>' \
-F 'instagram_user_id=<INSTAGRAM_USER_ID>' \
-F 'source_instagram_media_id=<INSTAGRAM_POST_ID>' \
-F 'call_to_action={
"type": "INSTAGRAM_MESSAGE",
"value": {
"link": "https://www.instagram.com"
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/adcreatives
curl -X POST \
-F 'name=Sample ad creative from Instagram image' \
-F 'object_story_spec={
"page_id": "<PAGE_ID>",
"instagram_actor_id": "<INSTAGRAM_ACTOR_ID>",
"link_data": {
"message": "<AD_PRIMARY_TEXT>",
"picture": "<IMAGE_URL>"
"page_welcome_message": "<PAGE_WELCOME_MESSAGE>",
"call_to_action": {
"type": "INSTAGRAM_MESSAGE",
"value": {
"app_destination": "INSTAGRAM_DIRECT"
}
}
}
}' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/adcreatives
Consultez la section Utiliser des publications comme publicités Instagram : Publications Facebook pour plus d’informations.
curl -i -X POST \
"https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT>/adcreatives
?object_story_id=<postOwnerID_postID>
&instagram_actor_id=<IG_USER_ID>
&call_to_action="{'type':MESSAGE_PAGE,'value':{'app_destination':'MESSENGER'}}"
&access_token=<ACCESS_TOKEN>"
object_story_id
est l’ID de la publication au format postOwnerID_postID
et instagram_actor_id
est l’ID du compte Instagram connecté à une Page ou du compte Instagram associé à une Page. Pour plus d’informations, voir Configurer les comptes Instagram.
Vous pouvez mettre à jour un contenu publicitaire en envoyant une requête POST
à /<AD_CREATIVE_ID>
.
Pour vérifier que vous avez bien créé un contenu publicitaire clic vers Instagram, vous pouvez envoyer une requête GET
à /<AD_CREATIVE_ID>
. Consultez la section Contenu publicitaire pour obtenir la liste complète des paramètres disponibles.
curl -X GET -G \
-d 'fields=name,object_story_spec{link_data{call_to_action,page_welcome_message}}' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/<AD_CREATIVE_ID>
{ "name": "Sample ad creative", "object_story_spec": { "link_data": { "call_to_action": { "type": "INSTAGRAM_MESSAGE", "value": { "app_destination": "INSTAGRAM_DIRECT" } }, "page_welcome_message": { "type": "VISUAL_EDITOR", "version": 2, "landing_screen_type": "welcome_message", "media_type": "text", "text_format": { "customer_action_type": "ice_breakers", "message": { "text": "Sample greeting message", "ice_breakers": [ { "title": "Sample icebreaker 1" }, { "title": "Sample icebreaker 2" }, { "title": "Sample icebreaker 3" } ] } } } } }, "id": "<AD_CREATIVE_ID>" }
Utilisez cette API pour obtenir les comptes Instagram connectés contenant l’ID de Page associé à un compte Instagram (IABP, Instagram Account Backed Page).
curl -X GET \
-F 'fields="iabp_id"' \
-F 'business_id=<BUSINESS_ID>' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/connected_instagram_accounts_with_iabp
Ensuite, lorsque vous utilisez une publication comme publicité, vous pouvez définir object_id
sur la valeur de l’ID IABP.
curl -i -X POST \
"https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT>/adcreatives
?object_id=<IABP_ID> // iabp_id instead of page_id
&instagram_user_id=<IG_USER_ID>
&source_instagram_media_id=<IG_ORGANIC_MEDIA_ID>
&access_token=<API_ACCESS_TOKEN>"
Les publicités vous permettent d’associer des informations de contenus publicitaires à vos ensembles de publicités. Pour créer une publicité, envoyez une requête POST
au point de terminaison /act_<AD_ACCOUNT_ID>/ads
où <AD_ACCOUNT_ID>
est l’ID de votre compte publicitaire Meta. Votre requête doit inclure :
Nom | Description |
---|---|
chaîne | Obligatoire. |
chaîne numérique ou nombre entier | Obligatoire. |
| Obligatoire. |
énumération | Obligatoire. |
curl -X POST \
-F 'name=Click to Instagram Ad' \
-F 'adset_id=<AD_SET_ID> \
-F 'creative={
"creative_id": "<AD_CREATIVE_ID>"
}' \
-F 'status=PAUSED \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/act_<AD_ACCOUNT_ID>/ads
{ "id": "<AD_ID>" }
Vous pouvez aussi définir un call-to-action lors de la création de votre publicité.
"call_to_action": { "value": {"app_destination":"INSTAGRAM_DIRECT"}, "type": "MESSAGE_PAGE" }
Vous pouvez mettre à jour une publicité en envoyant une requête POST
à /<AD_ID>
.
Pour vérifier que vous avez bien créé une publicité clic vers Instagram, vous pouvez envoyer une requête GET
à /<AD_ID>
. Consultez la section Référence sur les publicités pour obtenir la liste complète des paramètres disponibles.
curl -X GET -G \
-d 'fields=status,adset_id,campaign_id \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/<AD_ID>
{ "status": "PAUSED", "adset_id": "<AD_SET_ID>", "campaign_id": "<AD_CAMPAIGN_ID>", "id": "<AD_ID>" }
Vérifiez que votre publicité existe bien dans le Gestionnaire de publicités. Lorsque vous êtes prêt·e à publier vos modifications, sélectionnez votre campagne, l’ensemble de publicités correspondant ainsi que la publicité, et cliquez sur le bouton Publier.
Vous pouvez aussi publier votre publicité via l’API en envoyant une requête POST
à /<AD_ID>
avec le paramètre status
défini sur ACTIVE
où <AD_ID>
est la publicité que vous souhaitez publier.
curl -X POST \
-F 'status=ACTIVE' \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/<AD_ID>
{ "success": true }
En attendant la vérification de votre publicité par Meta, le effective_status
passe à PENDING_REVIEW
. Une fois la publicité approuvée, son statut passera automatiquement à ACTIVE
et elle sera diffusée.
curl -X GET -G \
-d 'fields=status,effective_status' \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/v20.0
/<AD_ID>
{ "status": "ACTIVE", "effective_status": "PENDING_REVIEW", "id": "<AD_ID>" }