Champs personnalisés
Définissez et gérez le schéma de champs personnalisés pour les établissements et les clients de votre agence, et lisez ou écrivez les valeurs stockées pour une entité donnée. Le schéma de champs lui-même est valable pour toute l'agence ; les valeurs par entité restent restreintes aux clients pour lesquels une clé limitée est autorisée.
Renvoie le schéma de champs personnalisés défini pour le type d'entité donné (établissement ou client), dans l'ordre d'affichage dans l'interface.
Lister les définitions de champs personnalisés
/api/v1/custom-fields/definitions{
"data": [
{
"id": "cm_def_abc123",
"entityType": "location",
"key": "parking_notes",
"label": "Parking notes",
"type": "text",
"required": false,
"options": null,
"createdBy": "user",
"order": 0
}
]
}Ajoute un nouveau champ personnalisé au schéma pour le type d'entité donné. La clé du champ est dérivée de son étiquette et devient immuable par la suite ; les champs de type select nécessitent au moins une option.
Créer une définition de champ personnalisé
/api/v1/custom-fields/definitions{
"data": {
"definition": {
"id": "cm_def_abc123",
"entityType": "location",
"key": "parking_notes",
"label": "Parking notes",
"type": "text",
"required": false,
"options": null,
"createdBy": "user",
"order": 0
}
}
}Modifie l'étiquette, l'indicateur requis, les options ou l'ordre d'affichage d'une définition de champ personnalisé. Le type et la clé du champ ne peuvent pas être modifiés après création.
Mettre à jour une définition de champ personnalisé
/api/v1/custom-fields/definitions{
"data": {
"definition": {
"id": "cm_def_abc123",
"entityType": "location",
"key": "parking_notes",
"label": "Parking notes",
"type": "text",
"required": true,
"options": null,
"createdBy": "user",
"order": 0
}
}
}Archive une définition de champ personnalisé afin qu'elle n'apparaisse plus dans le schéma et n'accepte plus de nouvelles valeurs. Les valeurs déjà stockées sous sa clé ne sont pas affectées. Un definitionId inconnu ou déjà archivé n'a aucun effet, ce n'est pas une erreur.
Archiver une définition de champ personnalisé
/api/v1/custom-fields/definitions{
"data": {
"archived": true
}
}Renvoie les valeurs de champs personnalisés stockées sur un établissement ou un client, indexées par clé de champ.
Obtenir les valeurs de champs personnalisés d'une entité
/api/v1/custom-fields/values{
"data": {
"values": {
"parking_notes": "Free lot behind the building."
}
}
}Définit une valeur de champ personnalisé sur un établissement ou un client. Passez null (ou une valeur vide) pour vider le champ. La valeur est validée par rapport à la définition du champ — par exemple, la valeur d'un champ select doit être une de ses options définies.
Définir une valeur de champ personnalisé
/api/v1/custom-fields/values{
"data": {
"values": {
"parking_notes": "Free lot behind the building."
}
}
}