API (Technique)
AI proxy (Next.js)
Routes proxy vers services AI (liveness, geocode).

API — AI proxy (Next.js)

Ces routes sont des proxys Next.js (runtime Node.js) vers un service AI externe. Elles servent d’adaptateur réseau et ne redéfinissent pas le schéma métier: le body et la réponse sont majoritairement pass-through.

Préfixe: /api/ai

Upstream base URL

Le proxy résout l’upstream dans cet ordre:

  1. AI_LIVENESS_URL
  2. NEXT_PUBLIC_AI_LIVENESS_URL
  3. http://127.0.0.1:5101

Conventions de proxy

  • Le proxy renvoie le status code upstream tel quel.
  • Le proxy renvoie le body upstream tel quel (texte).
  • Content-Type est repris depuis l’upstream, sinon application/json.
  • Pour les POST, le proxy lit req.text() et forwarde le body tel quel.
  • cache: no-store est forcé sur les routes dynamiques.

Endpoints

Health

MéthodeGET
Path/api/ai/liveness/health
UpstreamGET {baseUrl}/health

Réponse: pass-through.

Capabilities

MéthodeGET
Path/api/ai/liveness/capabilities
UpstreamGET {baseUrl}/v1/liveness/capabilities

Réponse: pass-through.

Create session

MéthodePOST
Path/api/ai/liveness/session
UpstreamPOST {baseUrl}/v1/liveness/session

Headers

NomRequisDescription
Content-TypenonSi absent, application/json est utilisé

Body: pass-through (opaque).

Réponse: pass-through.

Submit frame

MéthodePOST
Path/api/ai/liveness/frame
UpstreamPOST {baseUrl}/v1/liveness/frame

Headers

NomRequisDescription
Content-TypenonSi absent, application/json est utilisé

Body: pass-through (opaque).

Réponse: pass-through.

Reverse geocode

MéthodePOST
Path/api/ai/reverse-geocode
UpstreamPOST {baseUrl}/v1/reverse-geocode

Headers

NomRequisDescription
Content-TypenonSi absent, application/json est utilisé

Body: pass-through (opaque).

Réponse: pass-through.