Configurations

Fichier de configuration

Récupération du contenu du fichier de configuration principal

GET /config/readConfig

Headers

Retour du web service
{
    "config": {
        "API": {
            "siren-url": "https://api.insee.fr/entreprises/sirene/V3/siren/",
            "siret-consumer": "",
            "siret-secret": "",
            "siret-url": "https://api.insee.fr/entreprises/sirene/V3/siret/",
            "siret-url-token": "https://api.insee.fr/token",
            "tva-url": "https://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl"
        },
        "DATABASE": {
            "postgresdatabase": "opencapture_edissyum",
            "postgreshost": "localhost",
            "postgrespassword": "",
            "postgresport": "5432",
            "postgresuser": ""
        },
        "GLOBAL": {
            "configmail": "/var/www/html/opencapture/custom/edissyum/config/mail.ini",
            "logfile": "/var/www/html/opencapture/custom/edissyum/bin/data/log/OpenCapture.log",
            "watcherconfig": "/var/www/html/opencapture/instance/config/watcher.ini"
        },
        "REFERENCIAL": {
            "referencialsupplierdocument": "default_referencial_supplier.ods",
            "referencialsupplierindex": "default_referencial_supplier_index.json"
        },
        "SEPARATORQR": {
            "divider": "_",
            "enabled": "False",
            "exportpdfa": "False"
        },
        "SPLITTER": {
            "bundlestart": "BUNDLESTART",
            "docstart": "DOCSTART"
        }
    }
}

Configurations en base de données

Récupération des paramètres globaux présent en base de données

GET /config/getConfigurations

Path Parameters

Headers

Retour du web service
{
    "configurations": [
        {
            "data": {
                "description": "Délai avant expiration du token d'authentification (en minutes)",
                "type": "int",
                "value": "1440"
            },
            "display": true,
            "id": 1,
            "label": "jwtExpiration",
            "total": 8
        },
        {
            "data": {
                "description": "Delta maximum pour remonter une date de facture, en jours. -1 pour désactiver",
                "type": "int",
                "value": "-1"
            },
            "display": true,
            "id": 2,
            "label": "timeDelta",
            "total": 8
        },
        {
            "data": {
                "description": "Taille minimale pour un numéro de facture",
                "type": "int",
                "value": "6"
            },
            "display": true,
            "id": 6,
            "label": "invoiceSizeMin",
            "total": 8
        },
        {
            "data": {
                "description": "Taille minimale pour un numéro de devis",
                "type": "int",
                "value": "3"
            },
            "display": true,
            "id": 7,
            "label": "devisSizeMin",
            "total": 8
        },
        {
            "data": {
                "description": "Court message affiché sur l'écran d'accueil",
                "type": "string",
                "value": "Open-Capture - LAD / RAD"
            },
            "display": true,
            "id": 8,
            "label": "loginMessage",
            "total": 8
        },
        {
            "data": {
                "description": "Autoriser un utilisateur à être connecté sur plusieurs machines simultanément",
                "type": "bool",
                "value": true
            },
            "display": true,
            "id": 16,
            "label": "allowUserMultipleLogin",
            "total": 8
        },
        {
            "data": {
                "description": "Activer la restriction du chemin sur le dossier des chaînes entrantes",
                "type": "bool",
                "value": false
            },
            "display": true,
            "id": 17,
            "label": "restrictInputsPath",
            "total": 8
        },
        {
            "data": {
                "description": "Activer la restriction du chemin sur le dossier des chaînes sortantes",
                "type": "bool",
                "value": false
            },
            "display": true,
            "id": 18,
            "label": "restrictOutputsPath",
            "total": 8
        }
    ]
}

Récupération d'un paramètres global présent en base de données par son libellé

GET /config/getConfiguration/<string:config_label>

Path Parameters

Headers

Retour du web service
{
    "configuration": [
        {
            "data": {
                "description": "Paramétrage par défaut du MailCollect",
                "type": "json",
                "value": {
                    "batchPath": "/var/www/html/opencapture/bin/data/MailCollect/",
                    "smtpAuth": "",
                    "smtpDelay": "30",
                    "smtpDestAdminMail": "",
                    "smtpFromMail": "",
                    "smtpHost": "",
                    "smtpLogin": "",
                    "smtpNotifOnError": false,
                    "smtpPort": "",
                    "smtpPwd": "",
                    "smtpSSL": true,
                    "smtpStartTLS": false
                }
            },
            "display": false,
            "id": 8,
            "label": "mailCollectGeneral"
        }
    ]
}

Mise à jour d'une configuration par libellé

PUT /config/updateConfiguration/<string:configuration_label>

Request Body

Docservers

Récupération des docservers

GET /config/getDocservers

Path Parameters

Headers

Retour du web service
{
    "docservers": [
        {
            "description": "Chemin vers l'instance d'Open-Capture",
            "docserver_id": "PROJECT_PATH",
            "id": 1,
            "path": "/var/www/html/opencapture/",
            "total": 24
        },
        {
            "description": "Chemin vers le dossier contenant les fichiers de traductions",
            "docserver_id": "LOCALE_PATH",
            "id": 2,
            "path": "/var/www/html/opencapture/src/assets/locale/",
            "total": 24
        },
        {
            "description": "Chemin vers le dossier des batches en erreur",
            "docserver_id": "ERROR_PATH",
            "id": 3,
            "path": "/var/www/html/opencapture/bin/data/error/",
            "total": 24
        },
        {
            "description": "Chemin vers le dossier temporaires utilisé lors du traitement des documents",
            "docserver_id": "TMP_PATH",
            "id": 4,
            "path": "/var/www/html/opencapture/bin/data/tmp/",
            "total": 24
        },
        {
            "description": "Chemin vers le dossier contenant les différents scripts",
            "docserver_id": "SCRIPTS_PATH",
            "id": 5,
            "path": "/var/www/html/opencapture/bin/scripts/",
            "total": 24
        },
        {
            "description": "Chemin vers le dossier contenant les différents fichiers de configurations",
            "docserver_id": "CONFIG_PATH",
            "id": 6,
            "path": "/var/www/html/opencapture/instance/config/",
            "total": 24
        },
        {
            "description": "Chemin vers la zone de stockage",
            "docserver_id": "DOCSERVERS_PATH",
            "id": 7,
            "path": "/var/docservers/opencapture/",
            "total": 24
        },
        {
            "description": "Chemin vers le dossier contenant les fichiers de référentiel",
            "docserver_id": "REFERENTIALS_PATH",
            "id": 8,
            "path": "/var/www/html/opencapture/instance/referencial/",
            "total": 24
        },
        {
            "description": "[SÉPARATION PAR QR CODE] Chemin vers le dossier temporaire pour la séparation par QR Code",
            "docserver_id": "SEPARATOR_QR_TMP",
            "id": 9,
            "path": "/tmp/",
            "total": 24
        },
        {
            "description": "[SÉPARATION PAR QR CODE] Chemin vers le dossier de sortie des PDF",
            "docserver_id": "SEPARATOR_OUTPUT_PDF",
            "id": 10,
            "path": "/var/www/html/opencapture//bin/data/exported_pdf/",
            "total": 24
        },
        {
            "description": "[SÉPARATION PAR QR CODE] Chemin vers le dossier de sortie des PDF/A",
            "docserver_id": "SEPARATOR_OUTPUT_PDFA",
            "id": 11,
            "path": "/var/www/html/opencapture//bin/data/exported_pdfa/",
            "total": 24
        },
        {
            "description": "[VERIFIER] Chemin pour le stockage des miniatures",
            "docserver_id": "VERIFIER_THUMB",
            "id": 12,
            "path": "/var/docservers/opencapture/verifier/thumbs/",
            "total": 24
        },
        {
            "description": "[VERIFIER] Chemin pour le stockage des images",
            "docserver_id": "VERIFIER_IMAGE_FULL",
            "id": 13,
            "path": "/var/docservers/opencapture/verifier/full/",
            "total": 24
        },
        {
            "description": "[VERIFIER] Chemin pour le stockage des images nécessaire aux masques de positionnement",
            "docserver_id": "VERIFIER_POSITIONS_MASKS",
            "id": 14,
            "path": "/var/docservers/opencapture/verifier/positions_masks/",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin vers le dossier de stockage des dossiers de batch après traitement",
            "docserver_id": "SPLITTER_BATCHES",
            "id": 15,
            "path": "/var/docservers/opencapture/splitter/batches/",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin vers le dossier de sortie des PDF après traitement",
            "docserver_id": "SPLITTER_OUTPUT",
            "id": 16,
            "path": "/var/docservers/opencapture/splitter/separated_pdf/",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin vers le dossier contenant les PDF originaux",
            "docserver_id": "SPLITTER_ORIGINAL_PDF",
            "id": 17,
            "path": "/var/docservers/opencapture/splitter/original_pdf/",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin vers le dossier contenant les différents scripts de séparation",
            "docserver_id": "SPLITTER_METHODS_PATH",
            "id": 18,
            "path": "/var/www/html/opencapture/bin/scripts/splitter_methods/",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin vers le dossier contenant les différents scripts de récupération de métadonnées",
            "docserver_id": "SPLITTER_METADATA_PATH",
            "id": 19,
            "path": "/var/www/html/opencapture/bin/scripts/splitter_metadata/",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin pour le stockage des miniatures",
            "docserver_id": "SPLITTER_THUMB",
            "id": 22,
            "path": "/var/docservers/opencapture/splitter/thumbs/",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin vers le dossier contenant les données d'entraînement",
            "docserver_id": "SPLITTER_TRAIN_PATH_FILES",
            "id": 25,
            "path": "/var/docservers/opencapture/splitter/ai/train_data",
            "total": 24
        },
        {
            "description": "[SPLITTER] Chemin vers le dossier contenant le modèle de prédiction",
            "docserver_id": "SPLITTER_AI_MODEL_PATH",
            "id": 26,
            "path": "/var/docservers/opencapture/splitter/ai/models/",
            "total": 24
        },
        {
            "description": "[VERIFIER] Chemin vers le dossier contenant les données d'entraînement",
            "docserver_id": "VERIFIER_TRAIN_PATH_FILES",
            "id": 29,
            "path": "/var/docservers/opencapture/verifier/ai/train_data",
            "total": 24
        },
        {
            "description": "[VERIFIER] Chemin vers le dossier contenant le modèle de prédiction",
            "docserver_id": "VERIFIER_AI_MODEL_PATH",
            "id": 30,
            "path": "/var/docservers/opencapture/verifier/ai/models/",
            "total": 24
        }
    ]
}

Mise à jour d'un docserver par id

PUT /config/updateDocserver/<string:docserver_id>

Request Body

Regex

Récupération des regex

GET /config/getRegex

Path Parameters

Headers

Retour du web service
{
    "regex": [
        {
            "content": "([A-Za-z0-9]+[\\.\\-_])*[A-Za-z0-9]+@[A-Za-z0-9-]+(\\.[A-Z|a-z]{2,})+",
            "id": 1,
            "label": "Adresse email",
            "lang": "global",
            "regex_id": "email",
            "total": 20
        },
        {
            "content": "[0-9]{14}",
            "id": 2,
            "label": "Numéro de SIRET",
            "lang": "global",
            "regex_id": "siret",
            "total": 20
        },
        {
            "content": "[0-9]{9}",
            "id": 3,
            "label": "Numéro de SIREN",
            "lang": "global",
            "regex_id": "siren",
            "total": 20
        },
        {
            "content": "[A-Z]{2}(?:[ ]?[0-9]){18,25}",
            "id": 4,
            "label": "Numéro d'IBAN",
            "lang": "global",
            "regex_id": "iban",
            "total": 20
        },
        {
            "content": "(EU|SI|HU|D(K|E)|PL|CHE|(F|H)R|B(E|G)(0)?)[0-9A-Z]{2}[0-9]{6,9}",
            "id": 5,
            "label": "Numéro de TVA",
            "lang": "global",
            "regex_id": "vat_number",
            "total": 20
        },
        {
            "content": "((3[01]|[12][0-9]|0?[1-9])|\\d{1}\\w{2})\\s?([JFMASONDjfmasond][a-zA-Z_À-ÿ\\.,-]{2,9}|[/,-\\.](1[0-2]|0?[1-9])[/,-\\.])\\s?((1|2|3){1}\\d{1,3}|(1|2|3))",
            "id": 6,
            "label": "Date",
            "lang": "fra",
            "regex_id": "date",
            "total": 20
        },
        {
            "content": "((DATE)?\\s*(D('|\\s*))?(E|É)CH(É|E)ANCE(\\(S\\))?\\s*:?\\s*([0-9]*(\\.?\\,?\\s?)[0-9]+((\\.?\\,?\\s?)[0-9])+|[0-9]+)?\\s*(€)?\\s*(AU)?\\s*|FACTURE\\s*(A|À)\\s*PAYER\\s*AVANT\\s*LE\\s*(:)?\\s*)",
            "id": 7,
            "label": "Date d'échance",
            "lang": "fra",
            "regex_id": "due_date",
            "total": 20
        },
        {
            "content": "(((?P<r1>NUMERO|N(O|°|º|R.))?\\s*(DE)?\\s*(FACTURE|PI(E|È)CE|DOCUMENT)(\\s*:)?\\s*(?(r1)()|(NUMERO|N(O|°|º|R.)?))(\\s*:)?)|(FACTURE(/)?(DATE)?)\\s*(ACQUIT(T)?(E|É)E)?\\s*(:|#){1}).*",
            "id": 8,
            "label": "Numéro de facture",
            "lang": "fra",
            "regex_id": "invoice_number",
            "total": 20
        },
        {
            "content": "((NUM(E|É)RO|N(O|°|º|R.)?|R(E|É)F(\\.)?((E|É)RENCE)?)?\\s*(DE)?\\s*(BON)?\\s*(DE)?\\s*(LIVRAISON)|NOTE\\s*D(')?ENVOI|(BON|BULLETIN)\\s*DE\\s*LIVR(\\.))\\s*:?.*",
            "id": 9,
            "label": "Numéro de livraison",
            "lang": "fra",
            "regex_id": "delivery_number",
            "total": 20
        },
        {
            "content": "(((?P<r1>(NUM(E|É)RO|N(O|°|º|R.)?|R(E|É)F(\\.)?((E|É)RENCE)?))?\\s*(DE)?\\s*(DEVIS|COMMANDE|C(M)?DE|DOCUMENT)\\s*(INTERNET|EXTERNE|WEB)?(\\s*:)?\\s*(?(r1)()|(NUMERO|N(O|°|º|R.)?))(\\s*:)?|(R(E|É)F(\\.)?\\s*PROPOSITION\\s*COMMERCIALE)|(CONTRAT|COMMANDE|C(M)?DE)\\s*(NUMERO|N(O|°|º|R.)))\\s*(:|#){0,1}).*",
            "id": 10,
            "label": "Numéro de devis",
            "lang": "fra",
            "regex_id": "quotation_number",
            "total": 20
        },
        {
            "content": "(?P<r1>MONTANT\\s*(NET)?|(SOUS(-|\\s+)?)TOTAL|VAT\\s*BASE|VALEUR\\s*(BRUTE|POSITIONS|NETTE\\s*TOTALE)|IMPOSABLE|TOTAL(S)?\\s*DES\\s*DIVERS\\s*(À|A)\\s*VENTILER|PRIX\\s*NET\\s*(TOTAL)?|TOTAL\\s*(ORDRE|NET|INTERM(E|É)DIAIRE)|BASE\\s*TOTAL)?\\s*(:\\s*|EN)?(€|EUROS|EUR|CAD)?\\s*(?(r1)()|(\\()?((H(\\.)?T(\\.)?(V(\\.)?A(\\.)?)?|HORS TVA|(EXCL|BASE)\\s*(\\.)?\\s*TVA|HORS\\s*TAXES|TOTAL\\s*INTERM(É|E)DIAIRE))(\\))?){1}\\s*(:)?(€|EUROS|EUR|CAD)?\\s*([0-9]*(\\.?\\,?\\s?)[0-9]+((\\.?\\,?\\s?)[0-9])+|[0-9]+)\\s*(€|EUROS|EUR|CAD)?|([0-9]*(\\.?\\,?\\s?)[0-9]+((\\.?\\,?\\s?)[0-9])+|[0-9]+)\\s*(€)?\\s*(HT)",
            "id": 11,
            "label": "Montant HT",
            "lang": "fra",
            "regex_id": "no_rates",
            "total": 20
        },
        {
            "content": "(?P<r1>MONTANT|^\\s*TOTAL)?\\s*(:\\s*)?(€|EUROS|EUR|CAD)?\\s*(?(r1)()|(T(.)?T(.)?C|\\(TVA COMPRISE\\)|TVAC|TVA\\s*INCLUSE|(MONTANT)?NET\\s*(À|A)\\s*(PAYER|VERSER))){1}(\\s*(À|A)\\s*PAYER)?\\s*(:|(€|EUROS|EUR|CAD))?\\s*([0-9]*(\\.?\\,?\\|?\\s?)[0-9]+((\\.?\\,?\\s?)[0-9])+|[0-9]+)\\s*(€|EUROS|EUR|CAD)?",
            "id": 12,
            "label": "Montant TTC",
            "lang": "fra",
            "regex_id": "all_rates",
            "total": 20
        },
        {
            "content": "(TVA|%)\\s*(5(?:\\.|,)5|19(?:\\.|,)6|(6|10|12|20)(?:[.,]0{1,3})?)|(5(?:\\.|,)5|19(?:\\.|,)6|(6|10|12|20)(?:[.,]0{1,3})?)(\\s*%)",
            "id": 13,
            "label": "Taux de TVA",
            "lang": "fra",
            "regex_id": "vat_rate",
            "total": 20
        },
        {
            "content": "((MONTANT|TOTAL|DONT)\\s*TVA(\\s*[0-9.,]*\\s*%)?(\\s*\\(SUR\\s*FACTURE\\s*\\))?|TVA\\s*[0-9.,]*\\s*%|TVA\\s*[0-9.,]*\\s*%?\\s*SUR\\s*[0-9.,]*\\s*[A-Z\\s']*|%\\s*TVA)\\s*(€|EUROS|EUR|CAD)?.*",
            "id": 14,
            "label": "Montant TVA",
            "lang": "fra",
            "regex_id": "vat_amount",
            "total": 20
        },
        {
            "content": "[20, 19.6, 10, 5.5, 2.1]",
            "id": 15,
            "label": "Liste des taux de TVA",
            "lang": "fra",
            "regex_id": "vat_rate_list",
            "total": 20
        },
        {
            "content": "%d/%m/%Y",
            "id": 16,
            "label": "Format final de la date",
            "lang": "fra",
            "regex_id": "format_date",
            "total": 20
        },
        {
            "content": "<!-- %BEGIN-DOCUMENT-LOOP -->(.*?)<!-- %END-DOCUMENT-LOOP -->",
            "id": 17,
            "label": "Boucle des documents dans la sortie XML du Splitter",
            "lang": "fra",
            "regex_id": "splitter_doc_loop",
            "total": 20
        },
        {
            "content": "<!-- %BEGIN-IF(.*?) -->(.*?)<!-- %END-IF -->",
            "id": 18,
            "label": "Condition des balises dans la sortie XML du Splitter",
            "lang": "fra",
            "regex_id": "splitter_condition",
            "total": 20
        },
        {
            "content": "\\s?<!--[\\s\\S\\n]*?-->\\s",
            "id": 19,
            "label": "Commentaire technique dans la sortie XML du Splitter",
            "lang": "fra",
            "regex_id": "splitter_xml_comment",
            "total": 20
        },
        {
            "content": "^\\s*$",
            "id": 20,
            "label": "Lignes vides dans la sortie XML du Splitter",
            "lang": "fra",
            "regex_id": "splitter_empty_line",
            "total": 20
        }
    ]
}

Mise à jour d'une regex par id

PUT /config/updateRegex/<string:regex_id>

Request Body

Last updated