Registra un accesso all'ingresso da un token scansionato (tessera o iscrizione a un evento)
const url = 'https://api.vimine.network/v1/checkins';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"token":"example","card":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.vimine.network/v1/checkins \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "token": "example", "card": "example" }'Verifica il token (firma, finestra), conferma che la riga appartiene alla tua associazione, registra l’accesso e restituisce il verdetto. Un token della tessera (kind: card) registra l’ingresso della tessera; un token di iscrizione (kind: registration) quello dell’iscrizione all’evento — e della tessera con cui è stata fatta, quando il tipo di iscrizione richiede una tessera attiva. Nessun dato personale.
Autorizzazioni
Sezione intitolata “Autorizzazioni”Corpo della richiestaobbligatorio
Sezione intitolata “Corpo della richiestaobbligatorio”object
Il token scansionato (vmt_…): tessera o iscrizione
Sinonimo di token (token delle tessere)
Esempiogenerato
{ "token": "example", "card": "example"}Risposte
Sezione intitolata “Risposte”Accesso registrato
object
Con not_yet_valid: da quando la tessera è utilizzabile (l’intervallo stabilito dall’associazione)
object
Solo tessere. pending: il socio non ha un codice fiscale verificabile e nessuno dell’associazione ha ancora visto un documento — mostralo a chi è all’ingresso. È una nota, mai parte di verdict: non limita nulla. Si rimuove dalla console dell’associazione
Esempio
{ "kind": "card", "verdict": "valid", "identity_check": "pending"}Richiesta non valida
object
object
Esempiogenerato
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Credenziali mancanti o non valide
object
object
Esempiogenerato
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Non consentito
object
object
Esempiogenerato
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}La tessera appartiene a un’altra associazione o non esiste
Il token è malformato o contraffatto, oppure un token di iscrizione non è ancora valido o ha superato la sua finestra (invalid_card, reason). Una TESSERA autentica oltre la sua finestra non viene rifiutata: l’ingresso viene registrato con il verdetto expired (nullo quando lo è l’adesione)
Troppe richieste
object
object
Esempiogenerato
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Errore interno
object
object
Esempiogenerato
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}