Tako.API

Documentazione delle API REST

Backend ASP.NET Core (C#) con autenticazione JWT a durata estendibile (sliding expiration) e accesso al database MariaDB tramite Dapper. Questa pagina elenca tutti i 84 endpoint disponibili, raggruppati per entità, con esempio di body e comando curl pronto all'uso.

Formato dei comandi curl:
Si applica a tutti i comandi della pagina e viene ricordato al prossimo accesso.

Guida rapida

1. Ottenere un'utenza

Non è possibile registrarsi autonomamente: POST /user è riservato all'amministrazione. Per ottenere un'utenza utilizzabile scrivi alla direzione all'indirizzo info@marcosarti.com indicando i tuoi dati: riceverai le credenziali di accesso da usare con POST /user/auth per il login (la risposta contiene un token JWT da usare come Bearer token in tutte le altre chiamate). La password viene sempre salvata e verificata come hash SHA1, mai in chiaro.

2. Durata della sessione (sliding expiration)

Il middleware JwtAuthMiddleware verifica il token ad ogni richiesta e ne estende la validità in memoria di JWT_EXPIRATION_MINUTES minuti (default 30), senza mai rigenerare la stringa del token. Se il token resta inattivo oltre quel periodo, o dopo DELETE /user/auth (logout), tutte le richieste tornano 401.

3. Header di autenticazione

Authorization: Bearer <token>

Nei comandi curl qui sotto sostituisci <token> con il valore ottenuto dal login. Usa il selettore in alto ("Formato dei comandi curl") per scegliere tra Linux/bash, cmd.exe e PowerShell: ogni shell tratta le virgolette in modo diverso, quindi ogni comando è già pronto nel formato corretto per quella che hai scelto (per PowerShell viene usato curl.exe --% invece dell'alias curl, che lì punta a Invoke-WebRequest).

4. Formato errori

{ "error": "descrizione del problema" }

401 token mancante/scaduto · 404 risorsa non trovata · 400 riferimento non valido (FK) · 409 vincolo di unicità violato.

Variabili d'ambiente richieste dal container

VariabileObbligatoriaDefault
DB_HOSTnodbs1.team-icon.net
DB_PORTno3306
DB_NAMEnodbtako
DB_USERsì—
DB_PASSWORDsì—
JWT_SECRETsì—
JWT_ISSUERnoTako.API
JWT_AUDIENCEnoTako.API.Clients
JWT_EXPIRATION_MINUTESno30 (sliding)
JWT_ABSOLUTE_EXPIRATION_HOURSno24 (tetto massimo)

Nessun segreto va scritto in file .env o appsettings.json: sono lette esclusivamente da variabili d'ambiente del processo/container.

Utenti (users)

tabella: users
GET /users richiede JWT

Elenco utenti.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/users" -H "Authorization: Bearer <token>"
GET /user/{uid} richiede JWT

Dettaglio di un utente.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/user/1" -H "Authorization: Bearer <token>"
GET /user/{uid}/companies richiede JWT

Aziende collegate a questo utente (dialogo users → companies).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/user/1/companies" -H "Authorization: Bearer <token>"
GET /user/{uid}/logs richiede JWT

Log applicativi generati da questo utente (dialogo users → applog).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/user/1/logs" -H "Authorization: Bearer <token>"
POST /user richiede JWT

Creazione di un nuovo utente, riservata all'amministrazione (non è una registrazione pubblica). La password viene salvata come hash SHA1.

Body JSON

{
  "usr": "mario.rossi",
  "pwd": "PasswordSicura1",
  "pkey": null,
  "rid": 500,
  "name": "Mario",
  "surname": "Rossi"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/user" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"usr":"mario.rossi","pwd":"PasswordSicura1","pkey":null,"rid":500,"name":"Mario","surname":"Rossi"}'
PUT /user/{uid} richiede JWT

Aggiornamento utente (campi opzionali). Se valorizzata, la password viene ri-hashata con SHA1.

Body JSON

{
  "pwd": "NuovaPassword1",
  "pkey": null,
  "rid": 500,
  "name": "Mario",
  "surname": "Rossi"
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/user/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"pwd":"NuovaPassword1","pkey":null,"rid":500,"name":"Mario","surname":"Rossi"}'
DELETE /user/{uid} richiede JWT

Eliminazione utente (definitiva).

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/user/1" -H "Authorization: Bearer <token>"
POST /user/auth pubblico

Login: verifica l'hash SHA1 della password e restituisce il JWT da usare come Bearer token.

Body JSON

{
  "usr": "mario.rossi",
  "pwd": "PasswordSicura1"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/user/auth" -H "Content-Type: application/json" -d '{"usr":"mario.rossi","pwd":"PasswordSicura1"}'
DELETE /user/auth richiede JWT

Logout: invalida la sessione del token corrente (sliding expiration).

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/user/auth" -H "Authorization: Bearer <token>"

Ruoli (td_role)

tabella: td_role
GET /roles richiede JWT

Elenco ruoli.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/roles" -H "Authorization: Bearer <token>"
GET /role/{id} richiede JWT

Dettaglio ruolo.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/role/1" -H "Authorization: Bearer <token>"
POST /role richiede JWT

Creazione ruolo (id assegnato manualmente, non auto-incrementale).

Body JSON

{
  "id": 600,
  "name": "moderatore"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/role" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"id":600,"name":"moderatore"}'
PUT /role/{id} richiede JWT

Aggiornamento nome ruolo.

Body JSON

{
  "name": "moderatore-senior"
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/role/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"name":"moderatore-senior"}'
DELETE /role/{id} richiede JWT

Eliminazione ruolo.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/role/1" -H "Authorization: Bearer <token>"

Aziende (companies)

tabella: companies
GET /companies richiede JWT

Elenco aziende.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/companies" -H "Authorization: Bearer <token>"
GET /company/{id} richiede JWT

Dettaglio azienda.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/company/1" -H "Authorization: Bearer <token>"
GET /company/{id}/vehicles richiede JWT

Veicoli di proprietà dell’azienda (dialogo companies → vehicols).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/company/1/vehicles" -H "Authorization: Bearer <token>"
POST /company richiede JWT

Creazione azienda.

Body JSON

{
  "uid": 1,
  "bizname": "Rossi Auto Srl",
  "fiscalcode": "IT01234567890",
  "hqAddress": "Via Roma 1",
  "hqProv": "MI",
  "hqCity": "Milano",
  "hqNation": "IT",
  "email": "info@rossiauto.it",
  "pec": "rossiauto@pec.it",
  "tel": "0212345678",
  "sdi": "ABCDEFG",
  "npkCode": null,
  "passKey": 123456
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/company" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"uid":1,"bizname":"Rossi Auto Srl","fiscalcode":"IT01234567890","hqAddress":"Via Roma 1","hqProv":"MI","hqCity":"Milano","hqNation":"IT","email":"info@rossiauto.it","pec":"rossiauto@pec.it","tel":"0212345678","sdi":"ABCDEFG","npkCode":null,"passKey":123456}'
PUT /company/{id} richiede JWT

Aggiornamento azienda (campi opzionali).

Body JSON

{
  "bizname": "Rossi Auto Srl",
  "fiscalcode": null,
  "hqAddress": null,
  "hqProv": null,
  "hqCity": null,
  "hqNation": null,
  "email": null,
  "pec": null,
  "tel": null,
  "sdi": null,
  "npkCode": null,
  "passKey": null
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/company/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"bizname":"Rossi Auto Srl","fiscalcode":null,"hqAddress":null,"hqProv":null,"hqCity":null,"hqNation":null,"email":null,"pec":null,"tel":null,"sdi":null,"npkCode":null,"passKey":null}'
DELETE /company/{id} richiede JWT

Eliminazione azienda.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/company/1" -H "Authorization: Bearer <token>"

Aste (auctions)

tabella: auctions
GET /auctions richiede JWT

Elenco aste.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auctions" -H "Authorization: Bearer <token>"
GET /auction/{id} richiede JWT

Dettaglio asta.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auction/1" -H "Authorization: Bearer <token>"
GET /auction/{id}/bids richiede JWT

Offerte ricevute su questa asta (dialogo auctions → auction_bids).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auction/1/bids" -H "Authorization: Bearer <token>"
GET /auction/{id}/autobids richiede JWT

Offerte automatiche impostate su questa asta (dialogo auctions → auction_autobids).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auction/1/autobids" -H "Authorization: Bearer <token>"
GET /auction/{id}/vehicles richiede JWT

Veicoli assegnati a questa asta (dialogo auctions → vehicols).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auction/1/vehicles" -H "Authorization: Bearer <token>"
POST /auction richiede JWT

Creazione asta.

Body JSON

{
  "dtStart": "2026-10-01T09:00:00Z",
  "dtEnd": "2026-10-01T18:00:00Z",
  "extraTime": 5,
  "status": "D"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/auction" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"dtStart":"2026-10-01T09:00:00Z","dtEnd":"2026-10-01T18:00:00Z","extraTime":5,"status":"D"}'
POST /auction/{id}/bid richiede JWT

Piazza un’offerta sull’asta per conto dell’utente autenticato (dialogo auctions → auction_bids).

Body JSON

{
  "vid": 1,
  "bidValue": 15000
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/auction/1/bid" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"vid":1,"bidValue":15000}'
POST /auction/{id}/autobid richiede JWT

Imposta un’offerta automatica sull’asta per conto dell’utente autenticato (dialogo auctions → auction_autobids).

Body JSON

{
  "vid": 1,
  "bidMaxvalue": 18000
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/auction/1/autobid" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"vid":1,"bidMaxvalue":18000}'
PUT /auction/{id} richiede JWT

Aggiornamento asta (campi opzionali).

Body JSON

{
  "dtStart": null,
  "dtEnd": null,
  "extraTime": 10,
  "status": "A"
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/auction/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"dtStart":null,"dtEnd":null,"extraTime":10,"status":"A"}'
DELETE /auction/{id} richiede JWT

Eliminazione asta.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/auction/1" -H "Authorization: Bearer <token>"

Offerte asta (auction_bids)

tabella: auction_bids
GET /auctionbids richiede JWT

Elenco offerte.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auctionbids" -H "Authorization: Bearer <token>"
GET /auctionbid/{id} richiede JWT

Dettaglio offerta.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auctionbid/1" -H "Authorization: Bearer <token>"
POST /auctionbid richiede JWT

Creazione diretta di un’offerta (in alternativa a POST /auction/{id}/bid).

Body JSON

{
  "uid": 1,
  "aid": 1,
  "vid": 1,
  "bidValue": 15500
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/auctionbid" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"uid":1,"aid":1,"vid":1,"bidValue":15500}'
PUT /auctionbid/{id} richiede JWT

Aggiornamento importo offerta.

Body JSON

{
  "bidValue": 16000
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/auctionbid/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"bidValue":16000}'
DELETE /auctionbid/{id} richiede JWT

Eliminazione offerta.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/auctionbid/1" -H "Authorization: Bearer <token>"

Offerte automatiche (auction_autobids)

tabella: auction_autobids
GET /auctionautobids richiede JWT

Elenco offerte automatiche.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auctionautobids" -H "Authorization: Bearer <token>"
GET /auctionautobid/{id} richiede JWT

Dettaglio offerta automatica.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/auctionautobid/1" -H "Authorization: Bearer <token>"
POST /auctionautobid richiede JWT

Creazione diretta di un’offerta automatica.

Body JSON

{
  "uid": 1,
  "aid": 1,
  "vid": 1,
  "bidMaxvalue": 18500
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/auctionautobid" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"uid":1,"aid":1,"vid":1,"bidMaxvalue":18500}'
PUT /auctionautobid/{id} richiede JWT

Aggiornamento tetto massimo offerta automatica.

Body JSON

{
  "bidMaxvalue": 19000
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/auctionautobid/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"bidMaxvalue":19000}'
DELETE /auctionautobid/{id} richiede JWT

Eliminazione offerta automatica.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/auctionautobid/1" -H "Authorization: Bearer <token>"

Veicoli (vehicols)

tabella: vehicols
GET /vehicles richiede JWT

Elenco veicoli.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicles" -H "Authorization: Bearer <token>"
GET /vehicle/{id} richiede JWT

Dettaglio veicolo.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicle/1" -H "Authorization: Bearer <token>"
GET /vehicle/{id}/images richiede JWT

Immagini del veicolo (dialogo vehicols → vehicols_images).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicle/1/images" -H "Authorization: Bearer <token>"
GET /vehicle/{id}/defects richiede JWT

Difetti rilevati sul veicolo (dialogo vehicols → vehicols_defects).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicle/1/defects" -H "Authorization: Bearer <token>"
GET /vehicle/{id}/qcr richiede JWT

Check-up qualità/condizione del veicolo (dialogo vehicols → vehicol_qcr).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicle/1/qcr" -H "Authorization: Bearer <token>"
POST /vehicle richiede JWT

Creazione veicolo.

Body JSON

{
  "cid": null,
  "bid": 1,
  "mid": 1,
  "fid": 1,
  "km": 45000,
  "targa": "AB123CD",
  "vin": "WVWZZZ1JZXW000001",
  "priceBase": 12000,
  "priceReserved": 13500,
  "barter": 0,
  "isReady": 1,
  "inAuction": 0,
  "aid": null
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/vehicle" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"cid":null,"bid":1,"mid":1,"fid":1,"km":45000,"targa":"AB123CD","vin":"WVWZZZ1JZXW000001","priceBase":12000,"priceReserved":13500,"barter":0,"isReady":1,"inAuction":0,"aid":null}'
PUT /vehicle/{id} richiede JWT

Aggiornamento veicolo (campi opzionali).

Body JSON

{
  "cid": null,
  "bid": null,
  "mid": null,
  "fid": null,
  "km": 46000,
  "targa": null,
  "vin": null,
  "priceBase": null,
  "priceReserved": null,
  "barter": null,
  "isReady": null,
  "inAuction": null,
  "aid": null
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/vehicle/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"cid":null,"bid":null,"mid":null,"fid":null,"km":46000,"targa":null,"vin":null,"priceBase":null,"priceReserved":null,"barter":null,"isReady":null,"inAuction":null,"aid":null}'
DELETE /vehicle/{id} richiede JWT

Eliminazione veicolo.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/vehicle/1" -H "Authorization: Bearer <token>"

Marche veicolo (vehicols_brands)

tabella: vehicols_brands
GET /vehiclebrands richiede JWT

Elenco marche.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehiclebrands" -H "Authorization: Bearer <token>"
GET /vehiclebrand/{id} richiede JWT

Dettaglio marca.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehiclebrand/1" -H "Authorization: Bearer <token>"
GET /vehiclebrand/{id}/models richiede JWT

Modelli di questa marca (dialogo vehicols_brands → vehicols_models).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehiclebrand/1/models" -H "Authorization: Bearer <token>"
POST /vehiclebrand richiede JWT

Creazione marca.

Body JSON

{
  "name": "Volkswagen",
  "picPath": "/images/brands/vw.png"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/vehiclebrand" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"name":"Volkswagen","picPath":"/images/brands/vw.png"}'
PUT /vehiclebrand/{id} richiede JWT

Aggiornamento marca.

Body JSON

{
  "name": "Volkswagen",
  "picPath": null
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/vehiclebrand/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"name":"Volkswagen","picPath":null}'
DELETE /vehiclebrand/{id} richiede JWT

Eliminazione marca.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/vehiclebrand/1" -H "Authorization: Bearer <token>"

Modelli veicolo (vehicols_models)

tabella: vehicols_models
GET /vehiclemodels richiede JWT

Elenco modelli.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehiclemodels" -H "Authorization: Bearer <token>"
GET /vehiclemodel/{id} richiede JWT

Dettaglio modello.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehiclemodel/1" -H "Authorization: Bearer <token>"
POST /vehiclemodel richiede JWT

Creazione modello.

Body JSON

{
  "bid": 1,
  "name": "Golf"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/vehiclemodel" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"bid":1,"name":"Golf"}'
PUT /vehiclemodel/{id} richiede JWT

Aggiornamento modello.

Body JSON

{
  "bid": null,
  "name": "Golf GTI"
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/vehiclemodel/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"bid":null,"name":"Golf GTI"}'
DELETE /vehiclemodel/{id} richiede JWT

Eliminazione modello.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/vehiclemodel/1" -H "Authorization: Bearer <token>"

Alimentazioni (vehicols_fuels)

tabella: vehicols_fuels
GET /vehiclefuels richiede JWT

Elenco alimentazioni.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehiclefuels" -H "Authorization: Bearer <token>"
GET /vehiclefuel/{id} richiede JWT

Dettaglio alimentazione.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehiclefuel/1" -H "Authorization: Bearer <token>"
POST /vehiclefuel richiede JWT

Creazione alimentazione (id assegnato manualmente).

Body JSON

{
  "id": 9,
  "name": "Idrogeno"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/vehiclefuel" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"id":9,"name":"Idrogeno"}'
PUT /vehiclefuel/{id} richiede JWT

Aggiornamento nome alimentazione.

Body JSON

{
  "name": "Idrogeno (fuel cell)"
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/vehiclefuel/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"name":"Idrogeno (fuel cell)"}'
DELETE /vehiclefuel/{id} richiede JWT

Eliminazione alimentazione.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/vehiclefuel/1" -H "Authorization: Bearer <token>"

Immagini veicolo (vehicols_images)

tabella: vehicols_images
GET /vehicleimages richiede JWT

Elenco immagini.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicleimages" -H "Authorization: Bearer <token>"
GET /vehicleimage/{id} richiede JWT

Dettaglio immagine.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicleimage/1" -H "Authorization: Bearer <token>"
POST /vehicleimage richiede JWT

Creazione immagine.

Body JSON

{
  "vid": 1,
  "picPath": "/uploads/vehicles/1/front.jpg",
  "prettyName": "Fronte",
  "ext": "jpg"
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/vehicleimage" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"vid":1,"picPath":"/uploads/vehicles/1/front.jpg","prettyName":"Fronte","ext":"jpg"}'
PUT /vehicleimage/{id} richiede JWT

Aggiornamento immagine.

Body JSON

{
  "picPath": null,
  "prettyName": "Fronte auto",
  "ext": null
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/vehicleimage/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"picPath":null,"prettyName":"Fronte auto","ext":null}'
DELETE /vehicleimage/{id} richiede JWT

Eliminazione immagine.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/vehicleimage/1" -H "Authorization: Bearer <token>"

Difetti veicolo (vehicols_defects)

tabella: vehicols_defects
GET /vehicledefects richiede JWT

Elenco difetti.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicledefects" -H "Authorization: Bearer <token>"
GET /vehicledefect/{id} richiede JWT

Dettaglio difetto.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicledefect/1" -H "Authorization: Bearer <token>"
POST /vehicledefect richiede JWT

Creazione difetto (vehicolPart: F/R/L, defectType: 1/2/3).

Body JSON

{
  "vid": 1,
  "idqcr": 1,
  "vehicolPart": "F",
  "defectType": "2",
  "x": 120,
  "y": 80
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/vehicledefect" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"vid":1,"idqcr":1,"vehicolPart":"F","defectType":"2","x":120,"y":80}'
PUT /vehicledefect/{id} richiede JWT

Aggiornamento difetto.

Body JSON

{
  "idqcr": null,
  "vehicolPart": null,
  "defectType": "3",
  "x": null,
  "y": null
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/vehicledefect/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"idqcr":null,"vehicolPart":null,"defectType":"3","x":null,"y":null}'
DELETE /vehicledefect/{id} richiede JWT

Eliminazione difetto.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/vehicledefect/1" -H "Authorization: Bearer <token>"

Check-up qualità (vehicol_qcr)

tabella: vehicol_qcr
GET /vehicleqcrs richiede JWT

Elenco check-up.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicleqcrs" -H "Authorization: Bearer <token>"
GET /vehicleqcr/{id} richiede JWT

Dettaglio check-up.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/vehicleqcr/1" -H "Authorization: Bearer <token>"
POST /vehicleqcr richiede JWT

Creazione check-up qualità (56 voci 0-100 + radioCode/startCode/jack).

Body JSON

{
  "vid": 1,
  "warningLights": 90,
  "frontendNoises": 90,
  "rearendNoises": 90,
  "compliantWheels": 90,
  "oilLeaks": 90,
  "waterLeaks": 90,
  "vehicleRegistrationDocument": 90,
  "certificateOfOwnership": 90,
  "roadTax": 90,
  "serviceBook": 90,
  "keys": 90,
  "radioCode": "AB1234",
  "startCode": "CD5678",
  "warningTriangle": 90,
  "spareWheel": 90,
  "jack": "OK",
  "vatIncluded": 90,
  "marginScheme": 90,
  "maintenancePerformed": 90,
  "engine": 90,
  "gearbox": 90,
  "forcedInduction": 90,
  "starter": 90,
  "ignition": 90,
  "climateControl": 90,
  "timingSystem": 90,
  "driveBelts": 90,
  "fuelSystem": 90,
  "audioVideoSystems": 90,
  "safetySystems": 90,
  "exhaustSystem": 90,
  "engineCooling": 90,
  "exhaustTract": 90,
  "transmissionSystem": 90,
  "clutches": 90,
  "electronicControlUnits": 90,
  "steering": 90,
  "controlArms": 90,
  "suspension": 90,
  "rims": 90,
  "tires": 90,
  "brakingSystem": 90,
  "lightingSystem": 90,
  "windshield": 90,
  "windowRegulators": 90,
  "bodyWork": 90,
  "paintwork": 90,
  "upholstery": 90,
  "seats": 90,
  "sunroof": 90,
  "electricSoftTop": 90,
  "tireRepairKit": 90,
  "airbags": 90,
  "routineMaintenance": 90,
  "majorMaintenance": 90,
  "other": 90
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/vehicleqcr" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"vid":1,"warningLights":90,"frontendNoises":90,"rearendNoises":90,"compliantWheels":90,"oilLeaks":90,"waterLeaks":90,"vehicleRegistrationDocument":90,"certificateOfOwnership":90,"roadTax":90,"serviceBook":90,"keys":90,"radioCode":"AB1234","startCode":"CD5678","warningTriangle":90,"spareWheel":90,"jack":"OK","vatIncluded":90,"marginScheme":90,"maintenancePerformed":90,"engine":90,"gearbox":90,"forcedInduction":90,"starter":90,"ignition":90,"climateControl":90,"timingSystem":90,"driveBelts":90,"fuelSystem":90,"audioVideoSystems":90,"safetySystems":90,"exhaustSystem":90,"engineCooling":90,"exhaustTract":90,"transmissionSystem":90,"clutches":90,"electronicControlUnits":90,"steering":90,"controlArms":90,"suspension":90,"rims":90,"tires":90,"brakingSystem":90,"lightingSystem":90,"windshield":90,"windowRegulators":90,"bodyWork":90,"paintwork":90,"upholstery":90,"seats":90,"sunroof":90,"electricSoftTop":90,"tireRepairKit":90,"airbags":90,"routineMaintenance":90,"majorMaintenance":90,"other":90}'
PUT /vehicleqcr/{id} richiede JWT

Aggiornamento check-up (tutti i campi opzionali).

Body JSON

{
  "warningLights": 90,
  "frontendNoises": 90,
  "rearendNoises": 90,
  "compliantWheels": 90,
  "oilLeaks": 90,
  "waterLeaks": 90,
  "vehicleRegistrationDocument": 90,
  "certificateOfOwnership": 90,
  "roadTax": 90,
  "serviceBook": 90,
  "keys": 90,
  "radioCode": "AB1234",
  "startCode": "CD5678",
  "warningTriangle": 90,
  "spareWheel": 90,
  "jack": "OK",
  "vatIncluded": 90,
  "marginScheme": 90,
  "maintenancePerformed": 90,
  "engine": 90,
  "gearbox": 90,
  "forcedInduction": 90,
  "starter": 90,
  "ignition": 90,
  "climateControl": 90,
  "timingSystem": 90,
  "driveBelts": 90,
  "fuelSystem": 90,
  "audioVideoSystems": 90,
  "safetySystems": 90,
  "exhaustSystem": 90,
  "engineCooling": 90,
  "exhaustTract": 90,
  "transmissionSystem": 90,
  "clutches": 90,
  "electronicControlUnits": 90,
  "steering": 90,
  "controlArms": 90,
  "suspension": 90,
  "rims": 90,
  "tires": 90,
  "brakingSystem": 90,
  "lightingSystem": 90,
  "windshield": 90,
  "windowRegulators": 90,
  "bodyWork": 90,
  "paintwork": 90,
  "upholstery": 90,
  "seats": 90,
  "sunroof": 90,
  "electricSoftTop": 90,
  "tireRepairKit": 90,
  "airbags": 90,
  "routineMaintenance": 90,
  "majorMaintenance": 90,
  "other": 90
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/vehicleqcr/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"warningLights":90,"frontendNoises":90,"rearendNoises":90,"compliantWheels":90,"oilLeaks":90,"waterLeaks":90,"vehicleRegistrationDocument":90,"certificateOfOwnership":90,"roadTax":90,"serviceBook":90,"keys":90,"radioCode":"AB1234","startCode":"CD5678","warningTriangle":90,"spareWheel":90,"jack":"OK","vatIncluded":90,"marginScheme":90,"maintenancePerformed":90,"engine":90,"gearbox":90,"forcedInduction":90,"starter":90,"ignition":90,"climateControl":90,"timingSystem":90,"driveBelts":90,"fuelSystem":90,"audioVideoSystems":90,"safetySystems":90,"exhaustSystem":90,"engineCooling":90,"exhaustTract":90,"transmissionSystem":90,"clutches":90,"electronicControlUnits":90,"steering":90,"controlArms":90,"suspension":90,"rims":90,"tires":90,"brakingSystem":90,"lightingSystem":90,"windshield":90,"windowRegulators":90,"bodyWork":90,"paintwork":90,"upholstery":90,"seats":90,"sunroof":90,"electricSoftTop":90,"tireRepairKit":90,"airbags":90,"routineMaintenance":90,"majorMaintenance":90,"other":90}'
DELETE /vehicleqcr/{id} richiede JWT

Eliminazione check-up.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/vehicleqcr/1" -H "Authorization: Bearer <token>"

Log applicativi (applog)

tabella: applog
GET /applogs richiede JWT

Elenco log (scritti automaticamente dal sistema ad ogni operazione di scrittura sulle altre entità).

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/applogs" -H "Authorization: Bearer <token>"
GET /applog/{id} richiede JWT

Dettaglio log.

Comando da riga di comando (curl)

curl -X GET "http://localhost:8080/applog/1" -H "Authorization: Bearer <token>"
POST /applog richiede JWT

Creazione manuale di un log.

Body JSON

{
  "uid": 1,
  "tableName": "custom",
  "action": "Nota manuale inserita da amministratore."
}

Comando da riga di comando (curl)

curl -X POST "http://localhost:8080/applog" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"uid":1,"tableName":"custom","action":"Nota manuale inserita da amministratore."}'
PUT /applog/{id} richiede JWT

Aggiornamento log.

Body JSON

{
  "tableName": null,
  "action": "Nota corretta."
}

Comando da riga di comando (curl)

curl -X PUT "http://localhost:8080/applog/1" -H "Authorization: Bearer <token>" -H "Content-Type: application/json" -d '{"tableName":null,"action":"Nota corretta."}'
DELETE /applog/{id} richiede JWT

Eliminazione log.

Comando da riga di comando (curl)

curl -X DELETE "http://localhost:8080/applog/1" -H "Authorization: Bearer <token>"