API d'intégration
Intégrez l'analyse FEC dans votre logiciel comptable
Démarrage rapide
Un seul appel POST suffit. Envoyez le contenu FEC brut, recevez les anomalies en JSON.
POST
https://auditcomptable.abacusai.app/api/external/analyzeChaque requête doit inclure votre clé API dans le header x-api-key ou en Authorization: Bearer <key>.
bash
# Avec x-api-key
curl -X POST https://auditcomptable.abacusai.app/api/external/analyze \
-H "x-api-key: votre_clé_api" \
-H "Content-Type: application/json" \
-d '{"content": "JournalCode|JournalLib|..."}'
# Avec Authorization Bearer
curl -X POST https://auditcomptable.abacusai.app/api/external/analyze \
-H "Authorization: Bearer votre_clé_api" \
-H "Content-Type: application/json" \
-d '{"content": "..."}'Option 1 — JSON (recommandé)
json
POST https://auditcomptable.abacusai.app/api/external/analyze
Content-Type: application/json
x-api-key: votre_clé_api
{
"content": "JournalCode|JournalLib|EcritureNum|EcritureDate|CompteNum|CompteLib|...",
"options": {
"disabledControls": ["doublons", "chronologie"]
}
}Option 2 — Envoi brut (text/plain)
Envoyez directement le contenu du fichier FEC comme body de la requête.
bash
curl -X POST https://auditcomptable.abacusai.app/api/external/analyze \
-H "x-api-key: votre_clé_api" \
-H "Content-Type: text/plain" \
--data-binary @mon_fichier.fecParamètres du body JSON
| Champ | Type | Requis | Description |
|---|---|---|---|
| content | string | ✅ | Contenu brut du fichier FEC (pipe ou tab) |
| options.disabledControls | string[] | ❌ | Catégories de contrôles à désactiver |
json
{
"success": true,
"meta": {
"totalEntries": 3424,
"comptaType": "engagement",
"periodStart": "2024-01-01",
"periodEnd": "2024-12-31",
"analyzedAt": "2026-05-15T19:00:00.000Z"
},
"summary": {
"totalAnomalies": 145,
"bySeverity": { "critique": 28, "importante": 105, "mineure": 12 },
"byType": { "desequilibre": 21, "doublon": 16, "...": "..." }
},
"anomalies": [
{
"type": "desequilibre",
"severity": "critique",
"title": "Écriture déséquilibrée — n°12345",
"description": "L'écriture n°12345 présente un déséquilibre...",
"compteNum": "411000",
"period": null,
"expectedValue": "Débit = Crédit",
"actualValue": "Écart de 150.00 €",
"suggestion": "Vérifiez les montants..."
}
]
}Python (requests)
python
import requests
API_URL = "https://auditcomptable.abacusai.app/api/external/analyze"
API_KEY = "votre_clé_api"
# Lire le fichier FEC
with open("FEC_2024.txt", "r", encoding="utf-8") as f:
fec_content = f.read()
# Appel API
response = requests.post(
API_URL,
json={"content": fec_content},
headers={"x-api-key": API_KEY}
)
result = response.json()
# Afficher le résumé
print(f"✅ {result['meta']['totalEntries']} écritures analysées")
print(f"⚠️ {result['summary']['totalAnomalies']} anomalies détectées")
print(f" 🔴 {result['summary']['bySeverity']['critique']} critiques")
print(f" 🟠 {result['summary']['bySeverity']['importante']} importantes")
print(f" 🔵 {result['summary']['bySeverity']['mineure']} mineures")
# Parcourir les anomalies critiques
for a in result["anomalies"]:
if a["severity"] == "critique":
print(f"
❌ {a['title']}
{a['description']}
💡 {a['suggestion']}")JavaScript / Node.js (fetch)
javascript
const API_URL = "https://auditcomptable.abacusai.app/api/external/analyze";
const API_KEY = "votre_clé_api";
async function analyzeFEC(fecContent) {
const response = await fetch(API_URL, {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-api-key": API_KEY,
},
body: JSON.stringify({
content: fecContent,
options: {
// Désactiver certains contrôles si besoin
// disabledControls: ["doublons"]
}
}),
});
const result = await response.json();
if (!result.success) {
throw new Error(result.error);
}
console.log(
`Analysé: ${result.meta.totalEntries} écritures, ` +
`${result.summary.totalAnomalies} anomalies`
);
return result;
}
// Usage
const fs = require("fs");
const fec = fs.readFileSync("FEC_2024.txt", "utf-8");
analyzeFEC(fec).then(r => console.log(r.summary));PHP (cURL)
php
<?php
$apiUrl = "https://auditcomptable.abacusai.app/api/external/analyze";
$apiKey = "votre_clé_api";
$fecContent = file_get_contents("FEC_2024.txt");
$ch = curl_init($apiUrl);
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: " . $apiKey,
],
CURLOPT_POSTFIELDS => json_encode([
"content" => $fecContent,
]),
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
echo "Anomalies détectées: " . $result["summary"]["totalAnomalies"] . "\n";
echo "Critiques: " . $result["summary"]["bySeverity"]["critique"] . "\n";
foreach ($result["anomalies"] as $anomaly) {
if ($anomaly["severity"] === "critique") {
echo "⚠️ " . $anomaly["title"] . "\n";
}
}
?>