Et si on développait des interfaces sans développeur ?
Avis d'experts
18 juillet 2023
Dans l’immense majorité des projets Salesforce, nous rencontrons la nécessité d’interfacer la plateforme avec d’autres services.
Depuis peu, nous avons la possibilité de réaliser ces interfaces sans aucune ligne de code ! C’est l’occasion de réaliser des projets sans développeur pour optimiser les dispositifs, les délais et les coûts !
Quelques chiffres clés
88%
des IT Leaders réalisent des projets en déclaratif
3x
plus rapide de réaliser une tâche en déclaratif qu’en code
Un nouveau super pouvoir pour les #AwesomeAdmin
Quand on est un Admin Salesforce et qu’on entend les mots « Web Service », « API » ou « Intégration », c’est qu’il est souvent temps de passer la main à un développeur. Avec l’arrivée des Identifiants Nommés (Named Credentials) nouvelle génération, couplée aux Services Externes (External Services), c’est sur le point de changer !
Pour réaliser une intégration, même très simple, un développeur va devoir définir de nombreuses classes APEX (à couvrir en test !) pour gérer l’authentification, construire le corps de l’appel ou encore gérer les erreurs.
Avec les External Services et les Named Credentials, l’appel Web Service peut se faire directement depuis un flow, au clic, tout en conservant les standards de sécurité et de performances.
Comment fait-on ?
Tout commence avec les Named Credential ! En effet, ces derniers ont été repensés par les équipes Salesforce de façon à permettre un paramétrage de toutes sortes d’authentifications (précédemment, un nombre limité de méthodes étaient disponibles). C’est à ce niveau-là que l’authentification va être gérée et la sécurité assurée !
Si les External Services existent depuis plusieurs releases, ils ont été revus et améliorés de façon à être plus facilement modifiables (#maintenabilité) et à supporter les dernières versions d’APIs. Cette fonctionnalité permet de charger un fichier de définition d’une interface (un swagger), et Salesforce génère automatiquement les classes APEX permettant d’appeler l’interface en question ! L’étape suivante consiste à invoquer ces classes dans un Flow pour construire l’appel en accord avec le cas d’usage cible.
Et en pratique ?
Comment obtenir la tranche d’effectif d’une entreprise à partir de son SIREN

Prenons un exemple : dans le cadre d’une implémentation, un client souhaiterait obtenir le nombre de salariés d’un compte donné à partir de son SIREN. Le site api.gouv.fr référence des Web Service accessible à tous, sous réserve de création d’un compte. Première étape donc, mettre en place le Named Credential. Il va nous permettre de nous authentifier de façon sécurisée auprès du service, en l’occurence l’INSEE.
On crée ensuite l’External Service en lui-même. Pour ça, on récupère la spécification du service, le swagger, qu’on colle directement dans l’utilitaire (plusieurs options sont disponibles) ; et on référence le Named Credential créé précédemment.

Techniquement, plusieurs classes APEX dites « dynamiques » sont créés et elles sont directement invocables depuis un Flow. Pour notre cas d’usage, nous utilisons un Screen Flow qu’on lie à un bouton sur les Comptes et le tour est joué.
L'ESSENTIEL
Ce qu'il faut retenir
Avec ces nouvelles fonctionnalités, les possibilités du click not code dans Salesforce s’étendent encore. Cela permet de faciliter les intégrations qui sont souvent coûteuses dans un projet d’implémentation ; mais aussi d’allouer les développeurs à des tâches à plus fortes valeur ajoutée.
Si vous êtes déjà un Administrateur Salesforce, il vous faudra monter en compétences pour appréhender correctement le langage propre aux intégrations, en particulier l’authentification et la gestion des erreurs (nous vous conseillons cet article et celui-ci sur le sujet).
Chez Comforth-Easyfront, nous avons déjà plusieurs projets qui ont bénéficié de ces intégrations sans code, contactez-nous pour en discuter !
Auteur
Baptiste Geoffroy, Manager Comforth Easyfront