Suivez votre progression
Accueil Trailhead
Accueil Trailhead

Découverte des API de la plate-forme Salesforce Lightning

Objectifs de formation

Une fois cette unité terminée, vous pourrez :
  • Décrire les avantages d’une approche de développement donnant la priorité à l'API
  • Présenter des cas d’utilisation de l’API de transfert en masse et des API REST, SOAP et Streaming
  • Citer deux types de limitation d’API et décrire leur calcul

Priorité aux API chez Salesforce

Ohé matelot Prêt(e) à mettre le cap vers les hautes mers à la recherche de l’API Salesforce idéale pour votre intégration ? Bien, bandeau sur l’œil et perroquet sur l’épaule, larguez les amarres. Vous allez naviguer dans les eaux de la plate-forme Lightning et découvrir tout ce que les API ont à vous offrir.

L’étendue des API Salesforce est aussi vaste que l’océan. L’approche Salesforce donne la priorité aux API pour élaborer des fonctionnalités dans la plate-forme Salesforce. L’expression Priorité aux API fait référence à la création d’une API robuste pour une fonctionnalité avant de concevoir son interface utilisateur. En tant que développeur Salesforce, cette approche vous offre suffisamment de souplesse pour manipuler vos données comme vous l’entendez.

Salesforce est consciente que ses clients et ses partenaires recherchent en permanence à étendre les fonctionnalités Salesforce et à élaborer des applications pour AppExchange. Offrir des outils complets pour développer sur la plate-forme est l’une de nos priorités. Cette approche permet également à Salesforce de développer des interfaces utilisateur qui reposent sur des API, ce qui garantit un comportement cohérent entre les interfaces.

Ce module est votre référence du développement sur les API. Nous allons parcourir des informations générales relatives aux API, effectuer une enquête sur la série d’API Salesforce et explorer l’utilisation d’API courantes. Ces informations vous aideront à choisir l’API idéale pour votre projet.

API de données Salesforce

La vaste étendue bleue des API Salesforce comprend un archipel d’API fréquemment utilisées que nous allons examiner dans ce module. Elles ont pour nom API REST, API SOAP, API de transfert en masse et API Streaming. Ensemble, elles forment les API de données Salesforce. Leur fonction est de manipuler vos données Salesforce, alors que les autres API permettent de personnaliser des présentations de page ou d’élaborer des outils de développement personnalisés. Vous pouvez également utiliser d’autres API Salesforce pour manipuler des sous-ensembles de vos données Salesforce. Par exemple, l’API REST Analytics se rapporte à Analytics. Mais nos quatre API ci-dessus s’appliquent à l’ensemble des données Salesforce.
API de données Salesforce

API REST

L’API REST est un service Web simple et puissant basé sur les principes de REST. Il expose toutes sortes de fonctionnalités Salesforce via des ressources REST et des méthodes HTTP. Vous pouvez par exemple créer, lire, mettre à jour et supprimer (CRUD) des enregistrements, rechercher et interroger vos données, récupérer des métadonnées d’objet, et accéder à des informations relatives aux limitations de votre organisation. L’API REST prend en charge XML et JSON.

Dotée d’une structure de requête et de réponse légère et facile à utiliser, l’API REST est idéale pour écrire des applications mobiles et Web.

API SOAP

L’API SOAP est un service Web robuste et puissant basé sur le protocole standard du secteur qui porte le même nom. Il utilise un fichier WSDL (Web Services Description Language) afin de définir rigoureusement les paramètres d’accès aux données via l’API. L’API SOAP prend uniquement en charge XML. La plupart des fonctionnalités de l’API SOAP sont également disponibles via l’API REST. Cela dépend seulement de la norme qui répond le mieux à vos besoins.

L’API SOAP utilise le fichier WSDL comme s’il s’agissait d’un contrat formel entre l’API et le client. Par conséquent, elle convient parfaitement à l’écriture d’intégrations serveur à serveur.

API de transfert en masse

L’API de transfert en masse est une API RESTful permettant de charger et d’interroger un grand nombre de données à la fois, c’est-à-dire 50 000 enregistrements ou plus. L’API de transfert en masse est asynchrone, ce qui signifie que vous pouvez soumettre une requête et revenir plus tard pour examiner les résultats. Cette approche est idéale pour gérer des volumes de données importants. Il existe deux versions de l’API de transfert en masse : 1.0 et 2.0. Ces deux versions traitent de grandes quantités de données, mais nous utilisons la version 2.0 dans ce module parce que son maniement est un peu plus aisé.

L’API de transfert en masse est idéale pour exécuter des tâches sur un grand nombre d’enregistrements, par exemple lors du chargement initial de données dans votre organisation.

API Streaming

L’API Streaming vous permet de définir des notifications qui se déclenchent lorsque des modifications sont apportées à vos données. Il utilise un modèle publier/inscrire (ou pub/sub) qui permet aux utilisateurs de s’abonner à des canaux diffusant certains types de modification de données.

Le modèle publier/inscrire réduit le nombre de requêtes d’API en éliminant la nécessité de sonder les données. L’API Streaming est idéale pour écrire des applications sans avoir à vérifier fréquemment l’ajout de modifications.

Accès aux API et authentification

Pour accéder aux API Salesforce, vous n’avez pas besoin d’une carte au trésor. Il suffit d’un Tailhead Playground ou d’une organisation dans l’une des éditions suivantes : Enterprise Edition, Unlimited Edition, Developer Edition, Performance Edition ou Professional Edition (avec un complément). Assurez-vous que vous disposez de l’autorisation « API activée » et que vous êtes prêt(e) à démarrer l’intégration.

Tous les appels d’API, à l’exception de l’appel API SOAP login(), nécessitent une authentification. Vous pouvez soit utiliser l’un des flux OAuth pris en charge, soit vous authentifier avec un ID de session récupéré lors de l’appel API SOAP login(). Pour choisir l’API appropriée, reportez-vous au guide du développeur.

Limitations des API

Tout bon capitaine sait définir des limites pour le bien de son équipage. S’il laissait les marins boire à longueur de journée, le bateau n’avancerait pas. De la même façon, Salesforce limiter le nombre d’appels d’API par organisation pour garantir l’intégrité de l’instance. Ces limitations évitent que des scripts malveillants ne transforment nos serveurs en bois flottant. Elles ne gênent pas votre travail quotidien, mais il est préférable de les connaître.

Il existe deux types de limitation d’API. Des limitations en utilisation simultanée déterminent le nombre maximal d’appels longs (20 secondes ou plus) qui peuvent être exécutés en même temps. Des limitations totales déterminent le nombre d’appels qui peuvent être effectués par période de 24 heures.

Les limitations en utilisation simultanée varient selon le type d’organisation. Pour un Trailhead Playground, la limitation est de cinq appels longs simultanés. Pour une organisation sandbox, la limitation est de 25 appels longs simultanés.

Les limitations totales dépendent de l’édition de l’organisation, du type de licence et des packs d’extension que vous avez achetés. Par exemple, une organisation Enterprise Edition a droit à 1000 appels par licence Salesforce et à 200 appels par licence Partner Community. Avec un pack « Appels d’API supplémentaires », la même organisation Enterprise Edition bénéficie de 4 000 appels supplémentaires. Ces limitations totales sont également soumises à des valeurs minimales et maximales basées sur l’édition de l’organisation, que nous n’allons pas explorer ici. Pour en savoir plus, suivez le lien Limites des développeurs Salesforce et référence rapide pour les allocations figurant dans la section Ressources.

Vous pouvez vérifier le nombre d’appels API restants de plusieurs façons.
  • La zone Utilisation de l’API dans la page de présentation du système. (Dans Configuration, saisissez « Présentation du système » dans la case Recherche rapide, puis sélectionnez Présentation du système.)
  • Informations renvoyées dans l’en-tête de réponse Sforce-Limit-Info pour les API REST.
  • Informations renvoyées dans le corps de la réponse (dans <type>API REQUESTS</type>) pour les API SOAP.
  • L’appel /limits dans l’API REST Lightning Platform.
  • L’autorisation basée sur l’utilisation de la limitation mensuelle en requêtes API, qui vous montre les appels d’API de votre organisation agrégés sur 30 jours.
Vous pouvez également configurer des notifications qui se déclenchent lorsque votre organisation dépasse le nombre d’appels d’API que vous avez défini. Pour cela, accédez à Configuration et saisissez « Notifications d’utilisation d’API » dans la case Recherche rapide, puis sélectionnez Notifications d’utilisation d’API.

Quelle API utiliser ?

Le choix de l’API idéale pour votre intégration est une décision importante. Voici quelques informations sur nos API les plus fréquemment utilisées, avec les protocoles pris en charge, les formats de données, les paradigmes de communication et des cas d’utilisation. Considérez cette section comme une référence à consulter pour sélectionner l’API à utiliser.

Notez les quatre API de données que nous avons déjà présentées. Nous allons explorer chacune d’elles.

Nom de l’API Protocole Format de données La communication
API REST REST JSON, XML Synchrone
API SOAP SOAP (WSDL) XML Synchrone
API REST Chatter REST JSON, XML Synchrone (les photos sont traitées de façon asynchrone)
API de l’interface utilisateur REST JSON Synchrone
REST API Analytics REST JSON, XML Synchrone
API de transfert en masse REST CSV, JSON, XML Asynchrone
API de métadonnées SOAP (WSDL) XML Asynchrone
API Streaming Bayeux JSON Asynchrone (flux de données)
API REST Apex REST JSON, XML, personnalisé Synchrone
API SOAP Apex SOAP (WSDL) XML Synchrone
API Tooling REST ou SOAP (WSDL) JSON, XML, personnalisé Synchrone

Utilisation de l’API REST

L’API REST fournit une interface de services Web basée sur REST puissante, pratique et simple pour interagir avec Salesforce. Ces avantages comprennent la facilité d’intégration et de développement, et un excellent choix de technologies à utiliser pour des applications mobiles et des projets Web. Pour certains projets, vous préférerez peut-être utiliser l’API REST avec d’autres API REST Salesforce. Pour construire une interface utilisateur permettant de créer, de lire, de mettre à jour et de supprimer des enregistrements, notamment pour des vues de liste, des actions et des listes de sélection dépendantes, utilisez l’API de l’interface utilisateur. Pour créer l’interface utilisateur pour Chatter, des communautés ou des recommandations, utilisez l’API REST Chatter. Si vous avez un grand nombre d’enregistrements à traiter, favorisez l’API de transfert en masse, qui est basée sur les principes de REST et optimisée pour les volumes de données importants.

Utilisation de l’API SOAP

L’API SOAP fournit une interface de services Web basée sur SOAP puissante, pratique et simple pour interagir avec Salesforce. Vous pouvez utiliser l’API SOAP pour créer, récupérer, mettre à jour ou supprimer des enregistrements. L’API SOAP permet également d’effectuer des recherches et davantage. Utilisez l’API SOAP dans n’importe quel langage qui prend en charge le service Web.

L’API SOAP permet par exemple d’intégrer Salesforce aux systèmes financiers et ERP de votre organisation. Vous pouvez également fournir en temps réel des informations de support et commerciales aux portails de sociétés et renseigner les systèmes métiers critiques avec des informations sur les clients.

Utilisation de l’API REST Chatter

Utilisez l’API REST Chatter pour afficher les fils, les utilisateurs, les groupes et les abonnés Chatter, notamment dans des applications mobiles. L’API REST Chatter offre également un accès programmatique aux fichiers, aux recommandations, aux rubriques, aux notifications, aux achats Data.com, etc. L’API REST Chatter est semblable aux API qu’offrent d’autres sociétés avec utilisant des fils, notamment Facebook et Twitter, mais elle expose également les fonctionnalités Salesforce au-delà de Chatter.

Quand utiliser l’API de l’interface utilisateur

Créez une interface utilisateur Salesforce pour des applications mobiles natives et des applications Web personnalisées avec l’API que Salesforce utilise afin de créer Lightning Experience et Salesforce pour Android, iOS et le Web mobile. Créez des interfaces utilisateur permettant de travailler avec des enregistrements, des vues de liste, des actions, des favoris, etc. Non seulement vous obtenez les données et les métadonnées dans une même réponse, mais celle-ci correspond aux modifications de métadonnées apportées à l’organisation par des administrateurs Salesforce. Inutile de vous préoccuper des présentations, des listes de sélection, de la sécurité au niveau des champs ou du partage. Il vous suffit de créer une application qui plaira à vos utilisateurs.

Utilisation de l’API REST Analytics

Vous pouvez accéder aux ressources Analytics (telles que les jeux de données, les perspectives et les tableaux de bord) dans un contexte de programmation à l’aide de l’API REST Analytics. Envoyez des requêtes directement à la plateforme Analytics. Accédez à des jeux de données qui ont été importés dans la plateforme Analytics. Créez et récupérez des perspectives. Accédez aux informations XMD. Récupérez une liste de versions de jeux de données. Créez et récupérez des applications Analytics. Créez, mettez à jour et récupérez des tableaux de bord Analytics. Récupérez une liste de dépendances pour une application. Déterminez les fonctionnalités disponibles pour l’utilisateur. Utilisez des clichés instantanés. Manipulez des jeux de données répliqués.

Utilisation de l’API de transfert en masse

L’API de transfert en masse repose sur les principes de REST et elle est optimisée pour le chargement ou la suppression de volumes de données importants. Vous pouvez l’utiliser pour interroger, interroger tout, insérer, mettre à jour, mettre à jour/insérer ou supprimer (query, queryAll, insert, update, upsert ou delete) de façon asynchrone de nombreux enregistrements en soumettant des lots. Salesforce traite les lots en arrière-plan.

Par contre, l'API SOAP est optimisée pour des applications clientes en temps réel qui mettent à jour quelques enregistrements seulement à la fois. Vous pouvez utiliser l’API SOAP pour traiter des volumes d’enregistrements relativement importants, mais lorsque les jeux de données contiennent des centaines de milliers d’enregistrements, l’API SOAP est moins pratique. L’API de transfert en masse est conçue pour simplifier le traitement de milliers ou de millions d’enregistrements.

Pour utiliser l’API de transfert en masse, le plus simple est de l’activer pour traiter les enregistrements dans Data Loader à l’aide de fichiers CSV. L’utilisation de Data Loader vous évite d’écrire votre propre application cliente.

Utilisation de l’API de métadonnées

Utilisez l’API de métadonnées afin de récupérer, déployer, créer, mettre à jour ou supprimer des personnalisations pour votre organisation. L’utilisation la plus courante est la migration de modifications depuis une organisation sandbox ou de test vers un environnement de production. L’API de métadonnées est conçue pour gérer les personnalisations et pour élaborer les outils de gestion du modèle de métadonnées, pas des données elles-mêmes.

Pour accéder aux fonctionnalités de l’API de métadonnées, le plus simple est d’utiliser les extensions Salesforce pour Visual Studio Code ou l’outil de migration Ant. Les deux outils s’appuient sur l’API de métadonnées. Ils utilisent les outils standard afin de simplifier l’utilisation de l’API de métadonnées.
  • Les extensions Salesforce pour Visual Studio Code comprennent des outils de développement prévus pour travailler sur la plate-forme Salesforce dans l’éditeur de code VS, léger et extensible. Ces outils fournissent des fonctionnalités permettant de travailler avec des organisations de développement (organisations test, sandbox et organisations DE), Apex, les composants Aura et Visualforce.
  • L’Outil de migration Ant est idéal si vous utilisez un script ou la ligne de commande pour déplacer des métadonnées entre un répertoire local et une organisation Salesforce.

Utilisation de l’API Streaming

Utilisez l'API Streaming pour recevoir des flux de données pratiquement en temps réel basés sur les modifications d’enregistrements Salesforce ou sur des contenus personnalisés. Pour les modifications d’un enregistrement, Salesforce publie une notification lorsque le changement a lieu. Pour les notifications personnalisées, vous pouvez publier des messages d'événement. Les abonnés peuvent recevoir des notifications en utilisant CometID, une implémentation du protocole Bayeux qui simule la technologie push. Les clients peuvent également s’abonner à certains types d’événements avec des déclencheurs Apex, ou de manière déclarative grâce au générateur de processus et à Flow Builder.

Utilisez le type d'événements de diffusion en continu adapté à vos besoins.

Événement PushTopic : recevez les changements apportés à des enregistrements Salesforce en fonction d’une requête SOQL que vous définissez. Les notifications contiennent uniquement les champs que vous aurez spécifié dans la requête SOQL. Événement Capture de modification de données : recevez les changements apportés à des enregistrements Salesforce avec tous les champs modifiés. La Capture de modification de données prend en charge plus d'objets standard que les événements PushTopic et offre plus de fonctionnalités, notamment des champs d’en-tête contenant des informations sur la modification. Événement de plate-forme : publiez et recevez des contenus personnalisés avec un schéma prédéfini. Les données peuvent être définies librement, y compris des données de votre activité telles que des informations sur les commandes. Spécifiez les données à envoyer en définissant un événement de plate-forme. Abonnez-vous à un canal d'événements de plate-forme pour recevoir des notifications. Événement générique : publiez et recevez des contenus quelconques sans schéma prédéfini.

Quand utiliser l’API REST Apex

Utilisez l’API REST Apex pour exposer vos classes et méthodes Apex afin de donner aux applications externes un accès à votre code via l’architecture REST. L’API REST Apex prend en charge OAuth 2.0 et l’ID de session pour l’autorisation.

Quand utiliser l’API SOAP Apex

Utilisez l’API SOAP Apex pour exposer vos méthodes Apex en tant qu’API de service Web SOAP et permettre ainsi aux applications externes d’accéder à votre code via SOAP.

L’API SOAP Apex prend en charge OAuth 2.0 et l’ID de session pour l’autorisation.

Utilisation de l’API Tooling

Utilisez l’API Tooling pour intégrer des métadonnées Salesforce à d’autres systèmes. Les types de métadonnées sont exposés en tant que sObjects, ce qui permet d’accéder à un composant d’un type complexe. Cet accès au niveau du champ accélère les opérations sur les types de métadonnées complexes. Vous pouvez également élaborer des outils de développement personnalisés pour des applications Force.com. Utilisez par exemple l’API Tooling pour gérer et déployer des copies de travail de classes et de déclencheurs Apex, et des pages et des composants Visualforce. Vous pouvez également définir des points de contrôle ou des marqueurs de décharge mémoire, exécuter un code Apex anonyme, et accéder aux informations de consignation et de couverture de code.

REST et SOAP sont toutes les deux prises en charge.