SpectraSpectra

Documentazione

Convenzioni & errori

Le regole comuni a tutta l'API: indirizzi base, autenticazione, formato delle risposte, codici di stato e livelli di autorità.

Indirizzi base

Nei percorsi di questa documentazione, https://api.spectraholo.it è l'indirizzo dell'API server e https://auth.spectraholo.it quello dell'Auth server (usato solo per il login). I segnaposto tra graffe, come {orgId} o {viewerId}, vanno sostituiti con i valori reali.

Autenticazione

Quasi tutti gli endpoint richiedono un token utenteottenuto con il login, inviato a ogni richiesta nell'header:

Authorization: Bearer <token>

Alcuni endpoint sono pubblici(es. il logo o l'avatar) e non richiedono autenticazione. Vedi Autenticazione per ottenere e revocare un token.

Formato delle risposte

Le risposte JSON seguono una busta uniforme con il campo success; in caso di errore è presente un message leggibile.

Successo

{
  "success": true,
  "organization": { "id": 42, "name": "ACME" }
}

Errore

{
  "success": false,
  "message": "Invalid or expired session."
}

Codici di stato

200 · 201Operazione riuscita (201 quando viene creata una risorsa).
400Richiesta non valida: corpo JSON malformato o campi non validi.
401Autenticazione mancante o token non valido/scaduto.
403Autenticato ma authority insufficiente per l'operazione.
404Risorsa non trovata (organizzazione, utente, modello, viewer…).
409Conflitto: es. username/email già in uso, viewer non in pairing.
413Payload troppo grande: file oltre il limite o quota di storage superata.
429Troppe richieste (es. tentativi di login): riprova più tardi.
502Un servizio interno è momentaneamente irraggiungibile: riprova.

Livelli di authority

Ogni utente ha un livello di autorità da 0 a 3. I livelli sono cumulativi: un livello include i permessi di quelli inferiori. Gli endpoint indicano l'authority minima richiesta.

0LetturaConsulta organizzazione, membri, modelli e viewer.
1DisplayDecide cosa mostrano i viewer (assegna/azzera il modello).
2GestioneAccoppia/dissocia viewer e gestisce i modelli 3D.
3AdminGestisce gli utenti e il profilo dell'organizzazione.

Suggerimento

Le operazioni di scrittura mostrano il metodo nel box dell'endpoint (POST , PATCH , DELETE): controlla sempre l'authority minima indicata.