Documents
Ce document décrit l’ingestion de documents dans le corpus d’un agent Documentaliste : upload, consultation du statut, listing et suppression. Ces endpoints sont réservés aux agents de type DOCUMENTALIST et scopés à votre organisation via votre token x-api-key (voir Récupération de votre Token d’Authentification).
Prérequis
Section intitulée « Prérequis »- Un compte DIMARC actif.
- Un agent Documentaliste existant (voir Agents).
- Votre token d’authentification
x-api-key(voir Récupération de votre Token d’Authentification)
Format de réponse
Section intitulée « Format de réponse »Toutes les réponses utilisent une enveloppe commune :
{ "status": "success", "data": { } }{ "status": "error", "code": "document_not_found", "error": "Document not found" }Codes d’erreur : agent_not_found, invalid_agent_type, quota_exceeded, invalid_request, unsupported_file_type, file_too_large, document_already_exists, document_not_found, infected_file, antivirus_unavailable.
Certaines erreurs incluent un champ detail : supported (extensions acceptées) pour unsupported_file_type, limit/size pour file_too_large, document_reference pour document_already_exists, limit/current pour quota_exceeded.
Formats et limites
Section intitulée « Formats et limites »- Formats acceptés :
pdf,docx,jpg,jpeg,png,heic(déterminés par l’extension du nom de fichier). - Taille maximale : 60 Mo par fichier (votre plan peut appliquer une limite inférieure — le cap effectif est alors renvoyé dans le
detaildu413 file_too_large). - Le contenu est transmis encodé en base64 dans le corps de la requête.
Uploader un document
Section intitulée « Uploader un document »POST /v2/agents/{reference}/documents
curl --location 'https://api.dimarc.ai/v2/agents/01ABC.../documents' \ --header 'x-api-key: <your_api_key>' \ --header 'Content-Type: application/json' \ --data '{ "filename": "rapport-annuel.pdf", "file": "<contenu_base64>", "path": "finance/2026" }'filename(obligatoire) : nom du fichier, avec son extension.file(obligatoire) : contenu du fichier encodé en base64.path(optionnel) : chemin logique de classement au sein du corpus documentaire.
Réponse 202 :
{ "status": "success", "data": { "document_reference": "01ABC...", "status": "pending" } }L’ingestion est asynchrone : le document est créé avec le statut pending, puis passe à ready ou error une fois traité. Configurez le webhook document.ingestion_completed pour être notifié de l’issue, ou obtenez le statut par polling via le listing ou la consultation de l’agent.
Erreurs possibles : 403 quota_exceeded (quota de documents de l’agent atteint), 404 agent_not_found, 409 document_already_exists (même fichier — nom et chemin — déjà présent ; voir Remplacer un document), 413 file_too_large, 422 invalid_agent_type (agent non Documentaliste), 422 invalid_request (base64 ou path invalide — slash en tête/queue, segment vide, longueur), 422 unsupported_file_type, 422 infected_file (fichier détecté comme infecté par l’antivirus), 503 antivirus_unavailable.
Lister les documents
Section intitulée « Lister les documents »GET /v2/agents/{reference}/documents
curl 'https://api.dimarc.ai/v2/agents/01ABC.../documents' \ --header 'x-api-key: <your_api_key>'Réponse :
{ "status": "success", "data": [ { "reference": "01ABC...", "name": "rapport-annuel.pdf", "path": "finance/2026", "status": "ready", "size": 245678, "mime": "application/pdf", "created_at": "2026-07-18T09:30:00.000Z", "updated_at": "2026-07-18T09:31:12.000Z" } ]}status vaut pending, ready ou error. Utilisez ce endpoint pour suivre l’avancement d’une ingestion en cours (polling).
Erreurs possibles : 404 agent_not_found, 422 invalid_agent_type.
Supprimer un document
Section intitulée « Supprimer un document »DELETE /v2/agents/{reference}/documents/{documentReference}
curl --location --request DELETE 'https://api.dimarc.ai/v2/agents/01ABC.../documents/01XYZ...' \ --header 'x-api-key: <your_api_key>'Réponse 200 :
{ "status": "success", "data": { "reference": "01XYZ..." } }Supprime le fichier stocké et son index de recherche.
Erreurs possibles : 404 agent_not_found, 404 document_not_found, 422 invalid_agent_type.
Remplacer un document
Section intitulée « Remplacer un document »Il n’y a pas de mise à jour en place : un document est identifié par son nom de fichier et son chemin. Pour remplacer un document existant, supprimez-le d’abord (DELETE) puis ré-uploadez-le (POST). Uploader un document avec le même nom et le même chemin qu’un document déjà présent renvoie 409 document_already_exists sans le modifier.
Réessayer un document en erreur
Section intitulée « Réessayer un document en erreur »Un document passé au statut error n’est pas retenté automatiquement par le serveur. Pour relancer son traitement, supprimez-le puis ré-uploadez-le.
Support et assistance
Section intitulée « Support et assistance »Pour toute question concernant l’API Documents, contactez notre équipe de support à l’adresse contact@dimarc.fr