Aller au contenu

Inscrire un invité (sans compte Vimine) à un événement PUBLIC — côté serveur

POST
/v1/events/{slug}/registrations/guest
curl --request POST \
--url https://api.vimine.network/v1/events/example/registrations/guest \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "email": "hello@example.com", "first_name": "example", "last_name": "example", "registration_type": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "note": "example", "locale": "example" }'

Pour les événements publics et les types d’inscription qui n’exigent pas d’adhésion. La place est retenue jusqu’à ce que la personne confirme son adresse depuis le lien qu’elle reçoit (24 h) ; ensuite, avec un type gratuit, l’inscription est confirmée, et avec un type payant, elle attend la contribution. Répond un 202 uniforme quelle que soit l’adresse (pas d’oracle) ; les problèmes d’éligibilité et de validation sont des 422. Jetons client seulement (registrations:write) ; accepte Idempotency-Key. Les contributions des non-membres sont des recettes commerciales (D-L2).

slug
obligatoire
string
Type de médiaapplication/json
object
email
obligatoire
string format : email
first_name
obligatoire
string
<= 50 caractères
last_name
obligatoire
string
<= 50 caractères
registration_type
obligatoire
string format : uuid
note
string
nullable <= 2000 caractères
locale

La langue dans laquelle l’inscription a été faite (it, en) : la langue des e-mails à un invité, et la langue de repli pour un membre qui n’en a jamais choisi. Par défaut : Accept-Language

string
nullable
Exemplegénéré
{
"email": "hello@example.com",
"first_name": "example",
"last_name": "example",
"registration_type": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"note": "example",
"locale": "example"
}

Accepté

Type de médiaapplication/json
object
status
obligatoire
string
Valeurs autorisées : accepted
Exemple
{
"status": "accepted"
}

Requête invalide

Type de médiaapplication/problem+json
object
type
obligatoire
string format : uri
title
obligatoire
string
status
obligatoire
integer
detail
string
code
obligatoire
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
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

Type de médiaapplication/problem+json
object
type
obligatoire
string format : uri
title
obligatoire
string
status
obligatoire
integer
detail
string
code
obligatoire
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
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é

Type de médiaapplication/problem+json
object
type
obligatoire
string format : uri
title
obligatoire
string
status
obligatoire
integer
detail
string
code
obligatoire
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
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"
}
]
}

Introuvable

Type de médiaapplication/problem+json
object
type
obligatoire
string format : uri
title
obligatoire
string
status
obligatoire
integer
detail
string
code
obligatoire
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
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"
}
]
}

Échec de la validation, type inconnu, ou non éligible (reasons : membership_required pour un événement ou un type réservé aux membres, sold_out, …)

Limite de débit atteinte

Type de médiaapplication/problem+json
object
type
obligatoire
string format : uri
title
obligatoire
string
status
obligatoire
integer
detail
string
code
obligatoire
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
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

Type de médiaapplication/problem+json
object
type
obligatoire
string format : uri
title
obligatoire
string
status
obligatoire
integer
detail
string
code
obligatoire
string
request_id
string
errors
Array<object>
object
field
string
code
string
message
string
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"
}
]
}