Migrer d’O365 Connectors vers les webhooks Power Automate : guide complet 2024‑2025

Microsoft retire les connecteurs O365 pour Teams le 1er octobre 2024 ; adoptez dès aujourd’hui les webhooks Workflow (Power Automate) pour éviter toute interruption de vos notifications.

Sommaire

1. Remplacement des connecteurs O365 par les connecteurs Workflow (Power Automate)

Vue d’ensemble de la problématique

  • Dès le 1er octobre 2024, les Office 365 Connectors cesseront de publier dans Microsoft Teams.
  • La solution de remplacement officielle est le déclencheur « When an HTTP request is received » d’un Workflow Power Automate, qui publie ensuite un message dans le canal.
  • Si votre plugin envoie actuellement des cartes O365 à plusieurs canaux, il doit désormais :
    • générer et stocker la nouvelle URL Webhook Workflow,
    • adapter éventuellement le format de la charge utile (payload),
    • gérer la coexistence ou une migration contrôlée jusqu’à l’abandon complet des connecteurs O365.

2. Structure de l’URL webhook

SolutionFormat d’URLParticularités
O365 Connectorhttps://outlook.office.com/webhook/{GroupId}@{Tenant}/IncomingWebhook/{WebhookId}/{Secret}Reconstructible si l’on connaît le Group ID et le suffixe ; un seul endpoint peut servir plusieurs canaux.
Workflow (Power Automate)Ex. :
https://prod‑23.westeurope.logic.azure.com:443/workflows/{FlowGUID}/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig={Signature}
L’URL complète est générée à la création du flux. Elle contient la région Azure (prod‑23.westeurope), un GUID de flux et une signature HMAC. Aucune partie « base » stable par locataire n’est exposée : impossible de deviner l’URL.

Conséquence : votre plugin doit impérativement stocker l’URL intégrale — un simple identifiant n’est plus suffisant.

3. Charge utile (payload)

PointDétail
Format toujours acceptéLes anciennes « Message Cards » (schema.org) fonctionnent encore, mais Microsoft recommande Adaptive Cards v1.5+ pour profiter des mises en forme récentes, notamment l’action Action.Execute.
Spécificités WorkflowLe déclencheur HTTP accepte n’importe quel JSON ; vous pouvez donc réutiliser le payload actuel ou le transformer dans le flux avant l’action « Post a message in a chat or channel ».
Bonne pratiqueConservez un schéma JSON unique dans le plugin et, si nécessaire, convertissez‑le au sein du Workflow ; ainsi, un changement de format n’impactera que votre logique Power Automate, pas les clients.

Exemple de transformation dans Power Automate

<Compose>
{
  "title": "@{triggerBody()?['subject']}",
  "text": "@{triggerBody()?['body']}",
  "sections": [
    {
      "activityTitle": "@{triggerBody()?['authorName']}",
      "activityImage": "@{triggerBody()?['authorIcon']}"
    }
  ]
}
</Compose>

La sortie Compose est ensuite transmise à l’action « Post adaptive card in a Teams channel ».

4. Stratégies de migration pour votre plugin

ApprocheAvantagesInconvénients / Vigilance
Endpoints séparés
(un pour O365, un pour Workflow)
Simplicité de code ; isolement clair des chemins d’appel.L’utilisateur doit gérer deux configurations durant la transition ; risque d’oublier la suppression de l’ancien endpoint.
Configuration centralisée
(stockage sécurisé de l’URL Workflow)
Secret hors du champ de l’utilisateur final ; Possibilité de mise à jour massive (rotation de signature, changement de région).Un endpoint distinct par Webhook ; moins flexible si vous mutualisiez les connecteurs dans O365.
Mode hybride
(O365 + Workflow jusqu’à la bascule)
Zéro régression fonctionnelle, vous décidez du rythme de migration.Complexité logicielle accrue ; pensez à désactiver O365 avant le 1/10/2024 pour éviter les erreurs runtime.

5. Meilleures pratiques de sécurité et de gouvernance

Gestion du secret webhook

  • L’URL inclut une signature HMAC ; si elle fuit, n’importe qui peut publier dans votre canal.
  • Stockez‑la dans un coffre-fort (Azure Key Vault, AWS Secrets Manager, HashiCorp Vault) et délivrez‑la juste‑à‑temps (JIT) à votre plugin.
  • Automatisez la rotation de signature : recréez le déclencheur HTTP, puis mettez à jour votre secret store.

Journalisation et observabilité

  • Activez le niveau « Informations » sur le Run History du flux pour tracer chaque appel sortant et l’ID de conversation Teams.
  • Publiez la conversationId et messageId dans Log Analytics pour corréler l’événement avec la source applicative.
  • Ajoutez un Action Failure path dans Power Automate ; en cas d’échec, envoyez un courriel ou stockez l’erreur dans Azure Table Storage pour analyse ultérieure.

Contrôles d’accès

  • Le déclencheur HTTP n’a pas de contrôle RBAC : la sécurité repose uniquement sur la signature de l’URL.
  • Pour des scénarios très sensibles, envisagez Microsoft Graph API (chatMessage) : vous bénéficiez d’Azure AD, d’Access Policies et d’une granularité per‑user.
  • Vous pouvez aussi filtrer l’adresse IP d’appel via Azure Front Door (Web Application Firewall) pour bloquer les requêtes hors périmètre.

6. Étapes détaillées pour implémenter un Webhook Workflow

  1. Créer le Workflow
    • Dans Power Automate → Créer → Workflow automatisé.
    • Choisissez le déclencheur When an HTTP request is received.
    • Laissez le schéma vide pour accepter tout JSON ou collez votre schéma MessageCard/AdaptiveCard.
  2. Ajouter une action Teams
    • Teams → Post message in a chat or channel.
    • Sélectionnez Canal et copiez l’ID de la Team comme paramètre d’environnement pour faciliter la réutilisation dans plusieurs locataires.
  3. Copier l’URL du déclencheur
    • Enregistrez le flux, puis ouvrez à nouveau le déclencheur ; l’URL apparaît : copiez‑la sans la partager en clair.
    • Stockez‑la dans votre coffre‑fort, étiquetez‑la (Team, environnement, date de création).
  4. Adapter votre plugin
    • Ajoutez un champ workflowWebhookUrl dans la configuration.
    • Si l’utilisateur fournit encore un O365URL, continuez à l’utiliser jusqu’à expiration du connecteur.
    • Envoyez le JSON existant ; si nécessaire, réalisez les transformations en amont du Compose.
  5. Mettre en place la surveillance
    • Activez l’alerte Power Automate « Le flux a échoué ».
    • Exploitez l’API Graph /teams/{id}/channels/{id}/messages pour vérifier la livraison.
  6. Planifier la décommission d’O365
    • Communiquez largement la date limite (1/10/2024) à vos clients.
    • Après migration, supprimez les anciennes URLs pour éviter un conflit de signature dans le même canal.

7. Performance et montée en charge

Un Workflow Power Automate standard accepte 100 requêtes par 60 secondes. Pour un grand volume :

  • Mettez à niveau votre plan vers « Standard » ou « Enterprise ».
  • Répartissez la charge sur plusieurs flux (fan‑out) : votre plugin calcule un hash(channelId) % N pour déterminer l’endpoint.
  • Activez Concurrency Control sur l’action Teams ; fixez‑la à 1 pour préserver l’ordre des messages.

8. Questions fréquentes

Comment récupérer l’URL d’un Webhook si je l’ai perdue ?

Il n’existe aucune API publique. La seule solution : désactiver puis recréer le déclencheur HTTP pour obtenir une nouvelle URL.
Puis‑je changer la région Azure (westeurope) après création du flux ?

Non. Vous devrez réexporter puis recréer le flux dans la région souhaitée.
Les Adaptive Cards 1.6 sont‑elles supportées ?

Oui, pour les clients Teams mis à jour en 2024. Toutefois, vérifiez la parité des fonctionnalités (Actions, Inputs) si vos utilisateurs n’ont pas tous la même version de Teams.

9. Checklist de migration

ÉtapeResponsableÉchéanceÉtat
Inventorier les connecteurs O365 actifsOps15 mai 2024
Créer les Workflows et stocker les URLOps30 juin 2024
Mise à jour du plugin en productionDev15 juil. 2024🔄
Tests de charge et de sécuritéQA15 août 2024
Communication fin de support O365Com. interne01 sept. 2024
Désactivation complète des connecteurs O365Ops01 oct. 2024🚫

10. Recommandation synthétique

Commencez dès maintenant à créer, stocker et consommer des webhooks Workflow.
Déployez une couche de configuration sécurisée pour vos URLs ; vous éliminerez toute dépendance aux hypothèses de structure et préparerez votre architecture à d’éventuelles évolutions futures de Power Automate.


Article mis à jour : septembre 2025.
Auteur : Équipe Tech / Microsoft 365.

Sommaire