Menu

#21 [M1] Endpoint Stato richieste asincrone — GET /richieste/{id}

open
nobody
2026-05-11
2026-05-11
Anonymous
No

Originally created by: zornade

Contesto

Parte della Roadmap v0.2 [#15] — Milestone 1.

Obiettivo

Molti endpoint SISTER non rispondono sincronamente: restituiscono un ID richiesta e l'esito è disponibile dopo qualche secondo/minuto in una pagina "Stato Richieste". Va esposto come endpoint REST.

API proposta

GET /richieste/{request_id}

Output:

{
  "id": "...",
  "status": "PENDING|READY|ERROR",
  "type": "ipotecaria|planimetrico|...",
  "created_at": "...",
  "completed_at": "...",
  "result_url": "..."
}

Lavoro richiesto

  • [ ] Mappare la pagina "Stato Richieste" del portale SISTER (alcuni endpoint asincroni la usano).
  • [ ] Distinguere tra request_id interno della coda VisuraService (già esistente) e ID del portale SISTER (esterno).
  • [ ] Eventualmente introdurre external_request_id nel modello dati.
  • [ ] Aggiungere run_richieste_status() in utils.py.
  • [ ] Endpoint GET /richieste/{id} in main.py.
  • [ ] Smoke test con richiesta asincrona reale (es. ipotecaria).
  • [ ] Aggiornare README.

Casi edge

  • ID non trovato → 404.
  • ID scaduto sul portale (oltre N giorni) → status EXPIRED.
  • Richiesta in errore → propagare il messaggio del portale.

Dipendenze

Si abilita correttamente solo dopo aver implementato almeno un endpoint asincrono (es. ipotecaria, planimetrico).

Related

Tickets: #15

Discussion


Log in to post a comment.