Client API Documentation

La ClientAPI Axeptio est une API RESTful JSON / HTTP qui vous permet d'automatiser la configuration et l'administration d'Axeptio. Elle permet la réalisation des tâches suivantes : ‍ * Liste des projets et récupération de leur configuration * Création et modification de projets * Création de formulaires de recueil de consentement * Récupération de tous les tokens pour un projet * Historique et état des consentement pour un token et un projet donnés * Recherche de tous les tokens ayant accepté un consentement particulier

Crawlabilité de l'API

La ClientAPI Axeptio est conçue pour être facilement parcourable, tant par un développeur que par une machine. Un objet `links` est présent systématiquement et affiche les liens liés à la ressource consultée.

Authentification

Chaque requête effectuée sur l'API Axeptio doit être authentifiée par un Bearer Token obtenu par une authentification préalable. Pour obtenir votre token, il vous faut vous identifier exécutant la requête suivante :

HTTP POST https://api.axept.io/v1/auth/local/signin

En passant en payload les informations de connexion :

{
  "username": "the email address you associated to the account",
  "password": "hopefully not 123456"
}

Cette méthode va ensuite retourner un token que vous pourrez utiliser pour authentifier les requêtes consécutives. Soit en définissant le header `Authorization: Bearer ${token}`, soit en ajoutant le paramètre `?access_token=${token}`aux URLs appelées.

Anatomie d'un projet

Un projet Axeptio est composé des propriétés suivantes : * `active`: Booléan indiquant si le projet est actif (pas de bandeau de démo) * `configuration`: Objet comprenant le détail du projet * `name`: Intitulé du projet (affiché aux utilisateurs dans la page de détail du consentement) * `website`: URL du site internet sur lequel s'applique ce projet. * `dataProcessor`: Informations relatives au responsable du traitement des données personnelles. * `documents`: Liste des documents contractuels soumis à l'approbation des utilisateurs. * `processingActivities`: Liste des traitements des données pour lesquels un consentement est requis.

Documents

Un document est un fichier que vous présentez à l'utilisateur afin qu'il l'approuve. Il peut s'agit de CGU / CGV ou tout autre document. L'objet document est constitué des propriétés suivantes : * `identifier`: Identifiant unique du document (par ex: cgv, nda). * `name`: Nom du document tel qu'affiché dans l'encart de recueil de consentement * `language`: Identifiant de langue ISO 638-1 du fichier source. * `file`: Détails sur le fichier uploadé * `originalName`: Nom du fichier uploadé * `uploadedAt`: Date et heure à laquelle le fichier a été uploadé * `size`: Poids du fichier en octets.

Les traitements des données personnelles (newsletter, …) Axeptio structure les traitements des données personnelles selon les exigences du GDPR. ‍ * `identifier`: Identifiant unique du traitement (par ex: prospection ou newsletter). * `name`: Nom du traitement affiché dans l'encart de recueil de consentement * `language`: Identifiant de langue ISO 638-1 du détail du consentement. * `personalDataTypes`: Types de données personnelles traitées * `dataTransferThirdParties`: Liste des tiers ayant accès aux données personnelles * `consentWithdrawProcedure`: Procédure de retrait du consentement (texte) * `accept`: Phrase d'acceptation univoque et spécifique soumise à l'utilisateur final.

Récupération des projets

HTTP GET https://api.axept.io/v1/client/

Retourne un tableau de tous les projets

Récupération d'un projet

HTTP GET https://api.axept.io/v1/client/:id

Retourne les détails du projet spécifié en paramètre

Récupération des tokens d'un projet

HTTP GET https://api.axept.io/v1/client/:id/tokens

* Résultats paginés*Retourne les détails du projet spécifié en paramètre

Récupération des consentements

HTTP GET https://api.axept.io/v1/client/:id/consents/:token

* Résultats paginés * Retourne un objet contenant * `state` => états des consentements du token pour tous les traitements et documents configurés dans le projet * `history` => liste des événements de consentement

Liste des tokens ayant donné un consentement spécifique

HTTP GET https://api.axept.io/v1/client/:id/tokens/accepted/:identifier

Permet de récupérer la liste de tous les tokens ayant donné un consentement spécifique. Cas d'usage : avant l'envoi d'une newsletter, permet de créer une liste à jour de tous emails afin de vérifier qu'ils sont bien à inclure dans l'envoi.

Last updated