Reach 360 : présentation de l'API Reach 360

Dernière mise à jour de l’article le

Cet article s'applique à :

L'API Reach 360 est organisée autour de REST. Notre API possède des URL orientées ressources prévisibles, accepte les corps de requête codés en JSON, renvoie des réponses codées en JSON et utilise des codes de réponse, une authentification et des verbes HTTP standard.

Pour les dernières mises à jour, consultez le journal des modifications.

Cliquez ici pour savoir comment générer des clés d'API dans Reach 360.

Authentification

Votre clé API est utilisée pour authentifier les demandes et identifier votre compte Reach 360. Il doit être stocké de manière sécurisée : assurez-vous qu'il n'est pas soumis au contrôle de version et qu'il ne soit accessible qu'à ceux qui en ont besoin. Traitez-le comme n'importe quel autre mot de passe.

Toutes les demandes d'API doivent utiliser l'authentification au porteur : votre clé d'API doit être fournie sous forme de jeton porteur dans l'Authorizationen-tête. Toutes les demandes d'API doivent être effectuées via HTTPS. Les appels effectués via le protocole HTTP standard échoueront. Les demandes d'API sans authentification échoueront également.

Versionnage

Lorsque des modifications non rétrocompatibles seront apportées à notre API, nous publierons une nouvelle version datée de l'API. La version initiale de l'API 2023-04-04 sera supposée lorsque vos demandes n'incluent pas d'API-Versionen-tête.

Lorsqu'un en-tête de version d'API non valide est fourni, vous recevrez une réponse 400 avec le code d'erreurinvalid_api_version. Les demandes d'API réussies incluront un en-tête de API-Version réponse indiquant la version d'API utilisée par votre demande.

Chaque fois qu'une nouvelle version d'API est publiée, nous l'indiquons explicitement dans notre journal des modifications, en plus de créer une nouvelle entrée sur la page des versions de l'API.

Exemple de demande

curl -i < https://api.reach360.com/users > \ \ 
 -H « Autorisation : porteur $API_KEY » -H « Version de l'API : 16/07/2020 » 
 

Pagination

Tous les points de terminaison paginés sont basés sur un curseur et renvoient une propriété. nextUrl Si ce n'est pas null le cas, cela nextUrl indique qu'il pourrait y avoir d'autres résultats. Une GET demande peut être faite à l'nextUrlURL pour obtenir la page de résultats suivante. Un nextUrl de null indique qu'il n'y a aucun autre résultat. Tous les points de terminaison paginés prennent en charge un paramètre de chaîne de limit requête qui indique le nombre maximal de résultats à renvoyer dans une seule réponse. Tous les points de terminaison qui renvoient une liste de résultats prennent en charge la pagination.

Remarque : La limit valeur doit être comprise entre 1 et 100 (sauf indication contraire ; la valeur par défaut est 50 si elle n'est pas spécifiée).

Points de terminaison prenant en charge la pagination

  • GET /courses
  • GET /groups
  • GET /groups/{groupId}/users
  • GET /invitations
  • GET /learning-paths
  • GET /learning-paths/{learningPathId}
  • GET /learning-paths/{learningPathId}/courses
  • GET /reports/activity
  • GET /reports/courses/{courseId}
  • GET /reports/learners/{userId}
  • GET /reports/learning-paths/{learningPathId}/courses
  • GET /reports/learning-paths/{learningPathId}/learners
  • GET /users
  • GET /users/{userId}/groups
  • GET /webhooks

Erreurs

Une réponse 400 contenant une liste de errors sera renvoyée lorsque la demande n'est pas valide. Voici quelques codes d'erreur courants :

  • validation_failed: le corps de la demande contient une erreur de validation
  • invalid_email: L'adresse e-mail de la email propriété n'est pas correctement formatée
  • missing_api_key: il manque une clé d'API dans la demande
  • invalid_api_key: La clé d'API fournie n'est pas valide
  • invalid_content_type: La demande est manquante/le type de contenu est incorrect

Exemple de réponse

{
« errors » : [
{
« code » : « invalid_email », 
 « message » : « \ \" email \ \ » doit être un e-mail valide »
}]} 
 
 

Assistance

Nous sommes ravis que vous connectiez Reach 360 aux outils que vous utilisez le plus. Le support peut confirmer si les appels d'API fonctionnent comme prévu, mais nous ne pouvons pas vous empêcher d'écrire des scripts personnalisés ou de déboguer des applications tierces.

Si vous rencontrez un problème, nous ferons de notre mieux pour vous aider à le résoudre en vous demandant :

  • La version la plus simple de l'appel que vous effectuez avec l'API
  • Si le problème peut être reproduit en dehors de votre application
  • En-têtes de demande, en-têtes de réponse (y compris l'en-tête X-Request-Id), corps de demande et corps de réponse

Contactez notre équipe et dites-nous ce qui se passe. C'est à partir de là que nous allons nous occuper !