Download OpenAPI specification:Download
Cette API offre différents services permettant de gérer des documents O2S ainsi que les informations liées.
Pour ce faire, plusieurs ressources sont à disposition, à savoir :
Document
: Permet de gérer l'entité de base de cette API que sont les documents.Catégorie
: Permet de gérer les catégories des documents.Dans le cadre de la mise à disposition de l’API, HARVEST s’engage à effectuer pour le compte du Client responsable de traitement, les opérations de traitement de données à caractère personnel en qualité de sous-traitant. A ce titre, HARVEST et le Client s’engagent à respecter la réglementation en vigueur applicable au traitement de données à caractère personnel en particulier, le règlement (UE) 2016/679 du Parlement européen et du Conseil du 27 avril 2016 (ci-après le « RGPD »).
L’API peut vous permettre de renseigner librement des propriétés typées et non typées. HARVEST attire votre attention sur la nécessité, lors de la complétude de ces propriétés, de respecter les dispositions du RGPD. Dès lors, seules les données adéquates, pertinentes et strictement nécessaires au regard de la finalité des traitements réalisés par l’API doivent être transmises.
L’API contient par ailleurs des zones de commentaires libres dans lesquelles vous devez impérativement rédiger des commentaires objectifs, jamais excessifs ou insultants. Aussi, vous devez exclure toute donnée considérée comme sensible (origine raciale ou ethnique, opinions politiques, philosophiques ou religieuses, appartenance syndicale, données relatives à la santé ou à la vie sexuelle, infractions, condamnations, mesure de sûreté). En cas de doute, vous pouvez contacter votre DPO qui vous indiquera ce qu’il est possible de rédiger pour ne pas porter atteinte aux droits des personnes concernées.
Pour utiliser l'API O2S, vous devez préalablement vous authentifier en suivant le protocole OAuth2 "password grant type" afin de récupérer un jeton (JWT) d'accès.
Les informations nécessaires à l'obtention d'un jeton sont constituées :
Il vous faut renseigner ces informations dans la ressource en entrée du service d'obtention d'un nouveau jeton.
Le jeton JWT doit être fourni lors de l'appel de chaque requête à l'API. Il doit être ajouté dans
l'entête HTTP Authorization comme ceci :
Authorization: Bearer <JWT>
Le jeton JWT d'accès à exploiter est retourné dans valeur de la propriété access_token
.
Il doit être précisé dans l'entête HTTP de toutes les requêtes (sauf celle d'authentification) comme ceci :
Authorization: Bearer <access_token>
grant_type required | string Value: "password" Méthode d'authentification OAuth à définir obligatoirement à |
client_id required | string Identifiant de l'application cliente. |
client_secret required | string Secret de l'application cliente. |
username required | string Identifiant de connexion de l'utilisateur. |
password required | string Mot de passe de l'utilisateur. |
grant_type=password&client_id=clientId&client_secret=clientSecret&username=username&password=password
{- "access_token": "eyJhbGciOi...fgWOZZmV7Q",
- "expires_in": 86400,
- "refresh_expires_in": 86400,
- "refresh_token": "eyJhbGciOi...KiIVIifWw",
- "token_type": "bearer",
- "not-before-policy": 1602682985,
- "session_state": "85d20350-891b-4dad-b6ed-c411c6ac870c",
- "scope": "..."
}
Les réponses principales de l'API sont décrites au niveau de chacune de ses ressources (GET, POST, PUT, DELETE...).
Celles qui n'y sont pas spécifiées sont celles retournées en cas de problème soit avec la requête elle-même soit avec le serveur ou son environnement.
Les statuts HTTP concernés par ces dernières sont les 4xx (hors 404) et 5xx.
Le format des réponses répond au schéma Problem Zalando.
Récupère une liste de Document
correspondant aux critères facultatifs de recherche.
Par défaut :
contactId | string Example: contactId=ec3dee9a-a6fc-11e9-b9bd-0050568a56f0 Référence (id) du contact détenteur des documents recherchés |
type | string (TypeDoc) Enum: "IDENTITE" "JUSTIFICATIF_DOMICILE" "JUSTIFICATIF_AUTRE" "INFORMATION_LEGALE" "AUTRE" Le type de document:
|
contenu | boolean Default: false Permet d'indiquer si le contenu du document est récupéré. |
limit | integer Default: 20 Nombre maximum de documents à retourner |
offset | integer Default: 0 Indice (0-based) du premier document à retourner |
[- {
- "id": "string",
- "libelle": "string",
- "type": "IDENTITE",
- "dateCreation": "2019-08-24T14:15:22Z",
- "dateMaj": "2019-08-24T14:15:22Z",
- "contenu": {
- "nature": "string",
- "format": "TXT",
- "donnees": [
- "string"
]
}, - "ressourcesLiees": [
- {
- "type": "CONTACT",
- "id": "string"
}
], - "metaDonnees": {
- "donnees": [
- {
- "cle": "string",
- "valeur": "string",
- "app": "string"
}
]
}
}
]
Crée un nouvel Document
.
Les données d'un Document
à créer.
id | string Identification du document. |
libelle | string Libellé générique du document. |
type | string (TypeDoc) Enum: "IDENTITE" "JUSTIFICATIF_DOMICILE" "JUSTIFICATIF_AUTRE" "INFORMATION_LEGALE" "AUTRE" Le type de document:
|
dateCreation | string <date-time> Date et heure de création d'un document. |
dateMaj | string <date-time> Dernière date et heure de modification d'un document. |
object Extension | |
Array of objects (TypeDocumentRessourceLiee) Extension | |
object Extension |
{- "id": "string",
- "libelle": "string",
- "type": "IDENTITE",
- "dateCreation": "2019-08-24T14:15:22Z",
- "dateMaj": "2019-08-24T14:15:22Z",
- "contenu": {
- "nature": "string",
- "format": "TXT",
- "donnees": [
- "string"
]
}, - "ressourcesLiees": [
- {
- "type": "CONTACT",
- "id": "string"
}
], - "metaDonnees": {
- "donnees": [
- {
- "cle": "string",
- "valeur": "string",
- "app": "string"
}
]
}
}
{- "id": "string"
}
Récupère les données d'un unique Document
.
documentId required | string (TypeId) [ 1 .. 100 ] characters Référence (id) du document |
contenu | boolean Default: true Permet d'indiquer si le contenu du document est récupéré. |
{- "id": "string",
- "libelle": "string",
- "type": "IDENTITE",
- "dateCreation": "2019-08-24T14:15:22Z",
- "dateMaj": "2019-08-24T14:15:22Z",
- "contenu": {
- "nature": "string",
- "format": "TXT",
- "donnees": [
- "string"
]
}, - "ressourcesLiees": [
- {
- "type": "CONTACT",
- "id": "string"
}
], - "metaDonnees": {
- "donnees": [
- {
- "cle": "string",
- "valeur": "string",
- "app": "string"
}
]
}
}
Met à jour un Document
existant.
documentId required | string (TypeId) [ 1 .. 100 ] characters Référence (id) du document |
Les données d'un Document
à mettre à jour.
id | string Identification du document. |
libelle | string Libellé générique du document. |
type | string (TypeDoc) Enum: "IDENTITE" "JUSTIFICATIF_DOMICILE" "JUSTIFICATIF_AUTRE" "INFORMATION_LEGALE" "AUTRE" Le type de document:
|
dateCreation | string <date-time> Date et heure de création d'un document. |
dateMaj | string <date-time> Dernière date et heure de modification d'un document. |
object Extension | |
Array of objects (TypeDocumentRessourceLiee) Extension | |
object Extension |
{- "id": "string",
- "libelle": "string",
- "type": "IDENTITE",
- "dateCreation": "2019-08-24T14:15:22Z",
- "dateMaj": "2019-08-24T14:15:22Z",
- "contenu": {
- "nature": "string",
- "format": "TXT",
- "donnees": [
- "string"
]
}, - "ressourcesLiees": [
- {
- "type": "CONTACT",
- "id": "string"
}
], - "metaDonnees": {
- "donnees": [
- {
- "cle": "string",
- "valeur": "string",
- "app": "string"
}
]
}
}
Récupère une liste de Catégories Document
correspondant aux critères de recherche.
contactId required | string (TypeId) [ 1 .. 100 ] characters Example: contactId=ec3dee9a-a6fc-11e9-b9bd-0050568a56f0 Référence (id) du contact |
[- {
- "nom": "Email",
- "id": "f3a79c3b-ae2a-11e9-bc38-0050568a56f0"
}, - {
- "nom": "Mon dossier",
- "id": "6505c667-4d37-11ec-a6eb-0050568ae49b",
- "parent-id": "f3a79c3b-ae2a-11e9-bc38-0050568a56f0"
}, - {
- "nom": "Email niveau 1",
- "id": "6505c667-4d37-11ec-a6eb-0050568ae49b",
- "parent-id": "f3a79c3b-ae2a-11e9-bc38-0050568a56f0"
}, - {
- "nom": "Conformité",
- "id": "f39c042f-ae2a-11e9-bc38-0050568a56f0"
}, - {
- "nom": "Mon dossier",
- "id": "cf843b40-543a-11ec-82f4-0050568ae49b",
- "parent-id": "f39c042f-ae2a-11e9-bc38-0050568a56f0"
}, - {
- "nom": "Conformité niveau 2",
- "id": "6028c884-543c-11ec-82f4-0050568ae49b",
- "parent-id": "cf843b40-543a-11ec-82f4-0050568ae49b"
}
]