Enregistrer un passage à l’entrée à partir d’un jeton scanné (carte de membre ou inscription à un événement)
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" }'Vérifie le jeton (signature, fenêtre), confirme que la ligne appartient à votre association, enregistre le passage et renvoie le verdict. Un jeton de carte (kind: card) enregistre le passage au titre de l’adhésion ; un jeton d’inscription (kind: registration) l’enregistre au titre de l’inscription à l’événement — et de l’adhésion avec laquelle elle a été faite, quand le type d’inscription exige une carte active. Aucune donnée personnelle.
Autorisations
Section intitulée « Autorisations »Corps de la requêteobligatoire
Section intitulée « Corps de la requêteobligatoire »object
Le jeton scanné (vmt_…) : carte ou inscription
Alias de token (jetons de carte)
Exemplegénéré
{ "token": "example", "card": "example"}Réponses
Section intitulée « Réponses »Passage enregistré
object
Avec not_yet_valid : quand la carte devient utilisable (le délai fixé par l’association avant qu’une carte soit utilisable)
object
Cartes seulement. pending : le membre n’a pas de code fiscal vérifiable et personne de l’association n’a encore regardé une pièce d’identité — affichez-le à la personne qui tient l’entrée. C’est une indication, jamais une partie de verdict : elle ne restreint rien. Levée depuis la console de l’association
Exemple
{ "kind": "card", "verdict": "valid", "identity_check": "pending"}Requête invalide
object
object
Exemplegénéré
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Identifiants manquants ou invalides
object
object
Exemplegénéré
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Non autorisé
object
object
Exemplegénéré
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}La carte appartient à une autre association ou n’existe pas
Le jeton est malformé ou falsifié, ou un jeton d’inscription n’est pas encore valable ou a dépassé sa fenêtre (invalid_card, reason). Une CARTE authentique dont la fenêtre est dépassée n’est pas refusée : son passage est enregistré avec le verdict expired (invalide quand l’adhésion l’est)
Limite de débit atteinte
object
object
Exemplegénéré
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}Erreur interne
object
object
Exemplegénéré
{ "type": "https://example.com", "title": "example", "status": 1, "detail": "example", "code": "example", "request_id": "example", "errors": [ { "field": "example", "code": "example", "message": "example" } ]}