Zum Inhalt springen

Ein Token prüfen: Ist dieser Mitgliedsausweis (oder diese Veranstaltungsanmeldung) gerade aktiv?

GET
/v1/verify/{card_token}
curl --request GET \
--url https://api.vimine.network/v1/verify/example

Datenschutzfreundlich: liefert nur den Status und, wenn aktiv, das Ende der Gültigkeit. Nie das Mitglied, den Verein oder die Version des Statuto. Das Token wird zuerst kryptografisch geprüft (Signatur, Gültigkeitsfenster), dann gegen den aktuellen Stand der Mitgliedschaft. Ein Token einer Veranstaltungsanmeldung (kind: registration) antwortet mit dem Status der Anmeldung sowie Slug + Beginn der Veranstaltung — keine Person.

card_token
erforderlich

Das aus dem QR-Code des Ausweises gelesene vmt_…-Token

string

Prüfung

Medientypapplication/json
object
status
erforderlich
string
Erlaubte Werte: active inactive
valid_until
string Format: date-time
valid_from

Bei reason: not_yet_valid: Der Ausweis ist echt und aktiv und wird zu diesem Zeitpunkt nutzbar

string Format: date-time
reason
string
Erlaubte Werte: expired invalid not_yet_valid
kind

Vorhanden bei Anmelde-Tokens

string
Erlaubte Werte: card registration
event
object
slug
string
starts_at
string Format: date-time
Beispiel
{
"status": "active",
"reason": "expired",
"kind": "card"
}

Ungültige Anfrage

Medientypapplication/problem+json
object
type
erforderlich
string Format: uri
title
erforderlich
string
status
erforderlich
integer
detail
string
code
erforderlich
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
Beispielerzeugt
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"field": "example",
"code": "example",
"message": "example"
}
]
}

Nicht gefunden

Medientypapplication/problem+json
object
type
erforderlich
string Format: uri
title
erforderlich
string
status
erforderlich
integer
detail
string
code
erforderlich
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
Beispielerzeugt
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"field": "example",
"code": "example",
"message": "example"
}
]
}

Ratenlimit überschritten

Medientypapplication/problem+json
object
type
erforderlich
string Format: uri
title
erforderlich
string
status
erforderlich
integer
detail
string
code
erforderlich
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
Beispielerzeugt
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"field": "example",
"code": "example",
"message": "example"
}
]
}

Interner Fehler

Medientypapplication/problem+json
object
type
erforderlich
string Format: uri
title
erforderlich
string
status
erforderlich
integer
detail
string
code
erforderlich
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
Beispielerzeugt
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"code": "example",
"request_id": "example",
"errors": [
{
"field": "example",
"code": "example",
"message": "example"
}
]
}