KyvShield API v2.1

API de verification de Carte d'Identite Nationale du Senegal avec detection de fraude multi-couches. Analysez les documents, detectez les manipulations et validez l'authenticite en temps reel.

Demarrage Rapide

  1. 1 Envoyez une image de CIN (recto ou verso) via POST multipart/form-data
  2. 2 Recevez l'analyse avec score de fraude, donnees extraites et decision
  3. 3 Interpretez le resultat: PASS (authentique), REVIEW (a verifier), REJECT (frauduleux)

Base URL

Production: https://kyvshield.innolink.sn
Local: http://localhost:8080

CNN Detection

Deep learning EfficientNet-B0

OCR Hybride

DocTR + Tesseract

6 Couches

Analyse multi-niveaux

Endpoints

POST /api/analyse/recto

Analyse le recto d'une CIN senegalaise. Extrait les informations et calcule un score de fraude.

Request

Content-Type: multipart/form-data
Body: image (file) - Image JPG/PNG de la CIN

Parametres optionnels

Tous les parametres de seuils et poids sont configurables. Voir les sections Seuils et Poids pour la documentation complete.

Parametre Type Description
image file Requis - Image JPG/PNG de la CIN
birth_date string Date de naissance (JJ/MM/AAAA) pour validation croisee
debug_steps boolean Si true, retourne le detail des durees de chaque etape (Go + Python) dans debug_steps[]
threshold_* float Voir Seuils
weight_* float Voir Poids
POST /api/analyse/verso

Analyse le verso d'une CIN. Extrait le NIN et les informations MRZ.

GET /health

Retourne le statut de l'API et la configuration active.

Format de Reponse

Champs principaux

Champ Description
fraud_analysis.status Decision: PASS, REVIEW, ou REJECT
fraud_analysis.authenticity_score Score d'authenticite (0-1)
extraction Donnees extraites (nom, prenoms, date, etc.)
cnn_analysis Resultat du modele CNN
photoshop_analysis Detection de manipulation

Exemples de Code

Integrez l'API KyvShield dans votre application avec ces exemples.

Analyse CIN Recto

curl -X POST "https://kyvshield.innolink.sn/api/analyse/recto" \
  -F "image=@/path/to/cin_recto.jpg"
Note: Pour le verso, remplacez /api/analyse/recto par /api/analyse/verso

Seuils (Thresholds)

Les seuils controlent les decisions PASS/REVIEW/REJECT et la sensibilite de detection.

Parametre Defaut Plage Description
threshold_pass 0.3 0.0 - 1.0 Score minimum pour PASS. En dessous = document authentique
threshold_review 0.5 0.0 - 1.0 Score minimum pour REVIEW. Entre PASS et REVIEW = verification manuelle
threshold_handwritten_boost 0.7 0.0 - 1.0 Boost applique si ecriture manuscrite detectee (fraude probable)
threshold_photoshop_boost 0.6 0.0 - 1.0 Boost applique si manipulation Photoshop detectee
threshold_invalid_format_boost 0.35 0.0 - 1.0 Boost applique si format CIN invalide (numero incorrect)
handwritten_threshold 0.55 0.0 - 1.0 Seuil pour considerer le texte comme manuscrit
ocrb_threshold 0.4 0.0 - 1.0 Seuil de conformite police OCR-B (numerique CIN)
Logique de decision:
score < threshold_passPASS
threshold_pass ≤ score < threshold_reviewREVIEW
score ≥ threshold_reviewREJECT

Poids (Weights)

Les poids determinent l'importance relative de chaque composant dans le score final de fraude.

Parametre Defaut Composant Description
weight_cnn 5.0 CNN Reseau neuronal EfficientNet-B0 (plus fiable)
weight_ocrb 4.0 OCR-B Conformite police OCR-B standard CIN
weight_cin 3.0 Format CIN Validation format numero CIN (13 chiffres)
weight_photoshop 2.0 Photoshop Detection manipulation (metadonnees, artefacts)
weight_font 2.0 Police Coherence typographique du document
Formule du score: Le score final est une moyenne ponderee de tous les composants. score = Σ(component_score × weight) / Σ(weights) Par defaut: CNN (5) + OCR-B (4) + CIN (3) + Photoshop (2) + Font (2) = 16 points total

API Playground

Testez l'API directement depuis votre navigateur.

Request

Glissez une image ici

JPG, PNG - Max 10MB

Serveur de test (CPU)

Le traitement peut prendre jusqu'a 30 secondes sur le serveur de test CPU. L'environnement de production utilise un GPU pour des temps de reponse <5s.

Response

La reponse apparaitra ici apres l'envoi