Zum Inhalt springen

Einen Check-in am Einlass aus einem gescannten Token erfassen (Mitgliedsausweis oder Veranstaltungsanmeldung)

POST
/v1/checkins
curl --request POST \
--url https://api.vimine.network/v1/checkins \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "token": "example", "card": "example" }'

Prüft das Token (Signatur, Fenster), stellt sicher, dass der Datensatz zu Ihrem Verein gehört, erfasst den Check-in und liefert das Ergebnis. Ein Ausweis-Token (kind: card) checkt die Mitgliedschaft ein; ein Anmelde-Token (kind: registration) checkt die Veranstaltungsanmeldung ein — und die Mitgliedschaft, mit der sie vorgenommen wurde, wenn die Anmeldeart einen aktiven Ausweis verlangt. Keine personenbezogenen Daten.

Medientypapplication/json
object
token

Das gescannte Token (vmt_…): Ausweis oder Anmeldung

string
card

Alias von token (Ausweis-Tokens)

string
Beispielerzeugt
{
"token": "example",
"card": "example"
}

Check-in erfasst

Medientypapplication/json
object
kind
string
Erlaubte Werte: card registration
verdict
string
Erlaubte Werte: valid expired not_yet_valid statuto_required inactive already_checked_in not_confirmed cancelled event_cancelled membership_invalid
status
string
membership_id
string
nullable
valid_until
string Format: date-time
nullable
valid_from

Bei not_yet_valid: wann der Ausweis nutzbar wird (die Frist des Vereins bis zur Nutzbarkeit)

string Format: date-time
nullable
registration_id
string
nullable
event
object
slug
string
title
string
starts_at
string Format: date-time
registration_type
string
nullable
membership_verdict
string
nullable
identity_check

Nur Ausweise. pending: Das Mitglied hat keine prüfbare Steuernummer, und noch niemand aus dem Verein hat ein Ausweisdokument angesehen — zeigen Sie es der Person, die den Einlass betreut. Es ist ein Hinweis, nie Teil von verdict: Er schränkt nichts ein. Wird in der Konsole des Vereins aufgehoben

string
nullable
Erlaubte Werte: pending verified flagged
first
boolean
checked_in_at
string Format: date-time
nullable
Beispiel
{
"kind": "card",
"verdict": "valid",
"identity_check": "pending"
}

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"
}
]
}

Fehlende oder ungültige Zugangsdaten

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 erlaubt

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"
}
]
}

Der Ausweis gehört zu einem anderen Verein oder existiert nicht

Das Token ist fehlerhaft oder gefälscht, oder ein Anmelde-Token ist noch nicht gültig oder sein Fenster ist abgelaufen (invalid_card, reason). Ein echter AUSWEIS, dessen Fenster abgelaufen ist, wird nicht abgewiesen: Er wird mit dem Ergebnis expired eingecheckt (ungültig, wenn die Mitgliedschaft es ist)

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"
}
]
}