Aller au contenu principal

Champs utilisateur

Endpoints pour définir et gérer les champs personnalisés (ChampsUtilisateur). Module requis : MaCarteDeMembre.

Pour le guide complet (types, scoping, assignation), voir Champs personnalisés.

Liste des champs

GET /b2b/v1/champsUtilisateur

Réponse

[
{
"nom": "departement",
"label": "Département",
"ordre": 1,
"typeChampUtilisateurId": "00000000-0000-0000-0000-000000000004",
"typeChampUtilisateurNom": "Texte",
"estRequis": false,
"maxLength": 100,
"texteAide": "Département opérationnel du membre.",
"choix": [],
"employeurs": [
{ "identifiantExterne": "EMPL-001", "nom": "Entreprise ABC" }
]
}
]

Obtenir un champ

GET /b2b/v1/champsUtilisateur/{nom}

Paramètres

NomEmplacementTypeDescription
nomPathstringIdentifiant interne du champ (slug)

Créer un champ

POST /b2b/v1/champsUtilisateur

Corps de la requête

{
"nom": "statut_rh",
"typeChampUtilisateurId": "00000000-0000-0000-0000-000000000001",
"label": "Statut RH",
"ordre": 2,
"estRequis": true,
"maxLength": 0,
"texteAide": null
}

Types de champs

GUIDTypeNotes
...001ChoixListe déroulante (configurer avec PUT /choix)
...002DateSaisie de date
...003BooléenCase à cocher
...004TexteTexte libre, maxLength actif

Erreurs possibles

CodeHTTPSignification
ChampUtilisateur.NomExiste400Le nom est déjà utilisé
ChampUtilisateur.TypeChampInvalide400GUID de type inconnu
ChampUtilisateur.MaxLengthTropGrand400maxLength dépasse la limite serveur

Modifier un champ

PUT /b2b/v1/champsUtilisateur/{nom}

Corps de la requête

{
"label": "Département d'affectation",
"ordre": 1,
"estRequis": true,
"maxLength": 150,
"texteAide": "Département RH actuel."
}

Le type ne peut pas être modifié. Pour changer de type, créez un nouveau champ et migrez les valeurs.


Définir le scope employeurs

PUT /b2b/v1/champsUtilisateur/{nom}/employeurs

Restreint le champ à un sous-ensemble d'employeurs. Liste vide = applicable partout.

Corps de la requête

{
"idExternes": ["EMPL-001", "EMPL-002"]
}

Définir les choix (champs de type Choix)

PUT /b2b/v1/champsUtilisateur/{nom}/choix

Remplace la liste complète des options. Préservez les idExterne existants pour conserver les affectations.

Corps de la requête

{
"choix": [
{ "idExterne": "ACT", "label": "Actif", "ordre": 1 },
{ "idExterne": "INA", "label": "Inactif", "ordre": 2 },
{ "idExterne": "RET", "label": "Retraité", "ordre": 3 }
]
}

Erreurs possibles

CodeHTTPSignification
ChampUtilisateur.PasTypeChoix409Le champ n'est pas de type Choix
ChampUtilisateur.ChoixExiste400Doublon dans la liste de choix

Supprimer un champ

DELETE /b2b/v1/champsUtilisateur/{nom}

Retire le champ et toutes les valeurs affectées. Irréversible.


Voir aussi