Authentification
Authentification
Chaque requête porte une clé secrète dans l'en-tête Authorization. Il n'existe aucune autre voie d'entrée, et aucune requête n'est jamais authentifiée par un cookie de session.
Clés
Une clé ne s'affiche qu'une seule fois, au moment de sa création. Conservez-la là où vos serveurs peuvent la lire et où un navigateur ne le peut pas.
- pc_sk_live_…
- pc_sk_test_…
Le test et le direct restent séparés
Le mode est inscrit dans la clé elle-même plutôt que passé en paramètre : une clé de test ne peut donc ni lire ni modifier des données en direct. Une requête mal aiguillée échoue au lieu d'atteindre le mauvais catalogue. Les passeports de test sont supprimés 90 jours après la dernière modification du passeport lui-même.
Envoyer la clé
Authentification Bearer sur HTTPS. Rien d'autre n'est accepté, et une requête sans l'en-tête est refusée avant d'atteindre la moindre ressource.
curl "https://passportcraft.com/api/v1/whoami" \
-H "Authorization: Bearer pc_sk_live_…"Les identifiants côté navigateur ne sont volontairement pas pris en charge. Une clé se place sur un serveur ; une clé dans du code front-end est une clé publiée.
Portées
Une clé porte un ensemble fixe de portées, choisi à sa création. Une requête dépourvue de la portée exigée par son point de terminaison est refusée, et le refus nomme la permission manquante.
documents:read
documents:write
passports:read
- get
/organizations/{organization}/capabilitiesDécrire ce que cette clé peut faire pour cette organisation. - get
/organizations/{organization}/passportsLister les passeports. - get
/organizations/{organization}/passports/{id}Récupérer un passeport. - post
/organizations/{organization}/passports/{id}/validateVérifier un passeport au regard de son schéma de catégorie, sans enregistrer. - get
/organizations/{organization}/passports/{id}/linksRécupérer l’URL publique et le GS1 Digital Link. - get
/organizations/{organization}/passports/{id}/affichageLire l’état de l’affichage environnemental français. - get
/organizations/{organization}/importsLister les tâches d’import. - get
/organizations/{organization}/imports/{id}Récupérer une tâche d’import et son avancement.
passports:write
- post
/organizations/{organization}/passportsCréer un passeport. - patch
/organizations/{organization}/passports/{id}Appliquer un JSON Merge Patch à un passeport. - post
/organizations/{organization}/passports/{id}/publishPublier un passeport. - post
/organizations/{organization}/passports/{id}/unpublishDépublier un passeport. - post
/organizations/{organization}/passports/{id}/trashMettre un passeport à la corbeille. - post
/organizations/{organization}/passports/{id}/restoreRestaurer un passeport depuis la corbeille. - post
/organizations/{organization}/importsLancer un import en masse asynchrone.
Aucune portée requise
Une clé valide suffit. Ces points de terminaison ne renvoient rien qui appartienne à une organisation en particulier.