Make the Most of Your API Integrations /Tirez le meilleur parti de vos intégrations API

Learning Objectives /Objectifs de formation

After completing this unit, you’ll be able to: / Une fois cette unite terminée, vous pourrez :

  • Follow best practices for the REST and SOAP APIs. / Suivre les meilleures pratiques des API REST et SOAP.
  • Use AMPscript, Server-side JavaScript, and Guide Template Language in conjunction with APIs. / Utilisez AMPscript, JavaScript côté serveur et le langage de modèle de guide conjointement avec les API.
  • Implement available SDKs. /Implémentez les SDK disponibles.

More API Tips and Resources /Plus de conseils et de ressources API

You know the basics for authenticating and working with the REST and SOAP APIs. /Vous connaissez les bases de l’authentification et de l’utilisation des API REST et SOAP.

 (Woohoo!) Now, it’s time to take a look at some of the best ways to implement your API integrations, achieve peak performance, and handle any errors along the way. /(Woohoo!) Maintenant, il est temps d’examiner quelques-unes des meilleures façons de mettre en œuvre vos intégrations d’API, d’atteindre des performances optimales et de gérer les erreurs en cours de route.

Security /Sécurité

It’s no surprise that security tops the list when dealing with credentials and customer data. /Il n’est pas surprenant que la sécurité arrive en tête de liste lorsqu’il s’agit des informations d’identification et des données client.

Follow these tips to make sure your interactions with Marketing Cloud are as secure as possible. / Suivez ces conseils pour vous assurer que vos interactions avec Marketing Cloud sont aussi sécurisées que possible.

  • Make sure that your OAuth token contains only the permissions necessary to accomplish your task. / Assurez-vous que votre jeton OAuth ne contient que les autorisations nécessaires pour accomplir votre tâche.
  • Treat your refresh token like credentials for a Salesforce account and keep it secure. / Traitez votre jeton d’actualisation comme des informations d’identification pour un compte Salesforce et protégez-le.
  • Enforce TLS 1.2 when making requests to Marketing Cloud APIs. / Appliquez TLS 1.2 lors des demandes aux API Marketing Cloud.
  • Use secure procedures to manage sessions for users—like using your framework’s session-management features. /Utilisez des procédures sécurisées pour gérer les sessions pour les utilisateurs, comme l’utilisation des fonctionnalités de gestion de session de votre infrastructure.
  • Verify session and permission levels for users in any apps you develop. / Vérifiez les niveaux de session et d’autorisation pour les utilisateurs dans toutes les applications que vous développez.
  • Make sure users can access only what they need to perform their tasks. / Assurez-vous que les utilisateurs ne peuvent accéder qu’à ce dont ils ont besoin pour effectuer leurs tâches.
  • Make sure that you restrict stack traces and debug logs, so that only people who need the information can view it. / Assurez-vous de restreindre les traces de pile et les journaux de débogage, afin que seules les personnes qui ont besoin des informations puissent les consulter.
  • Configure your system and requests to avoid common attacks like cross-site request forgery (CSRF), HTML injection and cross-site scripting (XSS), arbitrary redirects, and remote code execution. / Configurez votre système et vos demandes pour éviter les attaques courantes telles que la falsification de demandes intersites (CSRF), l’injection HTML et les scripts intersites (XSS), les redirections arbitraires et l’exécution de code à distance.
  • Update all libraries and frameworks frequently to help avoid security vulnerabilities. / Mettez régulièrement à jour toutes les bibliothèques et tous les frameworks pour éviter les failles de sécurité.
  • Follow industry-standard best practices when storing sensitive data like passwords, financial data, and other personally identifiable information. /Suivez les meilleures pratiques standard de l’industrie lors du stockage de données sensibles comme les mots de passe, les données financières et autres informations personnelles identifiables.

Plan Your Requests / Planifiez vos demandes

There’s always room to grow, so plan for your API integration to handle more data and data sources in the future. Here’s how. /Il y a toujours de la place pour grandir, alors planifiez l’intégration de votre API pour gérer plus de données et de sources de données à l’avenir. Voici comment.

  • Reduce the number of steps to access, move, or update data to lower the number of requests to your API resources. /Réduisez le nombre d’étapes pour accéder, déplacer ou mettre à jour les données afin de réduire le nombre de demandes à vos ressources API.
  • If you know that your website or system regularly encounters high levels of activity, plan for those peaks and make sure your API integration can handle it. /Si vous savez que votre site Web ou votre système rencontre régulièrement des niveaux d’activité élevés, planifiez ces pics et assurez-vous que votre intégration API peut le gérer.
  • Test your code in a staging environment before moving to your production environment. / Testez votre code dans un environnement intermédiaire avant de passer à votre environnement de production.

Data Management / Gestion de données

To ease traffic, avoid simultaneous updates to a single data extension with multiple API requests. Instead, use a single request with all necessary information. /Pour réduire le trafic, évitez les mises à jour simultanées d’une seule extension de données avec plusieurs demandes d’API. Utilisez plutôt une seule demande avec toutes les informations nécessaires.

Use a coordinated universal time (UTC) offset to work with date and time values; then convert the time value when retrieving that information. /Utilisez un décalage d’heure universelle coordonnée (UTC) pour travailler avec les valeurs de date et d’heure; puis convertissez la valeur de temps lors de la récupération de ces informations.

Include AMPscript, Server-Side JavaScript, and Guide Template Language /Inclure AMPscript, JavaScript côté serveur et langage de modèle de guide

In addition to our APIs, Marketing Cloud includes three programmatic scripting languages that developers can use. /En plus de nos API, Marketing Cloud comprend trois langages de script programmatiques que les développeurs peuvent utiliser.

  • AMPscript: A proprietary scripting language designed to personalize content for customers, provide dynamic content, and update subscriber information. /AMPscript: langage de script propriétaire conçu pour personnaliser le contenu pour les clients, fournir un contenu dynamique et mettre à jour les informations des abonnés.
  • Server-side JavaScript (SSJS): A language designed to mimic AMPscript functionality using syntax and functions similar to JavaScript. / JavaScript côté serveur (SSJS): langage conçu pour imiter la fonctionnalité AMPscript à l’aide d’une syntaxe et de fonctions similaires à JavaScript.
  • Guide Template Language (GTL): A language designed to build content and messages using Handlebars- and Moustache-style syntax. /Guide Template Language (GTL): langage conçu pour créer du contenu et des messages à l’aide de la syntaxe Handlebars- and Moustache-style.

As a developer, you’ll likely run across these programmatic languages as parts of messages or content included in requests from data extensions. /En tant que développeur, vous parcourrez probablement ces langages de programmation en tant que parties de messages ou de contenu inclus dans les demandes d’extensions de données.

For example, to include dynamic content in an email message, you might use GTL in the message to pull information from a data extension. You can store these scripts in data extensions as well. /Par exemple, pour inclure du contenu dynamique dans un e-mail, vous pouvez utiliser GTL dans le message pour extraire des informations d’une extension de données. Vous pouvez également stocker ces scripts dans des extensions de données.

AMPscript and SSJS can also call API functionality to build messages or create objects in Marketing Cloud. This AMPscript sample builds a sendable data extension using the SOAP API. /AMPscript et SSJS peuvent également appeler la fonctionnalité API pour créer des messages ou créer des objets dans Marketing Cloud. Cet exemple AMPscript crée une extension de données pouvant être envoyée à l’aide de l’API SOAP.

%%[
/*CREATE THE DATA EXTENSION*/
Set @de = CreateObject("DataExtension")
SetObjectProperty(@de,"Name","API-Created Data Extension")
SetObjectProperty(@de,"CustomerKey","XXXXXXXX")
SetObjectProperty(@de,"Description","Data Extension Created via API")
SetObjectProperty(@de,"IsSendable","True")
SetObjectProperty(@de,"IsTestable","False")
/*DE Folder ID - mouse over in app to get this ID */
SetObjectProperty(@de,"CategoryID","123")
/* THIS IS THE SENDABLE FIELD */
Set @deFields = CreateObject("DataExtensionField")
SetObjectProperty(@deFields,"FieldType","EmailAddress")
SetObjectProperty(@deFields,"IsRequired","true")
SetObjectProperty(@deFields,"IsPrimaryKey","true")
SetObjectProperty(@deFields,"IsNillable","false")
SetObjectProperty(@deFields,"MaxLength","100")
SetObjectProperty(@deFields,"Name","email_address")
AddObjectArrayItem(@de,"Fields",@deFields)
SetObjectProperty(@de,"SendableDataExtensionField",@deFields)
 Set @deFields = CreateObject("DataExtensionField")
SetObjectProperty(@deFields,"FieldType","Text")
SetObjectProperty(@deFields,"IsRequired","true")
SetObjectProperty(@deFields,"IsPrimaryKey","false")
SetObjectProperty(@deFields,"IsNillable","false")
SetObjectProperty(@deFields,"MaxLength","100")
SetObjectProperty(@deFields,"Name","subscriber_key")
AddObjectArrayItem(@de,"Fields",@deFields)
Set @deFields = CreateObject("DataExtensionField")
SetObjectProperty(@deFields,"FieldType","Text")
SetObjectProperty(@deFields,"IsRequired","false")
SetObjectProperty(@deFields,"IsPrimaryKey","false")
SetObjectProperty(@deFields,"IsNillable","false")
SetObjectProperty(@deFields,"MaxLength","50")
SetObjectProperty(@deFields,"Name","first_name")
AddObjectArrayItem(@de,"Fields",@deFields)
Set @deFields = CreateObject("DataExtensionField")
SetObjectProperty(@deFields,"FieldType","Text")
SetObjectProperty(@deFields,"IsRequired","false")
SetObjectProperty(@deFields,"IsPrimaryKey","false")
SetObjectProperty(@deFields,"IsNillable","false")
SetObjectProperty(@deFields,"MaxLength","75")
SetObjectProperty(@deFields,"Name","last_name")
AddObjectArrayItem(@de,"Fields",@deFields)
/* This field sets how the data extension field above relates to the all subscribers list */
SET @ts_attr = CreateObject("Attribute")
SetObjectProperty(@ts_attr, "Name", "Email Address")
SetObjectProperty(@ts_attr, "Value", "Email Address")
SetObjectProperty(@de,"SendableSubscriberField",@ts_attr)
Set @StatCode = InvokeCreate(@de, @StatMessage, @ErrorCode)
]%%
Status = %%= v(@StatMessage) =%% -- %%= v(@ErrorCode) =%%

As always, test your code and scripts before deploying them, and use the version that works best for your needs. /Comme toujours, testez votre code et vos scripts avant de les déployer et utilisez la version qui convient le mieux à vos besoins.

Implement Marketing Cloud SDKs /Implémenter les SDK Marketing Cloud

Ready to assemble the necessary code for your integration? There are plenty of resources to help you get started and save time. / Prêt à assembler le code nécessaire à votre intégration? Il existe de nombreuses ressources pour vous aider à démarrer et à gagner du temps.

 (After all, who wants to start from scratch?) Get a leg up from your fellow developers and Marketing Cloud community with ready-to-use SDKs. Dig in to jumpstart your integration. /(Après tout, qui veut repartir de zéro?) Obtenez un coup de pouce de vos collègues développeurs et de la communauté Marketing Cloud avec des SDK prêts à l’emploi. Creusez pour démarrer votre intégration.

You can access community-supported SDKs for a variety of languages on GitHub. / Vous pouvez accéder aux SDK pris en charge par la communauté pour une variété de langues sur GitHub.

These SDKs include source code, samples, and documentation to get you started more quickly. /Ces kits de développement logiciel incluent du code source, des exemples et de la documentation pour vous permettre de démarrer plus rapidement.

  • C# SDK
  • Java SDK
  • Node SDK
  • PHP SDK
  • Ruby SDK
  • Python SDK

And, if you’re working with MobilePush or Content Builder, check out our app-specific SDKs. /Et, si vous travaillez avec MobilePush ou Content Builder, consultez nos SDK spécifiques à l’application.

  • MobilePush SDK
  • Content Builder SDK

With these tips and resources, you’ll be customizing your own integration in no time! And, as always, our community of Salesforce developers is here to help. /Avec ces conseils et ressources, vous personnaliserez votre propre intégration en un rien de temps! Et, comme toujours, notre communauté de développeurs Salesforce est là pour vous aider.

Resources /Ressources

4 réflexions sur « Make the Most of Your API Integrations /Tirez le meilleur parti de vos intégrations API »

  1. Wow that was unusual. I just wrote an really long comment but after I clicked submit my
    comment didn’t appear. Grrrr… well I’m not writing all that over
    again. Anyhow, just wanted to say fantastic blog!

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *