{"id":70563,"date":"2026-05-22T12:04:05","date_gmt":"2026-05-22T12:04:05","guid":{"rendered":"https:\/\/taggrs.io\/quelles-plates-formes-prennent-en-charge-google-tag-manager-cote-serveur\/"},"modified":"2026-05-22T12:35:00","modified_gmt":"2026-05-22T12:35:00","slug":"which-platforms-support-server-side-gtm","status":"publish","type":"post","link":"https:\/\/taggrs.io\/fr\/which-platforms-support-server-side-gtm\/","title":{"rendered":"Quelles plates-formes prennent en charge Google Tag Manager c\u00f4t\u00e9 serveur ?"},"content":{"rendered":"\n<p>Google Tag Manager c\u00f4t\u00e9 serveur (sGTM) prend en charge de nombreuses plateformes publicitaires et analytiques, comme GA4, Google Ads, Meta, TikTok, Pinterest, LinkedIn, Snapchat, Klaviyo et ActiveCampaign. Des couches de donn\u00e9es e-commerce sont disponibles pour les CMS tels que WordPress, Shopify, Lightspeed, Magento, WooCommerce et PrestaShop. Les applications mobiles sur iOS et Android sont \u00e9galement prises en charge.  <\/p>\n\n\n\n<p>L'emplacement de chaque plateforme (conteneur web, conteneur serveur ou les deux) d\u00e9termine <strong>si vos donn\u00e9es de conversion sont exactes<\/strong>.<\/p>\n\n\n\n<p>Cet article explique le pourquoi de chaque d\u00e9cision de placement, ce qui se produit lorsque vous vous trompez et ce que les fournisseurs d'h\u00e9bergement sGTM comme TAGGRS g\u00e8rent au niveau de l'infrastructure que la configuration du conteneur ne peut pas r\u00e9soudre \u00e0 elle seule. Et si vous connaissez d\u00e9j\u00e0 votre (vos) plateforme(s), utilisez le <strong>v\u00e9rificateur interactif<\/strong> ci-dessous pour passer directement aux \u00e9tapes de configuration. <\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"what-is-a-gtm-server-container-and-what-does-it-host\">Qu'est-ce qu'un conteneur de serveur GTM et qu'est-ce qu'il h\u00e9berge ?<\/h2>\n\n\n\n<p>Un conteneur serveur GTM fonctionne sur un serveur h\u00e9berg\u00e9 et ex\u00e9cute les balises de serveur \u00e0 serveur, ind\u00e9pendamment du navigateur du visiteur. Il fonctionne parall\u00e8lement au conteneur web GTM standard en utilisant une architecture \u00e0 deux conteneurs : <\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>conteneur web,<\/strong> qui fonctionne dans le navigateur du visiteur et ex\u00e9cute les balises c\u00f4t\u00e9 client<\/li>\n\n\n\n<li>qui s'ex\u00e9cute sur un serveur h\u00e9berg\u00e9 (tel que TAGGRS) et ex\u00e9cute les balises de serveur \u00e0 <strong>serveur<\/strong>.<\/li>\n<\/ol>\n\n\n\n<p>C'est dans le conteneur du serveur que se fait le v\u00e9ritable travail. Lorsqu'il est configur\u00e9 correctement, il d\u00e9finit des cookies de premi\u00e8re partie qui durent jusqu'\u00e0 plus de 365 jours. Cet aspect est plus important que jamais, car l'ITP de Safari limite \u00e0 7 jours la dur\u00e9e des cookies d\u00e9finis par le navigateur, et Safari repr\u00e9sente environ 17 % de la part de march\u00e9 mondiale des navigateurs au d\u00e9but de l'ann\u00e9e 2026. (source : StatCounter, <a href=\"https:\/\/gs.statcounter.com\/browser-market-share\" target=\"_blank\" rel=\"noopener\">Browser Market Share Worldwide<\/a>)   <\/p>\n\n\n\n<p>En d'autres termes, <strong>pr\u00e8s d'une session sur cinq perd des donn\u00e9es de suivi par d\u00e9faut si vous ne travaillez qu'en mode client.<\/strong><\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/taggrs.io\/fr\/cookie-recovery-ios\/\">Apprenez \u00e0 prolonger la dur\u00e9e de vie des cookies<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>L'<a href=\"https:\/\/taggrs.io\/fr\/gtm-server-side-tagging-hosting\/\">h\u00e9bergement TAGGRS sGTM<\/a> est un fournisseur de Server-side Tracking g\u00e9r\u00e9 qui h\u00e9berge votre conteneur de serveur GTM sur une <a href=\"https:\/\/taggrs.io\/fr\/infrastructure\/\">infrastructure europ\u00e9enne ind\u00e9pendante.<\/a> Il fonctionne avec Google Tag Manager en utilisant deux conteneurs : <\/p>\n\n\n\n<p>L'h\u00e9bergement TAGGRS sGTM fonctionne avec n'importe quelle pile de sites web. La r\u00e8gle est la suivante : s'il fonctionne avec Google Tag Manager, il fonctionne \u00e9galement avec TAGGRS. Ainsi, les CMS avec un support de couche de donn\u00e9es d\u00e9di\u00e9 incluent WordPress, Shopify, Lightspeed, Magento, WooCommerce, et PrestaShop. Les applications mobiles sur iOS et Android sont \u00e9galement prises en charge.   <\/p>\n<\/blockquote>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"where-to-place-the-container\">O\u00f9 placer le conteneur ?<\/h2>\n\n\n\n<p>Chaque plateforme est plac\u00e9e dans l'une des trois configurations suivantes. Il s'agit d'une d\u00e9cision architecturale qui d\u00e9termine si les conversions sont comptabilis\u00e9es correctement, si les cookies survivent \u00e0 l'ITP et si les donn\u00e9es quittent votre infrastructure avant ou apr\u00e8s l'application du consentement. Voici la r\u00e9partition :  <\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Configuration<\/strong><\/td><td><strong>Ce que cela signifie<\/strong><\/td><td><strong>Quand l'utiliser ?<\/strong><\/td><\/tr><tr><td>Conteneur web uniquement<\/td><td>L'\u00e9tiquette s'ex\u00e9cute dans le navigateur. Il n'y a pas de composant serveur. <\/td><td>Non pertinent pour les configurations sGTM.<\/td><\/tr><tr><td>Conteneur de serveur uniquement<\/td><td>Toutes les donn\u00e9es proviennent du serveur. Il n'y a pas de marqueur de navigateur. <\/td><td>Lorsque la plate-forme ne prend pas en charge la d\u00e9duplication, ou lorsque la balise du navigateur n'est pas n\u00e9cessaire.  <br>Remarque : en l'absence d'une configuration GTM c\u00f4t\u00e9 client existante, une configuration uniquement sur serveur n\u00e9cessite une mise en \u0153uvre personnalis\u00e9e du suivi, la collecte d'\u00e9v\u00e9nements au niveau du front-end et la transmission d'\u00e9v\u00e9nements au niveau du back-end devant \u00eatre \u00e9labor\u00e9es et maintenues \u00e0 partir de z\u00e9ro.<\/td><\/tr><tr><td>Les deux conteneurs<\/td><td>La balise du navigateur envoie des donn\u00e9es au conteneur du serveur, qui les transmet \u00e0 la plate-forme. Le conteneur web peut \u00e9galement envoyer des donn\u00e9es au server-side sans rien envoyer directement \u00e0 une plateforme. La d\u00e9duplication n'est n\u00e9cessaire que lorsque le navigateur et le serveur envoient simultan\u00e9ment des donn\u00e9es \u00e0 la m\u00eame plate-forme.  <\/td><td>Lorsque la plateforme b\u00e9n\u00e9ficie \u00e0 la fois des signaux du navigateur et de la fiabilit\u00e9 du serveur.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"which-container-does-your-platform-belong-in\">Dans quel conteneur se trouve votre plate-forme ?<\/h2>\n\n\n\n<p>Vous ne savez pas o\u00f9 placer une plate-forme sp\u00e9cifique ?  <strong>Utilisez le v\u00e9rificateur ci-dessous.<\/strong>  S\u00e9lectionnez une plateforme et obtenez l'emplacement des conteneurs, les exigences en mati\u00e8re de d\u00e9duplication et les \u00e9tapes exactes de la configuration.<\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<!-- TAGGRS Platform Checker - all styles inline, no <style> block -->\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@400;500;600;700&display=swap\" rel=\"stylesheet\">\n\n<div id=\"plc-root\" style=\"font-family:'Poppins',sans-serif;max-width:800px;margin:0 auto;box-sizing:border-box\">\n\n  <div style=\"background:linear-gradient(145deg,#e4f5ee 0%,#ddedf8 55%,#e8f4fb 100%);border-radius:20px;padding:36px 40px 40px;box-sizing:border-box;font-size:14px;line-height:1.5;color:#0f3528\">\n\n    <div style=\"display:flex;align-items:center;gap:7px;margin-bottom:8px\">\n      <span style=\"width:6px;height:6px;border-radius:50%;background:#2a7a5e;display:inline-block;flex-shrink:0\"><\/span>\n      <span style=\"font-size:11px;font-weight:600;letter-spacing:0.09em;text-transform:uppercase;color:#2a7a5e\">Platform checker<\/span>\n    <\/div>\n\n    <h2 id=\"where-does-your-platform-belong\" style=\"font-size:21px;font-weight:700;color:#0f3528;line-height:1.2;margin:0 0 7px 0\">Where does your platform belong?<\/h2>\n    <p style=\"font-size:13px;color:#4d7a6a;line-height:1.6;margin:0 0 26px 0;max-width:540px\">Select a platform to see which container it goes in, why, and how to configure it correctly.<\/p>\n\n    <label style=\"font-size:11.5px;font-weight:600;color:#0f3528;margin-bottom:8px;display:block\" for=\"plc_platform\">Select a platform<\/label>\n    <div style=\"position:relative;margin-bottom:6px\">\n      <select id=\"plc_platform\" onchange=\"plcShow()\" style=\"width:100%;box-sizing:border-box;background:rgba(255,255,255,0.82);border:1.5px solid rgba(255,255,255,0.95);border-radius:11px;font-family:'Poppins',sans-serif;font-size:14px;font-weight:600;color:#0f3528;padding:12px 40px 12px 16px;outline:none;cursor:pointer;appearance:none;-webkit-appearance:none\">\n        <option value=\"\">\u2014 Choose a platform \u2014<\/option>\n        <option value=\"ga4\">Google Analytics 4<\/option>\n        <option value=\"google_ads\">Google Ads<\/option>\n        <option value=\"meta\">Meta \/ Facebook<\/option>\n        <option value=\"tiktok\">TikTok<\/option>\n        <option value=\"pinterest\">Pinterest<\/option>\n        <option value=\"linkedin\">LinkedIn<\/option>\n        <option value=\"snapchat\">Snapchat<\/option>\n        <option value=\"klaviyo\">Klaviyo<\/option>\n        <option value=\"activecampaign\">ActiveCampaign<\/option>\n      <\/select>\n    <\/div>\n\n    <div id=\"plc_result\" style=\"display:none;margin-top:26px\">\n      <div style=\"height:1px;background:rgba(15,53,40,0.1);margin-bottom:22px\"><\/div>\n      <div style=\"display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap\">\n        <span id=\"plc_badge\" style=\"display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:6px 14px;border-radius:99px;letter-spacing:0.03em\"><\/span>\n        <span id=\"plc_placement_label\" style=\"font-size:13px;font-weight:600;color:#0f3528\"><\/span>\n      <\/div>\n      <div id=\"plc_summary\" style=\"background:rgba(255,255,255,0.65);border:1.5px solid rgba(255,255,255,0.9);border-radius:13px;padding:16px 18px;margin-bottom:18px;font-size:13px;color:#2a4a3e;line-height:1.65\"><\/div>\n      <div id=\"plc_dedup\" style=\"display:none;align-items:flex-start;gap:10px;background:rgba(107,191,160,0.15);border:1.5px solid rgba(107,191,160,0.35);border-radius:11px;padding:12px 15px;margin-bottom:18px;font-size:12px;color:#1a5240;line-height:1.6\">\n        <div style=\"flex-shrink:0;margin-top:1px;width:16px;height:16px;background:#2a7a5e;border-radius:50%;display:flex;align-items:center;justify-content:center\">\n          <svg width=\"9\" height=\"9\" viewBox=\"0 0 9 9\" fill=\"none\"><path d=\"M2 4.5l2 2 3-3\" stroke=\"#fff\" stroke-width=\"1.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n        <\/div>\n        <div id=\"plc_dedup_text\"><\/div>\n      <\/div>\n      <div style=\"font-size:11.5px;font-weight:700;color:#0f3528;text-transform:uppercase;letter-spacing:0.08em;margin-bottom:12px\">Configuration steps<\/div>\n      <div id=\"plc_steps\" style=\"display:flex;flex-direction:column;gap:10px;margin-bottom:22px\"><\/div>\n      <a id=\"plc_cta\" href=\"#\" target=\"_blank\" rel=\"noopener\" style=\"display:inline-flex;align-items:center;gap:8px;background:#0f3528;color:#fff;font-family:'Poppins',sans-serif;font-size:14px;font-weight:600;padding:13px 22px;border-radius:11px;text-decoration:none;line-height:1;border:none;cursor:pointer\" onmouseover=\"this.style.background='#1a5240'\" onmouseout=\"this.style.background='#0f3528'\">\n        Switch to the server side\n        <svg width=\"13\" height=\"13\" viewBox=\"0 0 13 13\" fill=\"none\"><path d=\"M2.5 6.5h8M7.5 3.5l3 3-3 3\" stroke=\"#fff\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/><\/svg>\n      <\/a>\n      <button onclick=\"plcReset()\" style=\"background:none;border:none;font-family:'Poppins',sans-serif;font-size:12px;color:#4d7a6a;cursor:pointer;margin-top:14px;padding:0;display:block;text-decoration:underline;text-underline-offset:3px\">Reset<\/button>\n    <\/div>\n\n  <\/div>\n<\/div>\n\n<script>\n(function(){\n  var platforms = {\n    ga4: {\n      badge: 'both', badgeLabel: 'Both containers', badgeBg: '#0f3528',\n      placementLabel: 'Web container + Server container',\n      summary: 'GA4 is the foundation of every server-side setup. The GA4 Config tag runs in the web container and sends data to the server container \u2014 feeding every downstream tag including Google Ads. Without server-side GA4 in place, no other platform in the server container receives data correctly.',\n      dedup: false,\n      steps: [\n        ['Add GA4 Config tag', 'In your <strong>web container<\/strong>, add a GA4 Configuration tag. Set the Measurement ID and point the server container URL to your first-party tagging subdomain (e.g. <em>sst.yourdomain.com<\/em>).'],\n        ['Deploy server container on TAGGRS', 'Connect your GTM server container to TAGGRS. Your tagging subdomain must be a first-party subdomain of the tracked domain.'],\n        ['Add GA4 server tag', 'In your <strong>server container<\/strong>, add the GA4 tag. It will automatically receive events forwarded by the web GA4 Config tag.'],\n        ['Verify data flow', 'Use GTM Preview mode and GA4 DebugView to confirm events are arriving in the server container before going live.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/ga4\/setup-in-gtm'\n    },\n    google_ads: {\n      badge: 'server', badgeLabel: 'Server container only', badgeBg: '#2a7a5e',\n      placementLabel: 'Server container only',\n      summary: 'Google Ads server-side measurement depends entirely on GA4 being configured in both containers first. Once GA4 is set up, all Google Ads tags \u2014 Conversion Tracking and Remarketing \u2014 run exclusively in the server container.',\n      dedup: false,\n      steps: [\n        ['Set up GA4 in both containers first', 'Google Ads has a hard dependency on GA4. Complete the GA4 server-side setup before adding any Google Ads tags.'],\n        ['Add Conversion Linker tag', 'In your <strong>server container<\/strong>, add the Conversion Linker tag. This attaches click data to conversion events \u2014 the most commonly skipped step, and the one that breaks attribution when missing.'],\n        ['Add Google Ads Conversion Tracking tag', 'In your <strong>server container<\/strong>, add the Google Ads Conversion Tracking tag. Configure your Conversion ID and label from your Google Ads account.'],\n        ['Add Google Ads Remarketing tag (optional)', 'If you run remarketing campaigns, add the Google Ads Remarketing tag to the <strong>server container<\/strong>. Same dependency chain as Conversion Tracking.'],\n        ['Test with Tag Assistant', 'Verify the full chain: GA4 Config (web) \u2192 GA4 server tag \u2192 Conversion Linker \u2192 Google Ads tag. Confirm conversions appear in Google Ads \u2192 Measurement \u2192 Conversions.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/google-ads\/conversion-linker'\n    },\n    meta: {\n      badge: 'both', badgeLabel: 'Both containers', badgeBg: '#0f3528',\n      placementLabel: 'Web container + Server container',\n      summary: 'Meta recommends running both the browser pixel and server CAPI simultaneously to maximise match rates and event coverage. Running both increases the chance that each conversion is attributed correctly \u2014 even when the browser signal is blocked or degraded.',\n      dedup: true,\n      dedupText: '<strong>Deduplication required.<\/strong> When both the browser pixel and server CAPI fire for the same event, Meta receives it twice. You must pass a matching <code>event_id<\/code> in both the browser and server events. Meta uses this ID to deduplicate and count the conversion once.',\n      steps: [\n        ['Keep Meta Pixel in the web container', 'Your existing Meta Pixel tag stays in the <strong>web container<\/strong>. Do not remove it \u2014 the browser signal improves match rates.'],\n        ['Add Meta CAPI tag in the server container', 'In your <strong>server container<\/strong>, add the Meta Conversions API tag. Configure your Pixel ID and Meta access token.'],\n        ['Implement event_id deduplication', 'Generate a unique <code>event_id<\/code> for each event (e.g. a UUID or timestamp-based string). Pass the same <code>event_id<\/code> in both the browser pixel event and the server CAPI event. Meta matches them and counts once.'],\n        ['Test in Meta Events Manager', 'Go to Meta Events Manager \u2192 Test Events. Confirm events arrive from both browser and server, and that duplicate events are being deduplicated correctly.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/facebook\/meta-pixel'\n    },\n    tiktok: {\n      badge: 'server', badgeLabel: 'Server container only', badgeBg: '#2a7a5e',\n      placementLabel: 'Server container only',\n      summary: \"Most guides \u2014 including AI overviews \u2014 list TikTok as a 'both containers' platform. This is incorrect. TikTok's pixel does not support event deduplication at the level required to run browser and server tracking simultaneously. Running both inflates conversion counts. Configure server-side only.\",\n      dedup: false,\n      steps: [\n        ['Remove or disable TikTok Pixel from the web container', 'If you have an existing TikTok Pixel tag in your web container, disable it. Running both without deduplication support results in double-counted conversions.'],\n        ['Add TikTok Events API tag in the server container', 'In your <strong>server container<\/strong>, add the TikTok Events API tag. Configure your Pixel ID and TikTok access token.'],\n        ['Confirm user data hashing', 'The tag automatically transforms user data (email, phone) to lowercase and hashes it using SHA256 before sending to TikTok. Verify this is active in the tag settings.'],\n        ['Verify in TikTok Events Manager', 'Go to TikTok Ads Manager \u2192 Assets \u2192 Events \u2192 Web Events. Confirm events are arriving from the server only, with no duplicate browser events.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/tiktok\/pixel'\n    },\n    pinterest: {\n      badge: 'both', badgeLabel: 'Both containers', badgeBg: '#0f3528',\n      placementLabel: 'Web container + Server container',\n      summary: 'Pinterest follows the same dual-signal logic as Meta: browser tag and Conversions API run in parallel. Both channels together give Pinterest the highest-fidelity view of conversion activity, improving attribution and campaign optimisation.',\n      dedup: true,\n      dedupText: '<strong>Deduplication required.<\/strong> With both the browser tag and Conversions API active, Pinterest receives each event from two sources. Pass a matching deduplication key in both the browser and server events so Pinterest counts each conversion once.',\n      steps: [\n        ['Keep Pinterest Tag in the web container', 'Your existing Pinterest Tag stays in the <strong>web container<\/strong>. It continues to fire on browser-level events.'],\n        ['Add Pinterest Conversions API tag in the server container', 'In your <strong>server container<\/strong>, add the Pinterest Conversions API tag. You only need your Pinterest Advertiser ID \u2014 no access token required.'],\n        ['Set up event deduplication', 'Pass a consistent deduplication key in both the browser and server events. Pinterest uses this to match and deduplicate conversion events.'],\n        ['Test with Pinterest Tag Helper', 'Use the Pinterest Tag Helper Chrome extension and Pinterest Events Manager to confirm events arrive from both channels and are deduplicated correctly.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/pinterest\/tag'\n    },\n    linkedin: {\n      badge: 'both', badgeLabel: 'Both containers', badgeBg: '#0f3528',\n      placementLabel: 'Web container + Server container',\n      summary: 'The LinkedIn Insight Tag runs client-side in the web container for audience building and page view data. Conversion events are sent server-side via LinkedIn CAPI, which is more reliable than browser-based conversion tracking \u2014 especially for lead generation campaigns where form submissions can be blocked client-side.',\n      dedup: true,\n      dedupText: '<strong>Deduplication required.<\/strong> LinkedIn uses a <code>conversionId<\/code> to match browser and server conversion events. Pass the same <code>conversionId<\/code> in both to prevent double-counting conversions.',\n      steps: [\n        ['Keep LinkedIn Insight Tag in the web container', 'The Insight Tag stays in the <strong>web container<\/strong> for audience building and page view tracking.'],\n        ['Add LinkedIn CAPI tag in the server container', 'In your <strong>server container<\/strong>, add the LinkedIn Conversions API tag. Configure your LinkedIn Ad Account ID and access token.'],\n        ['Configure conversion event deduplication', 'Pass a matching <code>conversionId<\/code> in both the browser Insight Tag and the server CAPI event. LinkedIn uses this to deduplicate.'],\n        ['Verify in LinkedIn Campaign Manager', 'Go to LinkedIn Campaign Manager \u2192 Analyze \u2192 Conversion Tracking. Confirm server-side conversion events are being received and attributed correctly.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/linkedin\/insights-tag'\n    },\n    snapchat: {\n      badge: 'both', badgeLabel: 'Both containers', badgeBg: '#0f3528',\n      placementLabel: 'Web container + Server container',\n      summary: 'Snap Pixel runs in the web container; Snap Conversions API runs in the server container. Both channels run in parallel. The server tag automatically normalises and hashes user parameters \u2014 including email, mobile identifier, IP address, and phone number \u2014 before sending to Snap.',\n      dedup: true,\n      dedupText: '<strong>Deduplication required.<\/strong> Pass a matching <code>event_id<\/code> in both the browser Snap Pixel and the server Conversions API events. Snapchat uses this to deduplicate and count each conversion once.',\n      steps: [\n        ['Keep Snap Pixel in the web container', 'Your existing Snap Pixel tag stays in the <strong>web container<\/strong>. It continues to fire browser-level events.'],\n        ['Add Snapchat Conversions API tag in the server container', 'In your <strong>server container<\/strong>, add the Snapchat CAPI tag. Configure your Snap Pixel ID and access token.'],\n        ['Confirm user data normalisation', 'The tag automatically normalises and hashes email, phone, IP address, and mobile identifier using SHA256. Verify this is enabled in the tag configuration.'],\n        ['Implement event_id deduplication', 'Pass a matching <code>event_id<\/code> in both the browser and server events so Snapchat deduplicates correctly.'],\n        ['Test in Snap Events Manager', 'Go to Snap Ads Manager \u2192 Events Manager. Confirm events arrive from both channels and are being deduplicated.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/snapchat\/snap-pixel'\n    },\n    klaviyo: {\n      badge: 'server', badgeLabel: 'Server container only', badgeBg: '#2a7a5e',\n      placementLabel: 'Server container only',\n      summary: 'Klaviyo does not support event deduplication. Running both browser and server tracking sends every event twice. Configure server-side only. The tag communicates directly with the Klaviyo API and supports adding contacts, tracking on-site activity, and sending event parameters.',\n      dedup: false,\n      steps: [\n        ['Remove any existing Klaviyo browser tag', 'If you have a Klaviyo JavaScript snippet in your web container or site code, disable it before adding the server-side tag. Running both creates duplicate events.'],\n        ['Add Klaviyo tag in the server container', 'In your <strong>server container<\/strong>, add the Klaviyo tag. Configure your Klaviyo Public API Key and Private API Key.'],\n        ['Configure supported actions', 'The tag supports three action types: <strong>track events<\/strong>, <strong>create or update a contact<\/strong>, and <strong>create or update a contact + track event simultaneously<\/strong>. Configure the action type per trigger.'],\n        ['Test via Klaviyo Activity Feed', 'Go to your Klaviyo account \u2192 Profiles. Trigger a test event and confirm it appears in the profile activity feed without duplicates.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/config\/klaviyo'\n    },\n    activecampaign: {\n      badge: 'server', badgeLabel: 'Server container only', badgeBg: '#2a7a5e',\n      placementLabel: 'Server container only',\n      summary: 'ActiveCampaign connects via API from the server container. The tag tracks events, creates or updates contacts, and can combine both actions in a single call. Configure server-side only for clean, deduplicated data into your CRM.',\n      dedup: false,\n      steps: [\n        ['Obtain your ActiveCampaign API credentials', 'In your ActiveCampaign account, go to Settings \u2192 Developer to find your API URL and API Key.'],\n        ['Add ActiveCampaign tag in the server container', 'In your <strong>server container<\/strong>, add the ActiveCampaign tag. Enter your API URL and API Key in the tag configuration.'],\n        ['Select the action type', 'Choose from three action types: <strong>Track event<\/strong>, <strong>Create or update contact<\/strong>, or <strong>Create or update contact + track event<\/strong>. Set the appropriate trigger for each action.'],\n        ['Map event and contact parameters', 'Configure which data layer variables map to ActiveCampaign event names, contact email, and any custom fields you want to populate.'],\n        ['Test in ActiveCampaign', 'Trigger a test event and confirm it appears in ActiveCampaign under Contacts \u2192 Activity or Reports \u2192 Event Tracking.']\n      ],\n      url: 'https:\/\/taggrs.io\/docs\/server-side-tracking\/config\/activecampaign'\n    }\n  };\n\n  window.plcShow = function() {\n    var key = document.getElementById('plc_platform').value;\n    var resultEl = document.getElementById('plc_result');\n    if (!key) { resultEl.style.display = 'none'; return; }\n\n    var p = platforms[key];\n\n    var badge = document.getElementById('plc_badge');\n    badge.innerHTML = '<span style=\"width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,0.65);flex-shrink:0;display:inline-block\"><\/span> ' + p.badgeLabel;\n    badge.style.background = p.badgeBg;\n    badge.style.color = '#fff';\n\n    document.getElementById('plc_placement_label').textContent = p.placementLabel;\n    document.getElementById('plc_summary').innerHTML = p.summary;\n\n    var dedupEl = document.getElementById('plc_dedup');\n    if (p.dedup) {\n      dedupEl.style.display = 'flex';\n      document.getElementById('plc_dedup_text').innerHTML = p.dedupText;\n    } else {\n      dedupEl.style.display = 'none';\n    }\n\n    var stepsEl = document.getElementById('plc_steps');\n    stepsEl.innerHTML = '';\n    p.steps.forEach(function(step, i) {\n      if (i > 0) {\n        var conn = document.createElement('div');\n        conn.style.cssText = 'width:1px;height:10px;background:rgba(15,53,40,0.2);margin-left:10px';\n        stepsEl.appendChild(conn);\n      }\n      var stepDiv = document.createElement('div');\n      stepDiv.style.cssText = 'display:flex;align-items:flex-start;gap:12px';\n      stepDiv.innerHTML =\n        '<div style=\"flex-shrink:0;width:22px;height:22px;border-radius:50%;background:#0f3528;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:1px;font-family:Poppins,sans-serif\">' + (i+1) + '<\/div>' +\n        '<div style=\"font-size:13px;color:#2a4a3e;line-height:1.55;padding-top:3px;font-family:Poppins,sans-serif\"><strong style=\"color:#0f3528\">' + step[0] + '<\/strong><br>' + step[1] + '<\/div>';\n      stepsEl.appendChild(stepDiv);\n    });\n\n    document.getElementById('plc_cta').href = p.url;\n    resultEl.style.display = 'block';\n  };\n\n  window.plcReset = function() {\n    document.getElementById('plc_platform').value = '';\n    document.getElementById('plc_result').style.display = 'none';\n  };\n})();\n<\/script>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"platforms-that-go-in-the-server-container-only\">Plates-formes qui vont dans le conteneur du serveur uniquement<\/h2>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"advertising-platforms\">Plates-formes publicitaires<\/h3>\n\n\n\n<p>Le <strong>suivi c\u00f4t\u00e9 serveur des annonces Google<\/strong> n\u00e9cessite 4 composants successifs :<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>GA4 Config tag (conteneur web)<\/li>\n\n\n\n<li>\u00c9tiquette de serveur GA4 (conteneur de serveur)<\/li>\n\n\n\n<li>Conversion Linker tag (conteneur de serveur)<\/li>\n\n\n\n<li>Balise Google Ads Conversion Tracking (conteneur de serveur)<\/li>\n<\/ol>\n\n\n\n<p>D'apr\u00e8s les questions fr\u00e9quemment pos\u00e9es \u00e0 notre service d'assistance, le Conversion Linker est l'\u00e9tape la plus souvent omise. Sans lui, les donn\u00e9es relatives aux clics ne sont pas correctement rattach\u00e9es aux conversions et l'attribution est rompue. Le Remarketing de Google Ads passe par la m\u00eame cha\u00eene.  <\/p>\n\n\n\n<p>Google Ads Remarketing fonctionne \u00e9galement c\u00f4t\u00e9 serveur uniquement, en utilisant la m\u00eame d\u00e9pendance GA4.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/taggrs.io\/docs\/server-side-tracking\/google-ads\/conversion-linker\">Comment configurer le suivi de Google Ads c\u00f4t\u00e9 serveur ?<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p><strong>TikTok<\/strong> est \u00e9galement un conteneur de serveur uniquement. Le pixel de TikTok ne prend pas en charge la d\u00e9duplication des \u00e9v\u00e9nements au niveau requis pour ex\u00e9cuter simultan\u00e9ment le suivi du navigateur et du serveur. La balise serveur envoie des \u00e9v\u00e9nements \u00e0 l'API d'\u00e9v\u00e9nements de TikTok et transforme automatiquement les donn\u00e9es utilisateur requises (courriel, t\u00e9l\u00e9phone) en minuscules et les hachure \u00e0 l'aide de SHA256 avant de les transmettre.  <\/p>\n\n\n\n<p>V\u00e9rifiez votre configuration dans le gestionnaire d'\u00e9v\u00e9nements de TikTok avant d'activer le suivi parall\u00e8le.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"crm-and-marketing-automation\">CRM et automatisation du marketing<\/h3>\n\n\n\n<p><strong>Klaviyo<\/strong> ne prend pas en charge la d\u00e9duplication des \u00e9v\u00e9nements. L'ex\u00e9cution \u00e0 la fois du navigateur et du serveur envoie des \u00e9v\u00e9nements en double \u00e0 Klaviyo. Configurez uniquement le c\u00f4t\u00e9 serveur. La balise communique directement avec l'API de Klaviyo et prend en charge l'ajout de contacts, le suivi de l'activit\u00e9 sur le site et l'envoi de param\u00e8tres d'\u00e9v\u00e9nements.   <\/p>\n\n\n\n<p><strong>ActiveCampaign<\/strong> se connecte \u00e0 l'API ActiveCampaign c\u00f4t\u00e9 serveur. La balise prend en charge 3 types d'action : suivre les \u00e9v\u00e9nements, cr\u00e9er ou mettre \u00e0 jour un contact, et cr\u00e9er ou mettre \u00e0 jour un contact tout en suivant un \u00e9v\u00e9nement simultan\u00e9ment. <\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"platforms-that-require-both-the-web-container-and-the-server-container\">Plates-formes n\u00e9cessitant \u00e0 la fois le conteneur web et le conteneur serveur<\/h2>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"analytics\">Analyse<\/h3>\n\n\n\n<p>Google Analytics 4 n'est pas facultatif dans une configuration server-side. La balise GA4 Config du conteneur web envoie des donn\u00e9es au conteneur serveur, qui alimente toutes les balises en aval, y compris Google Ads. Il n'y a pas d'installation de Google Ads c\u00f4t\u00e9 serveur sans que GA4 c\u00f4t\u00e9 serveur soit d'abord en place.  <\/p>\n\n\n\n<p>D\u00e9duplication pour GA4 ? Ce n'est pas n\u00e9cessaire. La continuit\u00e9 des sessions est assur\u00e9e automatiquement dans les deux conteneurs.  <\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"advertising-platforms\">Plates-formes publicitaires<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Plate-forme<\/strong><\/td><td><strong>Pourquoi les deux conteneurs ?<\/strong><\/td><td><strong>La d\u00e9duplication est-elle n\u00e9cessaire ?<\/strong><\/td><td><strong>Param\u00e8tre de correspondance<\/strong><\/td><\/tr><tr><td>Meta <\/td><td>Meta recommande d'utiliser simultan\u00e9ment le pixel du navigateur et le CAPI du serveur pour maximiser les taux de correspondance et la couverture de l'\u00e9v\u00e9nement.<\/td><td>Oui<\/td><td>L'identifiant de l'\u00e9v\u00e9nement doit correspondre \u00e0 celui de l'\u00e9v\u00e9nement web et \u00e0 celui de l'\u00e9v\u00e9nement serveur.<\/td><\/tr><tr><td>Pinterest<\/td><td>Browser tag + Conversions API fonctionnent en parall\u00e8le, avec la m\u00eame logique de double signal que Meta.<\/td><td>Oui<\/td><td>ID de l'annonceur + cl\u00e9 de d\u00e9duplication de l'\u00e9v\u00e9nement<\/td><\/tr><tr><td>LinkedIn<\/td><td>Insight Tag s'ex\u00e9cute c\u00f4t\u00e9 client ; le tag serveur envoie les \u00e9v\u00e9nements de conversion via LinkedIn CAPI.<\/td><td>Oui<\/td><td>conversionId<\/td><\/tr><tr><td>Snapchat<\/td><td>Snap Pixel (web) + Snap Conversions API (serveur) fonctionnent en parall\u00e8le. Le tag normalise et hachure automatiquement les param\u00e8tres de l'utilisateur. <\/td><td>Oui<\/td><td>event_id<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:5px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Mais <strong>que signifie la d\u00e9duplication dans la pratique ?<\/strong> La d\u00e9duplication se produit lorsque le m\u00eame \u00e9v\u00e9nement de conversion se produit \u00e0 la fois dans le navigateur et sur le serveur, de sorte que la plateforme le re\u00e7oit deux fois. Sans logique de d\u00e9duplication (un identifiant d'\u00e9v\u00e9nement partag\u00e9 qui indique \u00e0 la plateforme que ces deux \u00e9v\u00e9nements sont identiques), vos comptes de conversion gonflent. Pour Meta en particulier, cela signifie que <strong>les rapports ROAS ne sont plus fiables<\/strong>.  <\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"e-commerce-cms-specific-data-layers\">Commerce \u00e9lectronique : Couches de donn\u00e9es sp\u00e9cifiques au CMS<\/h2>\n\n\n\n<p>Le suivi c\u00f4t\u00e9 serveur ne vaut que ce que valent les donn\u00e9es d'\u00e9v\u00e9nement qui atteignent le conteneur du serveur. Pour le commerce \u00e9lectronique, cela signifie une <strong>couche de donn\u00e9es correctement structur\u00e9e<\/strong>: une <strong>couche<\/strong> qui transmet les \u00e9v\u00e9nements d'achat, d'ajout au panier et de visualisation des produits avec les bons param\u00e8tres. <\/p>\n\n\n\n<p>TAGGRS dispose de configurations de couches de donn\u00e9es d\u00e9di\u00e9es pour les CMS, notamment <strong>WordPress (avec WooCommerce), Shopify, Lightspeed, Magento et PrestaShop<\/strong>.<\/p>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/taggrs.io\/docs\/server-side-tracking\/shopify-data-layer\">TAGGRS couches de donn\u00e9es applications pour le commerce \u00e9lectronique<\/a><\/div>\n<\/div>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p>Chaque CMS a une structure de couche de donn\u00e9es diff\u00e9rente. L'utilisation d'un format d'\u00e9v\u00e9nement incorrect fait que les \u00e9v\u00e9nements de conversion arrivent au conteneur du serveur avec des param\u00e8tres manquants ou mal form\u00e9s : c'est la raison la plus fr\u00e9quente pour laquelle le suivi des annonces Google c\u00f4t\u00e9 serveur semble fonctionner mais ne rend pas compte des conversions. <\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"mobile-apps-ios-and-android\">Applications mobiles : iOS et Android<\/h2>\n\n\n\n<p>TAGGRS prend en charge le suivi c\u00f4t\u00e9 serveur pour les applications mobiles sur iOS et Android. Les \u00e9v\u00e9nements de l'application passent par le conteneur du serveur en utilisant la m\u00eame infrastructure que le suivi Web. Ceci est pertinent pour les \u00e9quipes qui m\u00e8nent des campagnes Google Ads App ou des campagnes d'installation d'apps Meta o\u00f9 le suivi c\u00f4t\u00e9 navigateur n'est pas disponible et o\u00f9 les donn\u00e9es d'\u00e9v\u00e9nements au niveau du SDK ont besoin d'un relais serveur avant d'atteindre les plateformes publicitaires.  <\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"which-setup-matches-your-tracking-stack\">Quelle configuration correspond \u00e0 votre pile de suivi ?<\/h2>\n\n\n\n<div style=\"height:15px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"google-ads-ga4-only\">Google Ads + GA4 uniquement  <\/h3>\n\n\n\n<p>Configurez GA4 dans les deux conteneurs. Google Ads s'ex\u00e9cute uniquement c\u00f4t\u00e9 serveur. Il s'agit de la configuration sGTM minimale viable pour les \u00e9quipes qui d\u00e9butent.  <\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"google-ads-meta-ga4\">Google Ads + Meta + GA4  <\/h3>\n\n\n\n<p>Ajoutez Meta CAPI avec la d\u00e9duplication de l'identifiant de l'\u00e9v\u00e9nement. Il s'agit de la configuration la plus courante pour les agences. Elle couvre les deux plates-formes les plus co\u00fbteuses et permet \u00e0 la plupart des clients d'obtenir le gain le plus important en termes de r\u00e9cup\u00e9ration du signal.  <\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"google-ads-meta-tiktok-linkedin-klaviyo\">Google Ads + Meta + TikTok + LinkedIn + Klaviyo  <\/h3>\n\n\n\n<p>Toutes les plates-formes susmentionn\u00e9es s'appliquent. \u00c0 cette \u00e9chelle, la gestion de l'infrastructure - temps de disponibilit\u00e9 des conteneurs, acc\u00e8s multi-clients, rotation des informations d'identification - devient la contrainte op\u00e9rationnelle, et non la configuration des balises. L'h\u00e9bergement g\u00e9r\u00e9 et les contr\u00f4les d'acc\u00e8s bas\u00e9s sur les r\u00f4les de TAGGRS sont con\u00e7us pour cet environnement.  <\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"e-commerce-stack-shopify-woocommerce-lightspeed\">Pile de commerce \u00e9lectronique (Shopify \/ WooCommerce \/ Lightspeed)  <\/h3>\n\n\n\n<p>Commencez par configurer la couche de donn\u00e9es sp\u00e9cifique au CMS avant de d\u00e9finir les balises de la plateforme. Une couche de donn\u00e9es incompl\u00e8te produit des param\u00e8tres manquants au niveau du serveur, et aucune configuration de balise ne peut compenser des \u00e9v\u00e9nements qui ne se sont jamais form\u00e9s correctement en amont. <\/p>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"faqs\">FAQ<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"which-platforms-require-event-deduplication-in-server-side-gtm\">Quelles plates-formes n\u00e9cessitent une d\u00e9duplication des \u00e9v\u00e9nements dans le GTM c\u00f4t\u00e9 serveur ?  <\/h3>\n\n\n\n<p>Meta (Facebook CAPI), Pinterest, LinkedIn CAPI et Snapchat CAPI n\u00e9cessitent une d\u00e9duplication des \u00e9v\u00e9nements lorsque le suivi est effectu\u00e9 simultan\u00e9ment par le navigateur et le serveur. TikTok ne prend pas en charge la d\u00e9duplication et doit \u00eatre configur\u00e9 uniquement sur le serveur pour \u00e9viter de gonfler le nombre de conversions. <\/p>\n","protected":false},"excerpt":{"rendered":"<p>Conteneur web, conteneur serveur ou les deux ? V\u00e9rifiez ce dont votre plateforme a besoin ...<\/p>\n","protected":false},"author":10,"featured_media":70542,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[349],"tags":[729],"class_list":["post-70563","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-server-side-tracking-fr","tag-plate-forme-publicitaire"],"acf":[],"_links":{"self":[{"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/posts\/70563","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/comments?post=70563"}],"version-history":[{"count":3,"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/posts\/70563\/revisions"}],"predecessor-version":[{"id":70575,"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/posts\/70563\/revisions\/70575"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/media\/70542"}],"wp:attachment":[{"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/media?parent=70563"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/categories?post=70563"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/taggrs.io\/fr\/wp-json\/wp\/v2\/tags?post=70563"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}