# Models

## The ErrorResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ErrorResponse":{"type":"object","properties":{"code":{"type":"string","description":"Code d'erreur unique préfixé par `DAERR-`"},"message":{"type":"string","description":"Description lisible de l'erreur"},"url":{"type":"string","format":"uri","description":"Lien vers la documentation détaillée de l'erreur"},"api_version":{"type":"string"},"infos":{"type":"array","items":{},"description":"Informations contextuelles supplémentaires (peut être vide)"},"server_time":{"type":"string","description":"Timestamp Unix sous forme de chaîne"}}}}}}
```

## The PasswordGrantRequest object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"PasswordGrantRequest":{"type":"object","required":["client_id","client_secret","grant_type","username","password"],"properties":{"client_id":{"type":"string","description":"Identifiant d'application OAuth2"},"client_secret":{"type":"string","description":"Clé secrète OAuth2"},"grant_type":{"type":"string","enum":["password"]},"username":{"type":"string","format":"email","description":"Adresse e-mail de l'utilisateur"},"password":{"type":"string","format":"password","description":"Mot de passe de l'utilisateur"}}}}}}
```

## The RefreshTokenGrantRequest object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"RefreshTokenGrantRequest":{"type":"object","required":["client_id","client_secret","grant_type","refresh_token"],"properties":{"client_id":{"type":"string","description":"Identifiant d'application OAuth2"},"client_secret":{"type":"string","description":"Clé secrète OAuth2"},"grant_type":{"type":"string","enum":["refresh_token"]},"refresh_token":{"type":"string","description":"Jeton de rafraîchissement"}}}}}}
```

## The TokenResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"TokenResponse":{"type":"object","properties":{"access_token":{"type":"string","description":"À utiliser dans l'en-tête `Authorization: Bearer`"},"refresh_token":{"type":"string","description":"À conserver pour le rafraîchissement des jetons"},"expires_in":{"type":"integer","description":"Durée de validité du jeton d'accès en secondes (3600)"},"token_type":{"type":"string"},"scope":{"type":"string"}}}}}}
```

## The App object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"App":{"type":"object","properties":{"name":{"type":"string","description":"Nom visible pour l'utilisateur"},"short":{"type":"string","description":"Nom court à utiliser comme préfixe `{app_short}` dans les appels suivants"},"description":{"type":"string","description":"Description renseignée par l'administrateur"},"settings":{"type":"object","additionalProperties":true,"description":"Paramètres supplémentaires de l'instance"},"android_map":{"type":"boolean","description":"Indique si les cartes sont activées sur Android"},"is_model":{"type":"boolean","description":"Vrai si l'instance est un modèle de vertical métier"}}}}}}
```

## The FileUploadResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"FileUploadResponse":{"type":"object","properties":{"uuid":{"type":"string","format":"uuid","description":"Référencez cet UUID dans les champs de fiche de type image/signature/fichier"},"mime-type":{"type":"string","description":"Type MIME du fichier"},"size":{"type":"integer","description":"Taille du fichier en octets"}}}}}}
```

## The Structure object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Structure":{"type":"object","properties":{"id":{"type":"integer","description":"Identifiant du formulaire"},"version":{"type":"integer","description":"Numéro de version"},"name":{"type":"string","description":"Nom affiché"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"settings":{"type":"object","additionalProperties":true,"description":"Paramètres du formulaire"},"conditions":{"type":"array","items":{"$ref":"#/components/schemas/Condition"},"description":"Liste des conditions"},"fields":{"type":"array","items":{"$ref":"#/components/schemas/Field"},"description":"Liste des champs"},"layout":{"type":"object","description":"Pages et positions des champs","properties":{"pages":{"type":"array","items":{}},"fields":{"type":"array","items":{}}}},"workflows":{"type":"array","items":{"$ref":"#/components/schemas/Workflow"},"description":"Workflows du formulaire (si présents)"},"triggers":{"type":"array","items":{"$ref":"#/components/schemas/Trigger"},"description":"Personnalisation des transitions du workflow"}}},"Condition":{"type":"object","description":"Condition de visibilité d'un champ","properties":{"uuid":{"type":"string","format":"uuid","description":"Identifiant de la condition"},"name":{"type":"string","description":"Nom de la condition"},"cdt":{"type":"string","description":"Condition au format JavaScript"},"fields":{"type":"array","items":{"type":"string"},"description":"Champs utilisés dans la condition"},"json_format":{"type":"array","description":"Condition au format JSON","items":{"type":"object","properties":{"field":{"type":"string"},"value":{"type":"string"},"operator":{"type":"string"}}}}}},"Field":{"type":"object","description":"Définition d'un champ de formulaire","properties":{"name":{"type":"string","description":"Nom système du champ — utilisé comme clé dans les `items` d'une fiche"},"label":{"type":"string","description":"Nom affiché"},"position":{"type":"integer","description":"Position dans le formulaire"},"type":{"type":"string","description":"Type de champ : text, number, boolean, date, duration, phone, email, location, image, signature, file, list, relation, user, label…\n"},"enable":{"type":"boolean","description":"Champ activé ou non"},"required":{"type":"boolean","description":"Champ requis ou non"},"prefill":{"type":"boolean","description":"Peut être pré-rempli sur le mobile"},"readonly":{"type":"boolean","description":"Non modifiable sur le mobile"},"searchable":{"type":"boolean","description":"Peut être utilisé dans la recherche"}}},"Workflow":{"type":"object","description":"Workflow d'un formulaire","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","description":"Nom du workflow"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"start_state":{"type":"string","format":"uuid","description":"État initial du workflow"},"states":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowState"},"description":"Liste des états"},"transitions":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowTransition"},"description":"Liste des transitions"}}},"WorkflowState":{"type":"object","description":"État d'un workflow","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","description":"Nom affiché"},"color":{"type":"string","description":"Couleur hexadécimale (ex. `#FF9800`)"},"end":{"type":"boolean","description":"Si vrai, les fiches dans cet état ne peuvent plus être modifiées"}}},"WorkflowTransition":{"type":"object","description":"Transition entre deux états","properties":{"id":{"type":"string","format":"uuid"},"from":{"type":"string","format":"uuid","description":"État source"},"to":{"type":"string","format":"uuid","description":"État cible"},"label":{"type":"string","description":"Libellé de la transition"}}},"Trigger":{"type":"object","description":"Personnalise l'apparence d'une transition de workflow sous forme de bouton","properties":{"id":{"type":"string","format":"uuid"},"type":{"type":"string"},"transition_id":{"type":"string","format":"uuid","description":"Identifiant de la transition associée"},"color":{"type":"string","description":"Couleur du bouton"},"label":{"type":"string","description":"Libellé du bouton"}}}}}}
```

## The StructureListResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"StructureListResponse":{"type":"object","properties":{"structures":{"type":"array","items":{"$ref":"#/components/schemas/Structure"},"description":"Liste des formulaires"},"total_count":{"type":"integer","description":"Nombre total de formulaires"},"total_pages":{"type":"integer","description":"Nombre total de pages"},"next_page":{"type":"integer","description":"Numéro de la page suivante"},"server_time":{"type":"integer","format":"int64","description":"Date courante du serveur (timestamp UNIX)"},"workflows":{"type":"array","items":{"$ref":"#/components/schemas/Workflow"},"description":"Workflows utilisés dans ces formulaires"},"required":{"type":"object","description":"Formulaires et listes liés aux résultats","properties":{"linked_list_ids":{"type":"array","items":{"type":"integer"}},"structure_ids":{"type":"array","items":{"type":"integer"}}}}}},"Structure":{"type":"object","properties":{"id":{"type":"integer","description":"Identifiant du formulaire"},"version":{"type":"integer","description":"Numéro de version"},"name":{"type":"string","description":"Nom affiché"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"settings":{"type":"object","additionalProperties":true,"description":"Paramètres du formulaire"},"conditions":{"type":"array","items":{"$ref":"#/components/schemas/Condition"},"description":"Liste des conditions"},"fields":{"type":"array","items":{"$ref":"#/components/schemas/Field"},"description":"Liste des champs"},"layout":{"type":"object","description":"Pages et positions des champs","properties":{"pages":{"type":"array","items":{}},"fields":{"type":"array","items":{}}}},"workflows":{"type":"array","items":{"$ref":"#/components/schemas/Workflow"},"description":"Workflows du formulaire (si présents)"},"triggers":{"type":"array","items":{"$ref":"#/components/schemas/Trigger"},"description":"Personnalisation des transitions du workflow"}}},"Condition":{"type":"object","description":"Condition de visibilité d'un champ","properties":{"uuid":{"type":"string","format":"uuid","description":"Identifiant de la condition"},"name":{"type":"string","description":"Nom de la condition"},"cdt":{"type":"string","description":"Condition au format JavaScript"},"fields":{"type":"array","items":{"type":"string"},"description":"Champs utilisés dans la condition"},"json_format":{"type":"array","description":"Condition au format JSON","items":{"type":"object","properties":{"field":{"type":"string"},"value":{"type":"string"},"operator":{"type":"string"}}}}}},"Field":{"type":"object","description":"Définition d'un champ de formulaire","properties":{"name":{"type":"string","description":"Nom système du champ — utilisé comme clé dans les `items` d'une fiche"},"label":{"type":"string","description":"Nom affiché"},"position":{"type":"integer","description":"Position dans le formulaire"},"type":{"type":"string","description":"Type de champ : text, number, boolean, date, duration, phone, email, location, image, signature, file, list, relation, user, label…\n"},"enable":{"type":"boolean","description":"Champ activé ou non"},"required":{"type":"boolean","description":"Champ requis ou non"},"prefill":{"type":"boolean","description":"Peut être pré-rempli sur le mobile"},"readonly":{"type":"boolean","description":"Non modifiable sur le mobile"},"searchable":{"type":"boolean","description":"Peut être utilisé dans la recherche"}}},"Workflow":{"type":"object","description":"Workflow d'un formulaire","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","description":"Nom du workflow"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"start_state":{"type":"string","format":"uuid","description":"État initial du workflow"},"states":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowState"},"description":"Liste des états"},"transitions":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowTransition"},"description":"Liste des transitions"}}},"WorkflowState":{"type":"object","description":"État d'un workflow","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","description":"Nom affiché"},"color":{"type":"string","description":"Couleur hexadécimale (ex. `#FF9800`)"},"end":{"type":"boolean","description":"Si vrai, les fiches dans cet état ne peuvent plus être modifiées"}}},"WorkflowTransition":{"type":"object","description":"Transition entre deux états","properties":{"id":{"type":"string","format":"uuid"},"from":{"type":"string","format":"uuid","description":"État source"},"to":{"type":"string","format":"uuid","description":"État cible"},"label":{"type":"string","description":"Libellé de la transition"}}},"Trigger":{"type":"object","description":"Personnalise l'apparence d'une transition de workflow sous forme de bouton","properties":{"id":{"type":"string","format":"uuid"},"type":{"type":"string"},"transition_id":{"type":"string","format":"uuid","description":"Identifiant de la transition associée"},"color":{"type":"string","description":"Couleur du bouton"},"label":{"type":"string","description":"Libellé du bouton"}}}}}}
```

## The Field object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Field":{"type":"object","description":"Définition d'un champ de formulaire","properties":{"name":{"type":"string","description":"Nom système du champ — utilisé comme clé dans les `items` d'une fiche"},"label":{"type":"string","description":"Nom affiché"},"position":{"type":"integer","description":"Position dans le formulaire"},"type":{"type":"string","description":"Type de champ : text, number, boolean, date, duration, phone, email, location, image, signature, file, list, relation, user, label…\n"},"enable":{"type":"boolean","description":"Champ activé ou non"},"required":{"type":"boolean","description":"Champ requis ou non"},"prefill":{"type":"boolean","description":"Peut être pré-rempli sur le mobile"},"readonly":{"type":"boolean","description":"Non modifiable sur le mobile"},"searchable":{"type":"boolean","description":"Peut être utilisé dans la recherche"}}}}}}
```

## The Condition object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Condition":{"type":"object","description":"Condition de visibilité d'un champ","properties":{"uuid":{"type":"string","format":"uuid","description":"Identifiant de la condition"},"name":{"type":"string","description":"Nom de la condition"},"cdt":{"type":"string","description":"Condition au format JavaScript"},"fields":{"type":"array","items":{"type":"string"},"description":"Champs utilisés dans la condition"},"json_format":{"type":"array","description":"Condition au format JSON","items":{"type":"object","properties":{"field":{"type":"string"},"value":{"type":"string"},"operator":{"type":"string"}}}}}}}}}
```

## The Workflow object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Workflow":{"type":"object","description":"Workflow d'un formulaire","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","description":"Nom du workflow"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"start_state":{"type":"string","format":"uuid","description":"État initial du workflow"},"states":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowState"},"description":"Liste des états"},"transitions":{"type":"array","items":{"$ref":"#/components/schemas/WorkflowTransition"},"description":"Liste des transitions"}}},"WorkflowState":{"type":"object","description":"État d'un workflow","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","description":"Nom affiché"},"color":{"type":"string","description":"Couleur hexadécimale (ex. `#FF9800`)"},"end":{"type":"boolean","description":"Si vrai, les fiches dans cet état ne peuvent plus être modifiées"}}},"WorkflowTransition":{"type":"object","description":"Transition entre deux états","properties":{"id":{"type":"string","format":"uuid"},"from":{"type":"string","format":"uuid","description":"État source"},"to":{"type":"string","format":"uuid","description":"État cible"},"label":{"type":"string","description":"Libellé de la transition"}}}}}}
```

## The WorkflowState object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"WorkflowState":{"type":"object","description":"État d'un workflow","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string","description":"Nom affiché"},"color":{"type":"string","description":"Couleur hexadécimale (ex. `#FF9800`)"},"end":{"type":"boolean","description":"Si vrai, les fiches dans cet état ne peuvent plus être modifiées"}}}}}}
```

## The WorkflowTransition object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"WorkflowTransition":{"type":"object","description":"Transition entre deux états","properties":{"id":{"type":"string","format":"uuid"},"from":{"type":"string","format":"uuid","description":"État source"},"to":{"type":"string","format":"uuid","description":"État cible"},"label":{"type":"string","description":"Libellé de la transition"}}}}}}
```

## The Trigger object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Trigger":{"type":"object","description":"Personnalise l'apparence d'une transition de workflow sous forme de bouton","properties":{"id":{"type":"string","format":"uuid"},"type":{"type":"string"},"transition_id":{"type":"string","format":"uuid","description":"Identifiant de la transition associée"},"color":{"type":"string","description":"Couleur du bouton"},"label":{"type":"string","description":"Libellé du bouton"}}}}}}
```

## The StructureRelationPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"StructureRelationPagedResponse":{"type":"object","properties":{"structure_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"}}},"description":"Identifiants des formulaires parents"},"total_count":{"type":"integer"},"total_pages":{"type":"integer"},"next_page":{"type":"integer"},"server_time":{"type":"integer","format":"int64"}}}}}}
```

## The SubmissionRelationPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"SubmissionRelationPagedResponse":{"type":"object","properties":{"submission_relations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"}}},"description":"Identifiants des fiches parentes"},"total_count":{"type":"integer"},"total_pages":{"type":"integer"},"next_page":{"type":"integer"},"server_time":{"type":"integer","format":"int64"}}}}}}
```

## The Submission object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Submission":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant de la fiche"},"structure_id":{"type":"integer","description":"Identifiant du formulaire"},"structure_version":{"type":"integer","description":"Version du formulaire"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"data_created_at":{"type":"integer","format":"int64","description":"Date de création des données sur le serveur"},"data_updated_at":{"type":"integer","format":"int64","description":"Date de dernière mise à jour des données sur le serveur"},"user_id":{"type":"integer","description":"Propriétaire de la fiche"},"channels":{"type":"array","items":{"type":"string"},"description":"Conditions remplies par la fiche"},"items":{"type":"object","additionalProperties":true,"description":"Dictionnaire clé/valeur dont la clé est le nom système du champ.\n\n**Types simples :** texte/email → chaîne | nombre → flottant | booléen → bool |\ndate → timestamp UNIX | durée → ms | téléphone → RFC 3966\n\n**location :** `{lat, lng, address}`\n\n**image/signature/fichier :** `[{id, name, mimeType, extension, size, comment}]`\n\n**liste :** `[id, …]`\n\n**relation :** `{submissions: [{id, count?}, …]}`\n\n**utilisateur :** `[{id}, …]`\n"},"submission_number":{"type":"integer","description":"Numéro séquentiel global"},"number_in_structure":{"type":"integer","description":"Numéro séquentiel au sein du formulaire"},"latitude":{"type":"number","format":"double","description":"Latitude de la fiche"},"longitude":{"type":"number","format":"double","description":"Longitude de la fiche"},"last_updated_user_id":{"type":"integer","description":"Identifiant du dernier utilisateur ayant modifié la fiche"},"current_state":{"type":"string","format":"uuid","nullable":true,"description":"UUID de l'état de workflow courant (null si pas de workflow)"},"assigned_user":{"$ref":"#/components/schemas/UserRef"},"subscribers":{"type":"array","items":{},"description":"Utilisateurs abonnés à la fiche"},"settings":{"type":"array","items":{}}}},"UserRef":{"type":"object","description":"Référence à un utilisateur","properties":{"id":{"type":"integer"},"email":{"type":"string","format":"email"},"first_name":{"type":"string","description":"Prénom"},"last_name":{"type":"string","description":"Nom"},"groups":{"type":"array","items":{},"description":"Groupes de l'utilisateur"},"system_groups":{"type":"array","items":{},"description":"Groupes système de l'utilisateur"}}}}}}
```

## The SubmissionInput object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"SubmissionInput":{"type":"object","required":["structure_id","structure_version","items"],"properties":{"id":{"type":"string","format":"uuid","description":"Généré automatiquement par le serveur si omis"},"structure_id":{"type":"integer","description":"Identifiant du formulaire"},"structure_version":{"type":"integer","description":"Version du formulaire"},"created_at":{"type":"integer","format":"int64","description":"Date de création (défaut : maintenant)"},"updated_at":{"type":"integer","format":"int64","description":"Date de dernière modification (défaut : maintenant)"},"trigger_id":{"type":"string","format":"uuid","description":"Transition de workflow à appliquer (PUT/PATCH uniquement)"},"substitute_user_id":{"type":"integer","description":"Optionnel. Définit un autre utilisateur comme créateur/propriétaire. L'utilisateur authentifié est toujours tracé dans l'historique."},"items":{"type":"object","additionalProperties":true,"description":"Dictionnaire avec pour clé le nom système du champ"}}}}}}
```

## The SubmissionListResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"SubmissionListResponse":{"type":"object","properties":{"submissions":{"type":"array","items":{"$ref":"#/components/schemas/Submission"},"description":"Liste des fiches"},"total_count":{"type":"integer","description":"Nombre total de fiches"},"total_pages":{"type":"integer","description":"Nombre total de pages"},"server_time":{"type":"integer","format":"int64","description":"Date courante du serveur (timestamp UNIX)"}}},"Submission":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant de la fiche"},"structure_id":{"type":"integer","description":"Identifiant du formulaire"},"structure_version":{"type":"integer","description":"Version du formulaire"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"data_created_at":{"type":"integer","format":"int64","description":"Date de création des données sur le serveur"},"data_updated_at":{"type":"integer","format":"int64","description":"Date de dernière mise à jour des données sur le serveur"},"user_id":{"type":"integer","description":"Propriétaire de la fiche"},"channels":{"type":"array","items":{"type":"string"},"description":"Conditions remplies par la fiche"},"items":{"type":"object","additionalProperties":true,"description":"Dictionnaire clé/valeur dont la clé est le nom système du champ.\n\n**Types simples :** texte/email → chaîne | nombre → flottant | booléen → bool |\ndate → timestamp UNIX | durée → ms | téléphone → RFC 3966\n\n**location :** `{lat, lng, address}`\n\n**image/signature/fichier :** `[{id, name, mimeType, extension, size, comment}]`\n\n**liste :** `[id, …]`\n\n**relation :** `{submissions: [{id, count?}, …]}`\n\n**utilisateur :** `[{id}, …]`\n"},"submission_number":{"type":"integer","description":"Numéro séquentiel global"},"number_in_structure":{"type":"integer","description":"Numéro séquentiel au sein du formulaire"},"latitude":{"type":"number","format":"double","description":"Latitude de la fiche"},"longitude":{"type":"number","format":"double","description":"Longitude de la fiche"},"last_updated_user_id":{"type":"integer","description":"Identifiant du dernier utilisateur ayant modifié la fiche"},"current_state":{"type":"string","format":"uuid","nullable":true,"description":"UUID de l'état de workflow courant (null si pas de workflow)"},"assigned_user":{"$ref":"#/components/schemas/UserRef"},"subscribers":{"type":"array","items":{},"description":"Utilisateurs abonnés à la fiche"},"settings":{"type":"array","items":{}}}},"UserRef":{"type":"object","description":"Référence à un utilisateur","properties":{"id":{"type":"integer"},"email":{"type":"string","format":"email"},"first_name":{"type":"string","description":"Prénom"},"last_name":{"type":"string","description":"Nom"},"groups":{"type":"array","items":{},"description":"Groupes de l'utilisateur"},"system_groups":{"type":"array","items":{},"description":"Groupes système de l'utilisateur"}}}}}}
```

## The SearchCriteria object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"SearchCriteria":{"type":"object","additionalProperties":{"type":"object","required":["operator"],"properties":{"value":{"description":"Valeur recherchée (à omettre pour isNull / isNotNull)"},"operator":{"type":"string","enum":["equal","notequal","isNull","isNotNull","less","greater","lesseq","greatereq","contains","notContains","startWith","endWith","in","range"]}}},"description":"Objet dont chaque clé est un nom système de champ valide. Respectez la casse des opérateurs."}}}}
```

## The CallbackUrlResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"CallbackUrlResponse":{"type":"object","properties":{"callbackUrl":{"type":"string","description":"URL à interroger pour suivre l'avancement du job asynchrone"}}}}}}
```

## The SubmissionCallbackResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"SubmissionCallbackResponse":{"type":"object","properties":{"callbackDetails":{"type":"object","properties":{"status":{"type":"string","enum":["Planned","Running","Finished","Finished with errors","Failed","In timeout"],"description":"Statut courant du job"},"nbRecordsTodo":{"type":"integer","description":"Nombre de fiches à traiter"},"nbRecordsDone":{"type":"integer","description":"Nombre de fiches déjà traitées"},"nbSuccess":{"type":"integer","description":"Nombre de fiches traitées sans erreur"},"nbErrors":{"type":"integer","description":"Nombre de fiches en erreur"},"success":{"type":"array","items":{"type":"string","format":"uuid"},"description":"UUIDs des fiches traitées avec succès"},"errors":{"type":"array","items":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}},"description":"Erreurs par fiche"}}}}}}}}
```

## The UserRef object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"UserRef":{"type":"object","description":"Référence à un utilisateur","properties":{"id":{"type":"integer"},"email":{"type":"string","format":"email"},"first_name":{"type":"string","description":"Prénom"},"last_name":{"type":"string","description":"Nom"},"groups":{"type":"array","items":{},"description":"Groupes de l'utilisateur"},"system_groups":{"type":"array","items":{},"description":"Groupes système de l'utilisateur"}}}}}}
```

## The Comment object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Comment":{"type":"object","description":"Commentaire sur une fiche","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant du commentaire (UUID v4)"},"message":{"type":"string","maxLength":1000,"description":"Texte brut uniquement — pas de HTML ni de balises script"},"client_created_at":{"type":"integer","format":"int64","description":"Date de création côté client (timestamp UNIX)"},"client_updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour côté client (timestamp UNIX)"},"user_id":{"type":"integer","description":"Identifiant de l'auteur"},"submission_id":{"type":"string","format":"uuid","description":"Identifiant de la fiche associée"},"replies":{"type":"array","description":"Réponses de second niveau (profondeur maximale : 2)","items":{"$ref":"#/components/schemas/Comment"}}}}}}}
```

## The CommentInput object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"CommentInput":{"type":"object","required":["message"],"description":"Corps d'une création ou mise à jour de commentaire","properties":{"id":{"type":"string","format":"uuid","description":"UUID v4 optionnel fourni par le client"},"message":{"type":"string","maxLength":1000,"description":"Texte brut uniquement — pas de HTML, balises script ou caractères dangereux"},"client_created_at":{"type":"integer","format":"int64","description":"Timestamp UNIX côté client"},"client_updated_at":{"type":"integer","format":"int64","description":"Timestamp UNIX côté client"}}}}}}
```

## The CustomAppSummary object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"CustomAppSummary":{"type":"object","description":"Résumé d'une application personnalisée","properties":{"id":{"type":"integer","description":"Identifiant"},"name":{"type":"string","description":"Nom"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de modification (timestamp UNIX)"}}}}}}
```

## The CustomApp object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"CustomApp":{"allOf":[{"$ref":"#/components/schemas/CustomAppSummary"},{"type":"object","properties":{"banner":{"type":"object","additionalProperties":true,"description":"Bannière de l'application"},"splash":{"type":"object","description":"Écran de démarrage","properties":{"active":{"type":"boolean","description":"Afficher l'écran de démarrage au lancement"},"image":{"type":"string","description":"UUID du fichier image"},"color":{"type":"string","description":"Couleur de fond (hexadécimal)"},"aspect":{"type":"string","enum":["fit","fill"],"description":"`fit` s'adapte à l'espace disponible, `fill` le remplit"},"created_at":{"type":"integer","format":"int64"},"updated_at":{"type":"integer","format":"int64"}}},"menus":{"type":"array","description":"Éléments du menu","items":{"type":"object","properties":{"index":{"type":"integer","description":"Position dans le menu"},"target":{"type":"string","description":"Action déclenchée lors de l'interaction"},"label":{"type":"object","additionalProperties":{"type":"string"},"description":"Libellés localisés (clé = code locale, ex. `fr`, `en`)"},"icon":{"type":"object","properties":{"type":{"type":"string"},"value":{"type":"string"}}},"created_at":{"type":"integer","format":"int64"},"updated_at":{"type":"integer","format":"int64"}}}},"screens":{"type":"array","description":"Écrans de l'application","items":{"type":"object","properties":{"name":{"type":"string","description":"Nom identifiant l'écran"},"created_at":{"type":"integer","format":"int64"},"updated_at":{"type":"integer","format":"int64"},"pages":{"type":"array","description":"Pages composant l'écran","items":{"type":"object","properties":{"system_name":{"type":"string","description":"Nom système de la page"},"title":{"type":"object","additionalProperties":{"type":"string"},"description":"Titre localisé"},"side_menu":{"type":"boolean","description":"Afficher le menu latéral sur cette page"},"widgets":{"type":"array","description":"Boutons affichés sur la page","items":{"type":"object","properties":{"type":{"type":"string","description":"Type de bouton"},"index":{"type":"integer","description":"Position d'affichage"},"label":{"type":"object","additionalProperties":{"type":"string"},"description":"Libellé localisé"},"color":{"type":"string","description":"Couleur de fond (hexadécimal)"},"target":{"type":"string","description":"Action déclenchée lors de l'interaction"},"icon":{"type":"object","additionalProperties":true,"description":"Icône du bouton"},"background":{"type":"string","description":"UUID de l'image de fond (type `full`)"}}}},"layout":{"type":"array","description":"Disposition des widgets","items":{"type":"object","properties":{"x":{"type":"integer","description":"Coordonnée X"},"y":{"type":"integer","description":"Coordonnée Y"},"width":{"type":"integer","description":"Largeur relative"},"height":{"type":"integer","description":"Hauteur relative"}}}}}}}}}},"settings":{"type":"array","items":{},"description":"Paramètres de l'application"},"groups":{"type":"array","items":{},"description":"Groupes ayant accès à l'application"},"widget_spacing":{"type":"integer","enum":[0,1],"description":"`0` = mode plat, `1` = mode standard"},"button_type":{"type":"string","enum":["standard","mix","full"],"description":"`standard` = icône Font Awesome, `mix` = icône image, `full` = image de fond"},"label_overlay":{"type":"boolean","description":"Afficher le bandeau sous les libellés des boutons"},"grant_all":{"type":"boolean","description":"Accessible à tous les utilisateurs ou non"}}}]},"CustomAppSummary":{"type":"object","description":"Résumé d'une application personnalisée","properties":{"id":{"type":"integer","description":"Identifiant"},"name":{"type":"string","description":"Nom"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de modification (timestamp UNIX)"}}}}}}
```

## The ListItem object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListItem":{"type":"object","description":"Élément de liste","properties":{"id":{"type":"integer","description":"Identifiant de l'élément"},"root_id":{"type":"integer","description":"Identifiant du nœud racine"},"parent_id":{"type":"integer","description":"Identifiant du parent"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"deleted_at":{"type":"integer","format":"int64","nullable":true,"description":"Date de suppression (timestamp UNIX)"},"name":{"type":"string","description":"Nom affiché"},"has_image":{"type":"boolean","description":"Indique si l'élément possède une image"},"level":{"type":"integer","description":"Niveau de profondeur — 0 est le nœud racine"},"position":{"type":"integer","description":"Position à son niveau de profondeur"},"external_id":{"type":"string","description":"Identifiant externe"},"url":{"type":"string","description":"URL associée à l'élément"},"functionnal_status_color":{"type":"string","description":"Couleur de l'élément (hexadécimal)"}}}}}}
```

## The ListPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListPagedResponse":{"type":"object","properties":{"lists":{"type":"array","items":{"type":"object","properties":{"root_id":{"type":"integer","description":"Identifiant racine"},"name":{"type":"string","description":"Nom de la liste"},"created_at":{"type":"integer","format":"int64"},"list_last_updated":{"type":"integer","format":"int64","description":"Date de la dernière modification d'un élément de la liste"}}}},"total_count":{"type":"integer"},"total_pages":{"type":"integer"},"next_page":{"type":"integer"},"server_time":{"type":"integer","format":"int64"}}}}}}
```

## The ListItemPagedResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListItemPagedResponse":{"type":"object","properties":{"lists":{"type":"array","items":{"$ref":"#/components/schemas/ListItem"}},"total_count":{"type":"integer"},"total_pages":{"type":"integer"},"next_page":{"type":"integer"},"server_time":{"type":"integer","format":"int64"}}},"ListItem":{"type":"object","description":"Élément de liste","properties":{"id":{"type":"integer","description":"Identifiant de l'élément"},"root_id":{"type":"integer","description":"Identifiant du nœud racine"},"parent_id":{"type":"integer","description":"Identifiant du parent"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"deleted_at":{"type":"integer","format":"int64","nullable":true,"description":"Date de suppression (timestamp UNIX)"},"name":{"type":"string","description":"Nom affiché"},"has_image":{"type":"boolean","description":"Indique si l'élément possède une image"},"level":{"type":"integer","description":"Niveau de profondeur — 0 est le nœud racine"},"position":{"type":"integer","description":"Position à son niveau de profondeur"},"external_id":{"type":"string","description":"Identifiant externe"},"url":{"type":"string","description":"URL associée à l'élément"},"functionnal_status_color":{"type":"string","description":"Couleur de l'élément (hexadécimal)"}}}}}}
```

## The ListCreateRequest object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListCreateRequest":{"type":"object","required":["name"],"description":"Corps de création d'une liste","properties":{"name":{"type":"string","description":"Nom de la liste (obligatoire)"},"external_id":{"type":"string","description":"Identifiant externe"},"items":{"type":"array","description":"Éléments enfants imbriqués (récursif)","items":{"$ref":"#/components/schemas/ListCreateRequest"}}}}}}}
```

## The ListItemUpdateRequest object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListItemUpdateRequest":{"type":"object","description":"Corps de mise à jour d'un élément de liste","properties":{"name":{"type":"string","description":"Nom de l'élément"},"latitude":{"type":"number","format":"float","description":"Latitude"},"longitude":{"type":"number","format":"float","description":"Longitude"},"external_id":{"type":"string","description":"Identifiant externe"},"functionnal_status_color":{"type":"string","description":"Couleur de l'élément (hexadécimal)"},"url":{"type":"string","description":"URL de l'élément"}}}}}}
```

## The ListCallbackResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListCallbackResponse":{"type":"object","properties":{"callbackDetails":{"type":"object","properties":{"status":{"type":"string","enum":["Planned","Running","Finished","Finished with errors","Failed"],"description":"Statut courant du job"},"nbRecordsTodo":{"type":"integer","description":"Nombre d'éléments à traiter"},"nbRecordsDone":{"type":"integer","description":"Nombre d'éléments déjà traités"},"nbSuccess":{"type":"integer","description":"Nombre d'éléments traités avec succès"},"nbErrors":{"type":"integer","description":"Nombre d'éléments en erreur"},"success":{"type":"array","items":{},"description":"Tableau vide"},"errors":{"type":"array","items":{"type":"string"},"description":"Messages d'erreur"}}}}}}}}
```

## The ListAccessSetSummary object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListAccessSetSummary":{"type":"object","description":"Résumé d'une autorisation d'accès","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant de l'autorisation d'accès"},"name":{"type":"string","description":"Nom de l'autorisation d'accès"},"users":{"type":"array","items":{"type":"string"},"description":"Identifiants des utilisateurs"},"groups":{"type":"array","items":{},"description":"Groupes inclus"},"root_id":{"type":"integer","description":"Identifiant du nœud racine de la liste"},"lists":{"type":"array","items":{"type":"integer"},"description":"Identifiants des éléments de liste restreints"}}}}}}
```

## The ListAccessSetDetail object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"ListAccessSetDetail":{"type":"object","description":"Détails complets d'une autorisation d'accès","properties":{"id":{"type":"string","format":"uuid"},"name":{"type":"string"},"users":{"type":"array","items":{"$ref":"#/components/schemas/UserRef"},"description":"Utilisateurs inclus"},"groups":{"type":"array","items":{},"description":"Groupes inclus"},"root_id":{"type":"object","description":"Nœud racine associé","properties":{"id":{"type":"integer"},"name":{"type":"string"},"level":{"type":"integer"},"position":{"type":"integer"},"has_image":{"type":"boolean"}}},"lists":{"type":"array","items":{"$ref":"#/components/schemas/ListItem"},"description":"Éléments de liste restreints"}}},"UserRef":{"type":"object","description":"Référence à un utilisateur","properties":{"id":{"type":"integer"},"email":{"type":"string","format":"email"},"first_name":{"type":"string","description":"Prénom"},"last_name":{"type":"string","description":"Nom"},"groups":{"type":"array","items":{},"description":"Groupes de l'utilisateur"},"system_groups":{"type":"array","items":{},"description":"Groupes système de l'utilisateur"}}},"ListItem":{"type":"object","description":"Élément de liste","properties":{"id":{"type":"integer","description":"Identifiant de l'élément"},"root_id":{"type":"integer","description":"Identifiant du nœud racine"},"parent_id":{"type":"integer","description":"Identifiant du parent"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"deleted_at":{"type":"integer","format":"int64","nullable":true,"description":"Date de suppression (timestamp UNIX)"},"name":{"type":"string","description":"Nom affiché"},"has_image":{"type":"boolean","description":"Indique si l'élément possède une image"},"level":{"type":"integer","description":"Niveau de profondeur — 0 est le nœud racine"},"position":{"type":"integer","description":"Position à son niveau de profondeur"},"external_id":{"type":"string","description":"Identifiant externe"},"url":{"type":"string","description":"URL associée à l'élément"},"functionnal_status_color":{"type":"string","description":"Couleur de l'élément (hexadécimal)"}}}}}}
```

## The Task object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"Task":{"type":"object","description":"Tâche liée à une fiche","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant de la tâche"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"start_date":{"type":"integer","format":"int64","description":"Date de début prévue (timestamp UNIX)"},"due_date":{"type":"integer","format":"int64","description":"Date d'échéance (timestamp UNIX)"},"duration":{"type":"integer","description":"Durée prévue en secondes"},"delay_before":{"type":"integer","description":"Délai d'affichage indicatif en secondes avant le début de la tâche"},"delay_after":{"type":"integer","description":"Délai d'affichage indicatif en secondes après la fin de la tâche"},"user_id":{"type":"integer","description":"Identifiant de l'utilisateur assigné"},"submission":{"$ref":"#/components/schemas/Submission","description":"Fiche associée à la tâche"}}},"Submission":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant de la fiche"},"structure_id":{"type":"integer","description":"Identifiant du formulaire"},"structure_version":{"type":"integer","description":"Version du formulaire"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"data_created_at":{"type":"integer","format":"int64","description":"Date de création des données sur le serveur"},"data_updated_at":{"type":"integer","format":"int64","description":"Date de dernière mise à jour des données sur le serveur"},"user_id":{"type":"integer","description":"Propriétaire de la fiche"},"channels":{"type":"array","items":{"type":"string"},"description":"Conditions remplies par la fiche"},"items":{"type":"object","additionalProperties":true,"description":"Dictionnaire clé/valeur dont la clé est le nom système du champ.\n\n**Types simples :** texte/email → chaîne | nombre → flottant | booléen → bool |\ndate → timestamp UNIX | durée → ms | téléphone → RFC 3966\n\n**location :** `{lat, lng, address}`\n\n**image/signature/fichier :** `[{id, name, mimeType, extension, size, comment}]`\n\n**liste :** `[id, …]`\n\n**relation :** `{submissions: [{id, count?}, …]}`\n\n**utilisateur :** `[{id}, …]`\n"},"submission_number":{"type":"integer","description":"Numéro séquentiel global"},"number_in_structure":{"type":"integer","description":"Numéro séquentiel au sein du formulaire"},"latitude":{"type":"number","format":"double","description":"Latitude de la fiche"},"longitude":{"type":"number","format":"double","description":"Longitude de la fiche"},"last_updated_user_id":{"type":"integer","description":"Identifiant du dernier utilisateur ayant modifié la fiche"},"current_state":{"type":"string","format":"uuid","nullable":true,"description":"UUID de l'état de workflow courant (null si pas de workflow)"},"assigned_user":{"$ref":"#/components/schemas/UserRef"},"subscribers":{"type":"array","items":{},"description":"Utilisateurs abonnés à la fiche"},"settings":{"type":"array","items":{}}}},"UserRef":{"type":"object","description":"Référence à un utilisateur","properties":{"id":{"type":"integer"},"email":{"type":"string","format":"email"},"first_name":{"type":"string","description":"Prénom"},"last_name":{"type":"string","description":"Nom"},"groups":{"type":"array","items":{},"description":"Groupes de l'utilisateur"},"system_groups":{"type":"array","items":{},"description":"Groupes système de l'utilisateur"}}}}}}
```

## The TaskListResponse object

```json
{"openapi":"3.0.3","info":{"title":"Daxium Air API","version":"v1.3"},"components":{"schemas":{"TaskListResponse":{"type":"object","properties":{"tasks":{"type":"array","items":{"$ref":"#/components/schemas/Task"},"description":"Liste des tâches"},"total_count":{"type":"integer","description":"Nombre total de tâches"},"total_pages":{"type":"integer","description":"Nombre total de pages"},"server_time":{"type":"integer","format":"int64","description":"Date courante du serveur (timestamp UNIX)"}}},"Task":{"type":"object","description":"Tâche liée à une fiche","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant de la tâche"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"start_date":{"type":"integer","format":"int64","description":"Date de début prévue (timestamp UNIX)"},"due_date":{"type":"integer","format":"int64","description":"Date d'échéance (timestamp UNIX)"},"duration":{"type":"integer","description":"Durée prévue en secondes"},"delay_before":{"type":"integer","description":"Délai d'affichage indicatif en secondes avant le début de la tâche"},"delay_after":{"type":"integer","description":"Délai d'affichage indicatif en secondes après la fin de la tâche"},"user_id":{"type":"integer","description":"Identifiant de l'utilisateur assigné"},"submission":{"$ref":"#/components/schemas/Submission","description":"Fiche associée à la tâche"}}},"Submission":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant de la fiche"},"structure_id":{"type":"integer","description":"Identifiant du formulaire"},"structure_version":{"type":"integer","description":"Version du formulaire"},"created_at":{"type":"integer","format":"int64","description":"Date de création (timestamp UNIX)"},"updated_at":{"type":"integer","format":"int64","description":"Date de mise à jour (timestamp UNIX)"},"data_created_at":{"type":"integer","format":"int64","description":"Date de création des données sur le serveur"},"data_updated_at":{"type":"integer","format":"int64","description":"Date de dernière mise à jour des données sur le serveur"},"user_id":{"type":"integer","description":"Propriétaire de la fiche"},"channels":{"type":"array","items":{"type":"string"},"description":"Conditions remplies par la fiche"},"items":{"type":"object","additionalProperties":true,"description":"Dictionnaire clé/valeur dont la clé est le nom système du champ.\n\n**Types simples :** texte/email → chaîne | nombre → flottant | booléen → bool |\ndate → timestamp UNIX | durée → ms | téléphone → RFC 3966\n\n**location :** `{lat, lng, address}`\n\n**image/signature/fichier :** `[{id, name, mimeType, extension, size, comment}]`\n\n**liste :** `[id, …]`\n\n**relation :** `{submissions: [{id, count?}, …]}`\n\n**utilisateur :** `[{id}, …]`\n"},"submission_number":{"type":"integer","description":"Numéro séquentiel global"},"number_in_structure":{"type":"integer","description":"Numéro séquentiel au sein du formulaire"},"latitude":{"type":"number","format":"double","description":"Latitude de la fiche"},"longitude":{"type":"number","format":"double","description":"Longitude de la fiche"},"last_updated_user_id":{"type":"integer","description":"Identifiant du dernier utilisateur ayant modifié la fiche"},"current_state":{"type":"string","format":"uuid","nullable":true,"description":"UUID de l'état de workflow courant (null si pas de workflow)"},"assigned_user":{"$ref":"#/components/schemas/UserRef"},"subscribers":{"type":"array","items":{},"description":"Utilisateurs abonnés à la fiche"},"settings":{"type":"array","items":{}}}},"UserRef":{"type":"object","description":"Référence à un utilisateur","properties":{"id":{"type":"integer"},"email":{"type":"string","format":"email"},"first_name":{"type":"string","description":"Prénom"},"last_name":{"type":"string","description":"Nom"},"groups":{"type":"array","items":{},"description":"Groupes de l'utilisateur"},"system_groups":{"type":"array","items":{},"description":"Groupes système de l'utilisateur"}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.center.daxium-air.com/api-reference/doc-api/models.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
