Templates & Champs
Un Template est une liste sauvegardée et réutilisable de Champs à extraire d'un document — un champ par colonne de sortie. Passez l'id d'un Template à Lancer le traitement d'un lot au lieu de lister vos champs à chaque appel. Vous pouvez aussi créer un Template à partir d'un modèle prédéfini intégré, ou ignorer les Templates et passer des fields ad-hoc directement à process pour une exécution unique.
Lister les templates
Renvoie vos templates sauvegardés, chacun avec sa liste de champs complète et ordonnée.
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
limit | query, optionnel | entier | 1–100. Par défaut 50. |
page_token | query, optionnel | chaîne | Curseur opaque provenant du next_page_token d'une réponse précédente. Voir Pagination. |
Erreurs possibles
missing_api_key/invalid_api_key/plan_required— voir Gestion des erreurs.invalid_parameter—limitoupage_tokenincorrect.
Créer un modèle
Deux façons de créer un modèle en un seul point d'accès : de zéro (en clonant éventuellement les champs d'un autre modèle via base_template_id), ou à partir d'un préréglage intégré via preset_id.
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
name | corps (JSON) | chaîne | Requis sauf si preset_id est fourni (dans ce cas, le nom du préréglage est utilisé, désambiguïsé par un suffixe horodaté si vous avez déjà un modèle portant ce nom). |
preset_id | corps (JSON) | chaîne, facultatif | Construire le modèle (et ses champs) à partir d'un préréglage intégré — voir Lister les préréglages pour les ID valides. |
base_template_id | corps (JSON) | entier, facultatif | Utilisé uniquement quand preset_id n'est pas fourni — clone les champs de ce modèle existant dans le nouveau. |
Erreurs possibles
missing_api_key/invalid_api_key/plan_required— voir Gestion des erreurs.missing_parameter(param: "name") — pas denameni depreset_id.invalid_parameter(param: "name") — un modèle avec ce nom existe déjà (uniquement pour la création sans préréglage).invalid_parameter(param: "preset_id") — ID de préréglage inconnu.internal_error
Supprimer un modèle
Supprime un modèle et tous ses champs (cascade — aucun appel de nettoyage séparé nécessaire). Cela n'affecte pas les documents qui ont déjà utilisé ce modèle lors d'un appel process antérieur ; leurs résultats déjà extraits restent inchangés.
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
id | chemin | entier | Le modèle à supprimer. |
Erreurs possibles
missing_api_key/invalid_api_key/plan_required— voir Gestion des erreurs.template_not_foundinternal_error
Lister les préréglages
Listes de champs intégrées pour les types de documents courants (factures, reçus, relevés bancaires, etc.) — transmettez l'id d'un préréglage comme preset_id à Créer un modèle pour obtenir un modèle fonctionnel sans avoir à lister les champs manuellement. Les préréglages sont une configuration statique, pas des lignes de base de données — il n'est pas possible d'en créer, modifier ou supprimer via l'API.
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
category | requête, optionnel | chaîne | Filtrer par catégorie (ex. "Finance & Comptabilité"). Omettre pour lister toutes les catégories. |
limit | requête, optionnel | entier | 1–100. Par défaut 50. |
page_token | requête, optionnel | chaîne | Curseur opaque provenant du next_page_token d'une réponse précédente. |
Erreurs possibles
missing_api_key/invalid_api_key/plan_required— voir Gestion des erreurs.invalid_parameter—limitoupage_tokenincorrect.
Lister et créer des champs
fields est le nom public v1 de ce que l'interface produit appelle « règles de correspondance » — un champ par colonne de sortie, dans l'ordre où l'extraction les émettra. GET renvoie tous les champs du modèle, déjà triés par sort_order. POST ajoute un nouveau champ à la fin.
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
id | chemin | entier | Le modèle auquel ces champs appartiennent. |
name | corps (JSON), POST uniquement | chaîne | Requis. Doit être unique dans ce modèle — voir erreurs ci-dessous. |
format_requirement | corps (JSON), POST uniquement | chaîne, facultatif | Indice en texte libre sur le format attendu (ex. "YYYY-MM-DD", "Nombre"). |
Erreurs possibles
missing_api_key/invalid_api_key/plan_required— voir Gestion des erreurs.template_not_foundmissing_parameter(param: "name") — POST uniquement.duplicate_field_name— un champ avec cenameexiste déjà sur ce modèle.internal_error
Mettre à jour et supprimer un champ
PUT renomme un champ (et remplace son format_requirement) — il s'agit d'un remplacement complet, pas d'une mise à jour partielle, donc incluez les deux valeurs même si une seule a changé. DELETE le supprime.
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
id | chemin | entier | Le modèle auquel appartient ce champ. |
field_id | chemin | entier | Le champ à mettre à jour ou supprimer. |
name | corps (JSON), PUT uniquement | chaîne | Requis. Nouveau nom. |
format_requirement | corps (JSON), PUT uniquement | chaîne, facultatif | Nouvel indice de format — omettez-le et il sera effacé en chaîne vide, pas laissé inchangé. |
Erreurs possibles
missing_api_key/invalid_api_key/plan_required— voir Gestion des erreurs.template_not_found— le modèle n'existe pas / ne vous appartient pas, ou (avec un message le précisant) lefield_idn'est pas sur ce modèle.missing_parameter(param: "name") — PUT uniquement.duplicate_field_name— PUT uniquement, renommage avec un nom déjà utilisé par un autre champ sur ce modèle.internal_error
Réorganiser les champs
Définit explicitement l'ordre des champs, qui détermine l'ordre des colonnes en sortie dans line_items et dans les exportations Excel/Word. Les ID de la liste qui n'appartiennent pas à ce modèle sont ignorés silencieusement, sans rejeter la requête entière.
Paramètres
| Nom | Emplacement | Type | Description |
|---|---|---|---|
id | chemin | entier | Le modèle à réorganiser. |
field_ids | corps (JSON) | tableau d'entiers | Tous les ID de champ de ce modèle, dans l'ordre souhaité. Requis. |
Erreurs possibles
missing_api_key/invalid_api_key/plan_required— voir Gestion des erreurs.template_not_foundinvalid_parameter(param: "field_ids") — ce n'est pas une liste d'entiers.internal_error