Contact référentiel
Permet de récupérer les contacts du répertoire de référence Coefficy.
Récupérer les contacts référentiel
GET/v1/refVisitCardRetourne la liste des contacts du référentiel avec leurs fonctions, coordonnées, données LinkedIn et informations de société. Les résultats sont triés par date de modification décroissante (modified DESC, idRefVisitCard).
Headers
| Nom | Type | Requis | Description |
|---|---|---|---|
| x-access-token | String | oui | Clé API |
Paramètres query
| Nom | Type | Requis | Description |
|---|---|---|---|
| idCompany | int|int[] | conditionnel | Identifiant(s) de société |
| siren | String|String[] | conditionnel | Numéro(s) SIREN |
| idRefVisitCard | int|int[] | conditionnel | Identifiant(s) du contact référentiel |
| String|String[] | conditionnel | Adresse(s) email | |
| linkedinId | String|String[] | conditionnel | Identifiant(s) LinkedIn |
| domain | String|String[] | conditionnel | Nom(s) de domaine de la société |
| linkedinIdCompany | String|String[] | conditionnel | Identifiant(s) LinkedIn de la société |
| leftCompany | boolean | non | true = contacts ayant quitté, false = en poste |
| onlyCurrentFunctions | boolean | non | true = fonctions actives uniquement |
| polling | int | conditionnel | Contacts modifiés dans les X dernières minutes (min. 15) |
| limit | int | non | Nombre de résultats par page (défaut : 100) |
| offset | int | non | Décalage pour la pagination |
TIP
Au moins un paramètre parmi idCompany, siren, idRefVisitCard, polling, email, linkedinId, linkedinIdCompany ou domain est obligatoire.
Réponses
200 — OK
json
{
"success": true,
"code": 200,
"parameters": {
"idCompany": "int[]|null",
"siren": "string[]|null",
"idRefVisitCard": "int[]|null",
"email": "string[]|null",
"linkedinId": "string[]|null",
"leftCompany": "boolean|null",
"onlyCurrentFunctions": "boolean|null",
"polling": "int|null",
"limit": "int",
"offset": "int|null",
"idAccount": "string|null",
"domain": "string[]|null",
"linkedinIdCompany": "string[]|null"
},
"refVisitCardList": [
{
"idRefVisitCard": "int",
"idContact": "int",
"idCompany": "int|null",
"lastName": "string|null",
"lastNameNormalized": "string|null",
"firstName": "string|null",
"firstNameNormalized": "string|null",
"fullName": "string|null",
"email": "string|null",
"phone": "string|null",
"mobile": "string|null",
"location": "string|null",
"isObsolete": "bool|null",
"leftCompany": "bool",
"linkedinId": "string|null",
"linkedinTechId": "string|null",
"linkedinUrl": "string|null",
"created": "datetime",
"modified": "datetime",
"functionList": [
{
"idRefVisitCardFunction": "int",
"idRefVisitCard": "int",
"idRefVisitCardFunctionSource": "int|null",
"isCurrent": "bool|null",
"isObsolete": "bool|null",
"name": "string|null",
"startDate": "date|null",
"endDate": "date|null",
"location": "string|null",
"created": "datetime",
"modified": "datetime",
"refVisitCardFunctionSource": {
"idRefVisitCardFunctionSource": "int",
"title": "string",
"frontTitle": "string|null",
"created": "datetime",
"modified": "datetime"
},
"personaMatchList": [
{
"idPersona": "int",
"idUser": "int|null",
"idAccount": "string|null",
"title": "string",
"description": "string|null",
"isActive": "bool|null",
"isActiveSociete": "bool|null",
"order": "int|null",
"created": "datetime|null",
"modified": "datetime|null",
"isDeleted": "bool|null",
"idPersonaRef": "int|null"
}
]
}
],
"company": {
"idCompany": "int|null",
"siren": "string|null",
"name": "string|null",
"commercialName": "string|null"
}
}
]
}Notes :
location(au niveau contact et au niveau fonction) est une chaîne libre issue de LinkedIn (ex."Lille, Hauts-de-France, France"), pas un objet structuré.linkedinUrlest construit à partir de l'identifiant LinkedIn le plus récent du contact.- Ce schéma aplati est celui renvoyé aux clés API externes. Les comptes internes Coefficy (admin) reçoivent la structure brute du modèle (avec
firstName/lastNamesous l'objetrefContact, sanslocationnipersonaMatchList) ; ils peuvent forcer le format aplati ci-dessus en passant?noAdmin=1.
TIP
personaMatchList est toujours un tableau (éventuellement vide []). Il contient les personas du compte dont au moins un intitulé-type configuré matche le name de la fonction (toutes les personas activées en mode "fiche société" du compte sont prises en compte, indépendamment de l'utilisateur qui les a créées).
400 — Bad Request
json
{
"success": false,
"code": 400,
"message": "Paramètre idCompany, siren, idRefVisitCard, polling, email, linkedinId, linkedinIdCompany ou domain est nécessaire",
"parameters": {}
}403 — Forbidden
json
{
"success": false,
"code": 403,
"message": "L'abonnement n'a pas accès à ces données",
"parameters": {}
}