Présentation du WebService REST Wipsos

Cette aide à pour but de documenter la liste des points d'entrées du WebService ainsi que la structure permettant l'exploitation de ces points d'entrées.

Encodage et limite des URL

Les URL ont une longueur maximale de 2048 caractères et doivent être encodés en un sous-ensemble de caractères ASCII.

Exemple d'une URL non encodée : /V1/Client?Requete=[{"op":"between","rub":"DateCreation","valeur":["2000-01-01","2022-12-31"]}] 

La même URL encodée : /V1/Client?Requete=[{%22op%22:%22between%22,%22rub%22:%22DateCreation%22,%22valeur%22:[%222000-01-01%22,%222022-12-31%22]}]

Body

Le body est au format JSON

Format des données

Format des dates, heures et DatesHeures

Le format retenu pour les DatesHeures est le format ISO 8601 sans Timezone.


On a donc les dates en AAAA-MM-JJ, les heures HH:MM:SS.sss et les dateHeures AAAA-MM-JJTHH:MM:SS.sss


Format des Booléens

Les booléens respectent le format JSON: 

- Vrai a pour valeur "True".

- Faux a pour valeur "False"


Verbes disponibles

GET

Le verbe GET permet la lecture des données.

La structure JSON du body en retour est décrite dans la liste des points d'entrée.


Sauf indication contraire le retour est toujours un tableau de JSON.

POST

Le verbe POST permet l'ajout de données

PUT

Le verbe PUT permet la modification des données.

A la différence du verbe PATCH, le verbe PUT ne permet pas la modification partielle d'une ressource.

Il est obligatoire de transmettre un JSON complet

PATCH

Le verbe PATCH permet la modification des données.

A la différence du verbe PUT, le verbe PATCH permet la modification partielle d'une ressource.

Il n'est pas obligatoire de transmettre un JSON complet, seules les rubriques transmises dans le JSON seront prises en compte pour modification.

Exemple sur un PATCH client pour modifier uniquement la recherche client :


{   
    "CodeClient": 17546,
    "Recherche": "API_PATCH"
}


DEL

Le verbe DEL permet de supprimer des données.


Définition des structures

Pour chaque point d'entrée une définition des structures est fournie.

Exemple de structure (Agence)

Nom de la rubrique

Type de rubrique

Lecture seule

Obligatoire

Détail

Code

Chaîne(2)



Clé pour la Valeur

Libellé

Chaîne(30)




Nom de la rubrique : Nom de la rubrique dans le JSON

Type de rubrique : Type de la rubrique et taille dans le cas des chaînes

Lecture seule : La rubrique ne peut être renseignée pour les verbes POST et PATCH

Obligatoire : La rubrique doit obligatoirement être renseignée dans les verbes POST et PATCH

Détail : Explication si besoin sur la rubrique.


La résultat en JSON : 
{
    "Code": "01",
    "Libelle": "NORMANDIE *"
}