Commenti
I commenti si agganciano a un segnaposto, a un livello o a un disegno, con un ancoraggio geografico facoltativo. REST rispecchia le operazioni disponibili nell’app.
| Metodo | Percorso | Permesso | Corpo |
|---|---|---|---|
GET |
/api/rooms/:roomId/comments |
read | query: objectId?, objectType?, resolved? |
POST |
/api/rooms/:roomId/comments |
write | { objectId, objectType, body, objectName?, lat?, lng? } |
POST |
/api/rooms/:roomId/comments/:commentId/replies |
write | { body } |
PATCH |
/api/rooms/:roomId/comments/:commentId |
write | { resolved: boolean } |
DELETE |
/api/rooms/:roomId/comments/:commentId |
write | — |
DELETE |
/api/rooms/:roomId/comments/:commentId/replies/:replyId |
write | — |
objectType è uno fra marker, layer, drawing. Esempio:
curl -X POST "$API/api/rooms/$ROOM/comments" -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{"objectId":"marker-1","objectType":"marker","body":"needs review","lat":47.56,"lng":7.59}'Validazione (400): objectType deve essere uno dei tre; body non vuoto e ≤ 5000 caratteri;
objectName ≤ 500; lat/lng finiti, entro i limiti, entrambi o nessuno.
Regole di eliminazione: un token API della stanza può eliminare solo commenti e risposte di cui è autore; una sessione utente può eliminarli tutti.

