Sélectionner une page

Comprendre les API personnalisées

Les API personnalisées (Custom APIs) sont des objets Dataverse permettant de définir des points d’entrée métier spécifiques, exposés via l’API Web. Contrairement aux plug-ins, elles ne dépendent pas d’un événement du modèle de données (create, update, delete) mais sont appelables explicitement par une application, un flux ou un autre service. Elles constituent une évolution naturelle des actions personnalisées introduites dans les versions antérieures de Dynamics 365.

Définition

Une API personnalisée est un contrat exécutable publié dans Dataverse qui comprend :

  • Un nom logique et un nom d’affichage.
  • Des paramètres d’entrée et de sortie typés (string, integer, EntityReference, etc.).
  • Un ou plusieurs plug-ins handlers associés à la logique exécutée.
  • Un niveau d’autorisation contrôlant les rôles qui peuvent l’appeler.

Les API sont enregistrées dans les métadonnées Dataverse et peuvent être consommées via les connecteurs Power Platform, Postman ou n’importe quel client HTTP.

Comparaison avec les alternatives

MécanismePortéeMode d’exécutionAvantagesLimites
Plug-inEntitéLié à un événement CRUDPerformance, synchronismeCouplage fort au schéma
Business Process FlowUtilisateurGuidage manuelFacile à concevoirNon automatisable
Power Automate / Logic AppsCloudOrchestration externeIntégration multi-systèmesLatence, coût
Custom APIPlateformeInvocation directe via APIFlexible, gouvernableNécessite développement

Cas d’usage typiques

Les API personnalisées se distinguent par leur polyvalence : elles permettent de relier des systèmes, de centraliser la logique et de standardiser les échanges. Dans un contexte où Dataverse devient la couche d’intégration commune, elles représentent la solution la plus propre pour exposer des opérations métier de manière sécurisée et réutilisable.

  • Encapsulation d’une logique métier complexe : regrouper plusieurs opérations Dataverse en une seule exécution cohérente et transactionnelle.
  • Exposition contrôlée vers l’extérieur : offrir une API REST sécurisée aux applications externes (portails, Azure Functions, ERP) tout en respectant les politiques DLP et RBAC.
  • Interopérabilité entre Power Apps et Dynamics 365 CE : permettre à une app canvas ou model-driven d’appeler directement une logique CE native sans dépendance de couche intermédiaire.
  • Automatisation d’actions métier : intégrer l’API dans Power Automate pour exécuter des processus centralisés et audités à partir d’un point unique de vérité.

Exemple simplifié

Une API ValidateCustomerCredit peut être créée pour vérifier le plafond de crédit d’un client avant la création d’une commande. L’API prend en entrée un identifiant client et retourne un booléen. Elle peut être appelée depuis :

  • une app Power Apps (via le connecteur Dataverse),
  • un flux Power Automate,
  • un plug-in d’un autre processus (ex : avant la création d’une commande).

Cette flexibilité illustre le rôle central des Custom APIs comme mécanisme d’abstraction et de cohérence dans les architectures Dynamics 365 CE et Dataverse.