Documentation / Reference API
Documents
Catalogue des textes officiels indexes par Bangré. Sert a hydrater les citations renvoyees par le chat ou a explorer le corpus.
Ces routes exigent un JWT (compte actif) dans le header Authorization: Bearer <token>, obtenu via POST /api/v1/auth/login. Seul le fichier PDF d'un document (/documents/{id}/file) reste accessible par lien direct, pour que les citations du chat s'ouvrent dans le navigateur.
Lister les documents
GET/api/v1/documents
Reponse paginee. Tri par date_promulgation decroissante.
Query params
domainestringoptional
Filtre sur le domaine metier (
impots, douanes...).doc_typestringoptional
Filtre sur le type (
loi, decret, arrete, circulaire, code).statutstringoptional
Filtre sur le statut (
en_vigueur, abroge, modifie).qstringoptional
Recherche libre sur le titre (ILIKE).
pageintoptional
Defaut 1, >= 1.
page_sizeintoptional
Defaut 20, max 100.
Exemples
curl -H "Authorization: Bearer $KNOWB_JWT" \
"http://localhost:8000/api/v1/documents?domaine=impots&statut=en_vigueur&page=1&page_size=20"Reponse
json
{
"items": [
{
"id": "f3a0c1...",
"title": "Loi n° 058/2017/AN portant Code general des impots",
"doc_type": "loi",
"domaine": "impots",
"numero_officiel": "058/2017/AN",
"date_promulgation": "2017-12-20",
"date_entree_vigueur": "2018-01-01",
"statut": "en_vigueur",
"url_source": "https://...",
"abroge_par": null,
"chunks_count": 1248
}
],
"total": 47,
"page": 1,
"page_size": 20
}Detail d'un document
GET/api/v1/documents/{id}
bash
curl -H "Authorization: Bearer $KNOWB_JWT" \
http://localhost:8000/api/v1/documents/f3a0c1f4-2b9e-4b3a-8a3e-9b1c8f4e1d22Retourne le meme schema LegalDocument que les items de la liste, ou 404 si l'identifiant est inconnu.
Forme LegalDocument
iduuidrequired
Identifiant stable du document.
titlestringrequired
Titre officiel complet.
doc_typeenumrequired
Type de texte :
loi, decret, arrete, circulaire, code, constitution.domaineenumrequired
impots, douanes, travail, civil, penal, foncier, etc.numero_officielstringrequired
Numero du Journal Officiel, ex.
058/2017/AN.date_promulgationdaterequired
Date de promulgation (ISO 8601).
date_entree_vigueurdaterequired
Date d'entree en vigueur (ISO 8601).
statutenumrequired
en_vigueur, abroge, modifie.url_sourcestringrequired
URL du PDF Journal Officiel.
abroge_paruuid | nulloptional
Document qui abroge celui-ci, si applicable.
chunks_countintrequired
Nombre de chunks indexes dans Milvus.