Aller au contenu
Échap
  • Tapez ce que vous cherchez avec vos mots : « Slack », « 503 », « prix ».

Connecter Netlify

Vérifier le site dès que Netlify a fini de déployer, avec une notification créée pour vous ou un webhook signé à la main.

Plan Pro et au-delàMis à jour le 11 septembre 2026

Sur cette page

Même principe que Vercel : la vérification part à la fin du déploiement au lieu d'attendre le prochain cycle, avec le commit et le contexte du déploiement. Une différence pratique sur le chemin manuel — le secret, c'est PostShip qui le génère, parce que Netlify vous demande d'en inventer un.

En un clic (recommandé)

  1. Ouvrez Projet → Intégrations, carte Déploiement, section Netlify.
  2. Cliquez sur Connecter Netlify et acceptez l'autorisation chez Netlify.
  3. Au retour, PostShip retrouve seul le site dont le domaine correspond à l'URL de production du projet. S'il y en a plusieurs ou aucun, il pose la question « Quel site Netlify correspond à celui-ci ? » : choisissez, puis Brancher.
  4. La carte affiche Débrancher Netlify. Rien à générer, rien à coller.

PostShip crée alors deux notifications sortantes sur le site : deploy_created (ce que l'interface de Netlify appelle « Deploy succeeded ») et deploy_failed. Débrancher les supprime chez Netlify en même temps que l'autorisation — une notification orpheline continuerait d'appeler une adresse que plus personne n'écoute.

Le repli : la notification à la main

Cette voie garde la signature du corps, la meilleure preuve.

  1. Sur la carte Netlify, cliquez sur Générer un secret. Il s'affiche une seule fois : copiez-le avant de quitter la page. Vous pourrez toujours cliquer sur Générer un nouveau secret, mais il faudra alors le mettre à jour côté Netlify.
  2. Sur app.netlify.com, ouvrez le site concerné, puis Project configuration → Notifications → Deploy notifications → Add notification → Outgoing webhook.
  3. Événement : Deploy succeeded.
  4. URL : L'URL du webhook copiée depuis la carte, de la forme https://postship.fr/api/netlify/deploy/<id du projet>.
  5. JWS secret token : le secret généré par PostShip.
  6. Enregistrez.

Ce que PostShip fait de l'événement

  • La preuve est vérifiée en premier : soit la signature X-Webhook-Signature (un JWS HS256 dont PostShip contrôle l'émetteur netlify et le condensat SHA-256 du corps), soit le jeton de l'URL, comparé en temps constant. Sans l'une des deux : 401 Invalid signature.
  • Le champ context du corps décide : deploy-preview et branch-deploy sont des previews ; tout le reste, y compris un corps vide ou illisible, est une production. Le doute penche vers la production parce qu'une production prise pour une preview ferait taire une alerte attendue.
  • Pour une preview, l'adresse vérifiée est deploy_ssl_url — l'adresse HTTPS propre à ce déploiement, en *.netlify.app. ssl_url désigne le site et pointerait sur la production.
  • Le commit vient de commit_ref et alimente le Check GitHub.
  • Une production déclenche tout ce que décrit Connecter votre hébergeur : vérification complète, dérive DNS, Ship Score, T+2 / T+8, archive, PageSpeed, Check GitHub.

Vérifier que ça marche

La carte passe à « Dernier webhook reçu il y a … » dès la première requête acceptée. Si elle reste sur « Aucun webhook reçu pour l'instant » après un déploiement, c'est le secret ou l'URL. Netlify garde l'historique des livraisons de chaque notification, avec le statut de réponse.

Limites et plans

FreeProTeam
Intégration en un clic et notification manuelleNonOuiOui
Previews (deploy-preview, branch-deploy) vérifiéesNonOuiOui

Sur Free, la carte est repliée derrière un lien vers les tarifs et le webhook répond 403 même correctement signé. Les tarifs détaillent le reste.

Dépannage

Pourquoi une preview a été vérifiée contre ma production ?

Ce n'est plus possible : le contexte du corps est lu, et une deploy-preview sans adresse *.netlify.app exploitable n'est simplement pas vérifiée (skipped: "invalid_preview_url") plutôt que rabattue sur la production. Si vous observez une ligne « production » pour un déploiement de branche, vérifiez que la notification manuelle n'a pas été créée sur un événement autre que « Deploy succeeded ».

Pourquoi « Invalid signature » après avoir régénéré le secret ?

Un nouveau secret invalide l'ancien immédiatement. Reportez-le dans le champ JWS secret token de la notification Netlify. Le chemin en un clic n'est pas concerné : il ne se sert pas de ce secret.

Pourquoi deux vérifications par déploiement ?

Le branchement en un clic et une notification manuelle coexistent : chacune appelle PostShip. Supprimez la notification manuelle côté Netlify, ou cliquez sur Débrancher Netlify.

Le bouton Connecter n'apparaît pas

L'intégration n'est proposée que si PostShip a ses clés Netlify en production. Le chemin manuel reste disponible dans tous les cas.