Accès public par l’entremise de l’API
2018-09-18Le site Web offre désormais un accès public à la base de données sur les pénuries et les cessations de vente de médicaments par l’entremise d’une interface de programmation d’applications (API). L’API permet aux développeurs d’accéder à l’information au moyen d’une API Web REST, qui renvoie du contenu en format JSON qu’ils peuvent utiliser dans leurs propres applications. Les points d’entrée précisés ci après sont disponibles.
Paramètres d’accès
URL de base | https://www.drugshortagescanada.ca/api/v1 |
---|---|
Type de contenu | application/json |
Encodage du paramètre | application/x-www-form-urlencoded |
En-tête de l’autorisation | auth-token |
Formats des réponses
Toutes les demandes renvoient du texte JSON dans l’un des formats suivants.
Erreur
Une demande non valide comprendra un message d’erreur avec une explication en français et en anglais.
{"error" :{"en" : "", "fr" : ""}}
Liste
Une liste, comme la requête de recherche, renverra des données paginées dans l’objet suivant :
- total = nombre total d’objets correspondant à la demande
- limite = nombre maximal d’objets renvoyés dans la demande unique
- écart = index de départ de la réponse (par défaut : 0)
- page = page actuelle selon la limite et les valeurs d’écart
- restant = nombre d’objets disponibles après la page actuelle (utilisé pour le téléchargement de la liste infinie)
- donnée = tableau des données demandées
- total_pages = nombre total de pages disponibles pour la demande
Objet
Les demandes générant un seul objet renverront un objet standard en format JSON.
Limitation du trafic
Pour des raisons de disponibilité, une limite de 1 000 demandes par heure a été fixée pour chaque compte. Toute demande dépassant cette limite générera un message 429. Si vous souhaitez augmenter cette limite, veuillez utiliser le formulaire de demande pour préciser vos besoins.
Points d’entrée
Pour s’authentifier avec succès, l’utilisateur doit posséder un compte Web valide, qui requiert un courriel vérifié. Un en-tête d’autorisation devra être utilisé pour toutes les demandes subséquentes.
Connexion
Chemin | login |
---|---|
En-tête d’autorisation | S.O. |
Méthode | POST |
Paramètres |
|
Codes de réponse |
|
Données de réponse |
Si une demande est invalide, un message d’erreur est envoyé. Une demande valide générera un objet contenant ces clés.
Un jeton d’utilisateur valide sera envoyé dans l’en-tête « auth-token » avec la date d’expiration pertinente dans la clé « expiry-date ». |
La demande de connexion fournit un jeton d’accès requis par les autres points d’entrée. Ce jeton accepte la combinaison de courriel et de mot de passe utilisée pour le site Web.
Recherche de rapports
Chemin | search |
---|---|
En-tête d’autorisation | auth-token : {jeton d’accès de l’utilisateur} |
Méthode | GET |
Paramètres |
|
Codes de réponse |
|
Données de réponse |
Si une demande est invalide, un message d’erreur est envoyé. Une demande valide générera une liste d’objets dans le format susmentionné. |
Cette requête de recherche générale générera une liste de rapports sur les pénuries et les cessations de vente en fonction des paramètres fournis.
Rapport de pénurie unique
Chemin | shortages/{ID du rapport de pénurie} |
---|---|
En-tête d’autorisation | auth-token : {jeton d’accès de l’utilisateur} |
Méthode | GET |
Paramètres | aucun |
Codes de réponse |
|
Données de réponse |
Si une demande est invalide, un message d’erreur est envoyé. Une demande valide générera un seul objet contenant un rapport détaillé. |
Cette demande fournira un aperçu plus détaillé de l’objet de rapport tiré de la liste.
Rapport de cessation de vente unique
Chemin | discontinuances/{ID du rapport de cessation de vente} |
---|---|
En-tête d’autorisation | auth-token : {jeton d’accès de l’utilisateur} |
Méthode | GET |
Paramètres | aucun |
Codes de réponse |
|
Données de réponse |
Si une demande est invalide, un message d’erreur est envoyé. Une demande valide générera un seul objet contenant un rapport détaillé. |
Cette demande fournira un aperçu plus détaillé du rapport choisi.