Rechercher dans le corpus
POST /public/legal/search
Renvoie les extraits du corpus les plus pertinents pour une recherche,
sans aucune génération de texte : chaque résultat est un extrait réel,
avec un identifiant stable que vous pouvez ensuite passer à
GET /public/legal/doc/{id}.
Utilisez search pour construire votre propre interface ou votre propre
raisonnement à partir des textes ; utilisez
ask pour obtenir directement une réponse rédigée.
Authentification : aucune. Portée : Bénin (BJ) uniquement.
Requête
curl -X POST "https://api.paienova.com/ai-platform-service/api/v1/public/legal/search" \
-H "Content-Type: application/json" \
-d '{ "query": "taux de TVA", "country_iso": "BJ", "k": 3 }'
| Champ | Type | Obligatoire | Description |
|---|---|---|---|
query | texte | oui | La recherche, de 3 à 2000 caractères. |
country_iso | texte | non (BJ) | Code pays ISO à 2 lettres. Seul BJ dispose d'un corpus. |
k | entier | non (5) | Nombre maximum de résultats, de 1 à 20. Une valeur hors de cet intervalle est rejetée (422). |
Réponse
Réponse réelle (HTTP 200, serveur de développement, 24/09/2026, pour query: "taux de TVA", k: 3 ; extraits abrégés) :
{
"success": true,
"data": {
"results": [
{
"id": "CGI:Art. 241 CGI@2085ed91",
"title": "Art. 241 CGI (Code General des Impots BJ 2026)",
"url": null,
"excerpt": "Art. 241) - Taux de la TVA au Benin: Taux UNIQUE = 18% (la TVA beninoise est mono-taux, pas de taux reduit). L..."
},
{
"id": "DGI_INSTRUCTION:DGI (p.3)@af2dccb7",
"title": "DGI Benin, E3_exonerations-classiques, page 3",
"url": null,
"excerpt": "III - EVALUATION DE LA FISCALITE PERCUE AU CORDON DOUANIER IMPORTATIONS NATURE QUANTITE Valeur HT unitaire Val..."
},
{
"id": "SYSCOHADA:Art. 57 SYSCOHADA@2b5965a6",
"title": "Art. 57 SYSCOHADA (suite) (OHADA / SYSCOHADA, Guide d'application)",
"url": null,
"excerpt": "st facturé au client local, le coût de production prévisionnel ayant été correctement prévu par les services t..."
}
],
"not_found": false,
"disclaimer": "⚠️ Information juridique générale fournie à titre informatif, sur la base du corpus légal indexé (...). Elle ne constitue pas un conseil juridique, fiscal ou comptable personnalisé. (...)"
},
"error": null
}
Champ de data | Description |
|---|---|
results[].id | Identifiant <document_type>:<article_code>@<version>, à passer tel quel à /doc/{id}. |
results[].title | Titre de l'article. |
results[].url | Lien vers la source officielle quand il existe. Souvent null aujourd'hui. |
results[].excerpt | Un extrait de l'article (aperçu), pas le texte complet. |
not_found | true, avec results vide, quand rien de pertinent n'est trouvé. |
disclaimer | Rappel juridique, toujours présent. |
Les résultats sont classés par pertinence. Un résultat pertinent n'est pas
une réponse : lisez l'article complet avec /doc/{id} avant
d'en tirer une conclusion.
Erreurs
| HTTP | error.code | Cause |
|---|---|---|
| 400 | PUBLIC_LEGAL_QUESTION_TOO_SHORT | query de moins de 3 caractères. |
| 400 | PUBLIC_LEGAL_QUESTION_TOO_LONG | query de plus de 2000 caractères. |
| 400 | PUBLIC_LEGAL_INVALID_COUNTRY | country_iso mal formé. |
| 422 | (forme différente) | JSON non conforme, k hors de 1 à 20, champ inconnu. Voir erreurs de format. |
| 429 | PUBLIC_LEGAL_RATE_LIMITED | Limite d'usage atteinte. Attendez la durée de l'en-tête Retry-After. |