Notes de validation — 30 avril 2026
Audit contre-validé en lisant le schéma réel des opérations Markifact (meta_ads_*). Deux corrections par rapport à la première version : la création d'ad set est partielle (audiences et géo cities/regions/zips ne sont pas exposées à la création), et les sitelinks demandent vérification du schéma nested.
Campagnes
Créer une campagne
Objectif, buying type, bid strategy, budget (daily/lifetime), spend cap, dates, statut, special ad categories.
Dupliquer une campagne
Copie complète avec ad sets et annonces. Option de renommage.
Renommer / changer le statut
Active, pause, suppression. Renommage direct.
Modifier le budget et la bid strategy
Daily, lifetime, spend cap. Stratégies : highest volume, cost cap, bid cap, min ROAS.
Advantage+ Shopping Campaign (ASC)
Ce type de campagne spécifique n'est pas supporté. Impossible à créer via Markifact.
Reach & Frequency avancé
Le buying type RESERVED existe, mais sans les options de fréquence cible, reach estimé ou booking.
Attribution settings à la création
La fenêtre d'attribution (7d click, 1d view, etc.) n'est pas configurable lors de la création d'une campagne.
Ad Sets
Créer un ad set (paramètres de base)
Budget, placements, optimization goal, pixel, product set, bid, dates et pays cibles sont supportés à la création.
Manquant à la création : audiences (custom, lookalike, interests), géo plus fine que le pays (cities, regions, zips), langues. Tout cela passe par les opérations
update_adset_* après création.Modifier budget, bid, dates, placements, géo, langue, audiences
Toutes ces modifications sont disponibles après création via des opérations dédiées (update_adset_budget, update_adset_locations, update_adset_audiences, etc.).
Dupliquer un ad set
Fonctionne dans la plupart des cas. Échoue avec les audiences Shopify value-based (error 200/1870092) même si les TOS sont acceptés.
Contournement : dupliquer manuellement dans le Ads Manager.
Âge min/max et genre à la création
Non exposés dans meta_ads_create_adset. Toujours 18–65 ans, tous genres par défaut.
Langues (locales) à la création
Non configurable lors de la création. Seulement modifiable après coup via meta_ads_update_adset_language.
Attribution window à la création
Impossible de définir la fenêtre d'attribution (7d click, 1d view…) lors de la création d'un ad set.
Brand safety filters
FACEBOOK_RELAXED, AN_RELAXED et autres niveaux de filtrage de contenu non configurables.
Advantage+ toggles individuels
Les options granulaires (age automation, gender automation, geo automation) ne sont pas configurables. Ni promoted_object_variation.
Frequency cap / Dayparting
Aucun support pour les plafonds de fréquence ni pour la diffusion par tranches horaires.
Formats d'annonces
Image unique
Texte, titre, description, URL, CTA, UTM, display URL, multi-advertiser opt-out. Images différentes par placement (feed vs story) en mode bulk.
Vidéo unique
Vidéo, thumbnail, texte, CTA, UTM. Vidéos différentes par placement en mode bulk.
Flexible / Multi-assets
Jusqu'à 10 médias et 5 variations de texte/titre/description. Meta optimise automatiquement les combinaisons.
Annonce depuis un post existant (FB ou IG)
Boost d'un post Facebook ou média Instagram existant avec UTM. Mode single et bulk.
Sitelinks (image unique & vidéo, bulk)
Jusqu'à 20 sitelinks par annonce avec titre, URL et image optionnelle. Disponible en mode bulk seulement.
À confirmer : pas d'opération dédiée — c'est un paramètre nested dans create_single_image_ad / create_single_video_ad. Schéma à vérifier explicitement avant utilisation.
Carousel fixe (cartes manuelles)
2 à 10 cartes image ou vidéo. URL et CTA par carte supportés.
Manquant : end card configurable, contrôle ordre des cartes, mix image+vidéo non documenté.
Catalog / Dynamic ads
Carousel dynamique et single image depuis product set. Texte, titre, description, CTA, URL supportés.
Manquant : overlays dynamiques, format Collection, static card fiable, contextual multi-ads, asset_feed_spec granulaire par placement.
Collection / Instant Experience
Le format Collection (catalog + instant experience) n'est pas supporté du tout.
Creative enhancements & options avancées
Désactivation des enhancements (global)
disable_creative_enhancements = true/false disponible sur image, vidéo, flexible et catalog ads.
Kill switch global uniquement — impossible de désactiver sélectivement certaines options.
Dynamic overlays (prix barré, badges)
Cercle rouge, formes, couleurs, position, police — les overlays dynamiques sur les catalog ads ne sont pas exposés dans Markifact.
Doit être configuré manuellement dans le Ads Manager.
Enhancements granulaires individuels
Impossible de configurer sélectivement : adapt_to_placement, add_text_overlay, description_automation, dynamic_partner_content, enhance_cta, image_background_gen, image_uncrop, inline_comment, media_type_automation, product_metadata_automation, standard_enhancements_catalog.
Gestion des product sets / catalogues
Impossible de lister, créer ou modifier des product sets via les opérations meta_ads_*. L'ID doit être connu à l'avance.
UTM / URL parameters sur catalog ads
Le champ url_parameters est présent dans le schéma mais son comportement est incohérent — les UTMs n'ont pas été appliqués lors des tests.
À valider cas par cas. Fonctionne correctement sur image/vidéo.
Modifier / remplacer un creative existant
Le workflow get_ad_creative → modify → create_ad_creative → replace_ad_creative fonctionne pour les médias existants (image_hash, video_id).
Limité si le creative requiert de nouveaux uploads médias ou des overlays.
Duplication d'annonce
Copie d'une annonce existante vers un autre ad set avec contrôle des enhancements.
Même limitation que la duplication d'ad set avec audiences Shopify value-based.