Inscriptions

L’objet registration

L’inscription d’un participant à un événement (un participant, un relecteur, un exposant, un sponsor…), avec son billet et sa présence à l’accueil. Ses réponses au formulaire, ses commandes et ses paiements n’en font jamais partie.

Attributs

idstring
Identifiant unique de l’objet : la référence de l’inscription sur la plateforme.
objectenum
Texte qui indique le type de l’objet. Toujours registration.
Valeurs possibles
  • registration
eventstring or expanded event objectdéveloppable
L’événement de l’inscription : son identifiant, ou l’objet événement lorsqu’il est développé (expand[]=event, ou expand[]=data.event dans une liste ou une recherche ; demande events_read).
statusenum
Le statut de l’inscription. Un client doit accepter une valeur qu’il ne connaît pas : l’ajout d’une valeur est une évolution compatible.
Valeurs possibles
  • require_admin_validation
  • validated
  • canceled
  • rejected
roleenumpeut être null
Le rôle du participant à l’événement ; null s’il n’en a pas. Un client doit accepter une valeur qu’il ne connaît pas.
Valeurs possibles
  • attendee
  • applicant
  • reviewer
  • committee
  • exhibitor
  • sponsor
  • partner
  • guest
first_namestringpeut être null
Le prénom du participant.
last_namestringpeut être null
Le nom de famille du participant.
emailstringpeut être null
L’adresse e-mail du participant.
ticketobjectpeut être null
Le billet de l’inscription ; null si elle n’en a pas.
Attributs enfants
namestring
Le nom du billet, tel que l’organisateur l’a nommé.
checkinobject
La présence du participant à l’accueil de l’événement.
Attributs enfants
checked_inboolean
Vrai si le participant a été scanné au moins une fois.
last_checked_in_attimestamppeut être null
La date du dernier scan, en secondes Unix (UTC) ; null si le participant n’a jamais été scanné.
createdtimestamp
La date de l’inscription, en secondes Unix (UTC).
updatedtimestamppeut être null
La date de la dernière modification de l’objet, en secondes Unix (UTC) ; null si la plateforme n’en a pas.
Exemple d’objet
{
  "id": "SUB-8c3e2a71-0f4b-4d6a-b5e9-27c1d9a4e612",
  "object": "registration",
  "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
  "status": "validated",
  "role": "attendee",
  "first_name": "Ada",
  "last_name": "Lovelace",
  "email": "ada.lovelace@example.com",
  "ticket": {
    "name": "Full pass"
  },
  "checkin": {
    "checked_in": true,
    "last_checked_in_at": 1810119600
  },
  "created": 1795521600,
  "updated": 1810119600
}

Lire une inscription

GET/v1/registrations/{id}

Renvoie l’inscription de cet identifiant, avec son billet et sa présence à l’accueil. expand[]=event donne l’objet événement à la place de son identifiant (la clé doit aussi avoir events_read). Une inscription d’une autre organisation renvoie resource_missing, comme un identifiant qui n’existe pas.

Demande le droit registrations_read.

Paramètres de chemin

idstringobligatoire
L’identifiant de l’inscription.

Paramètres de requête

expand[]array of enumfacultatif
event : l’objet événement à la place de son identifiant (demande events_read).
Valeurs possibles
  • event

Renvoie

Renvoie l’objet registration.

Requête

curl

curl -G https://api.masterconf.com/v1/registrations/SUB-8c3e2a71-0f4b-4d6a-b5e9-27c1d9a4e612 \
  -H "Authorization: Bearer mcf_your_key"

JavaScript

const res = await fetch("https://api.masterconf.com/v1/registrations/SUB-8c3e2a71-0f4b-4d6a-b5e9-27c1d9a4e612", {
  headers: { Authorization: "Bearer mcf_your_key" },
});
const data = await res.json();

Python

import requests

res = requests.get(
    "https://api.masterconf.com/v1/registrations/SUB-8c3e2a71-0f4b-4d6a-b5e9-27c1d9a4e612",
    headers={"Authorization": "Bearer mcf_your_key"},
)
data = res.json()
Réponse
{
  "id": "SUB-8c3e2a71-0f4b-4d6a-b5e9-27c1d9a4e612",
  "object": "registration",
  "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
  "status": "validated",
  "role": "attendee",
  "first_name": "Ada",
  "last_name": "Lovelace",
  "email": "ada.lovelace@example.com",
  "ticket": {
    "name": "Full pass"
  },
  "checkin": {
    "checked_in": true,
    "last_checked_in_at": 1810119600
  },
  "created": 1795521600,
  "updated": 1810119600
}

Lister les inscriptions d’un événement

GET/v1/registrations

Renvoie une page des inscriptions d’un événement (le paramètre event est obligatoire), de la plus récente à la plus ancienne (created décroissant, puis id décroissant), chacune avec sa présence à l’accueil. Parcourez les pages avec starting_after (ou ending_before). Un événement d’une autre organisation renvoie resource_missing sur event.

Demande le droit registrations_read.

Paramètres de requête

eventstringobligatoire
L’identifiant de l’événement dont les inscriptions sont listées. Obligatoire.
statusarray of enumfacultatif
Seulement les inscriptions de ce statut. Répétez le paramètre pour en donner plusieurs (status=validated&status=require_admin_validation).
Valeurs possibles
  • require_admin_validation
  • validated
  • canceled
  • rejected
rolearray of enumfacultatif
Seulement les inscriptions de ce rôle. Répétez le paramètre pour en donner plusieurs (role=attendee&role=guest).
Valeurs possibles
  • attendee
  • applicant
  • reviewer
  • committee
  • exhibitor
  • sponsor
  • partner
  • guest
limitintegerfacultatif
Le nombre d’objets de la page, de 1 à 100 ; au plus 20 quand la requête a un expand[] (chaque champ développé ou inclus coûte des lectures par objet de la page).

Valeur par défaut : 10.

starting_afterstringfacultatif
Un curseur pour la page suivante : l’identifiant d’un objet de cette liste (le dernier de la page que vous avez) ; la page contient les objets qui le suivent. Pas avec ending_before.
ending_beforestringfacultatif
Un curseur pour la page précédente : l’identifiant d’un objet de cette liste (le premier de la page que vous avez) ; la page contient les objets qui le précèdent, dans le même ordre. Pas avec starting_after.
include[]array of enumfacultatif
total_count : ajouter total_count, le nombre d’objets de toute la liste.
Valeurs possibles
  • total_count
expand[]array of enumfacultatif
data.event : l’objet événement à la place de son identifiant dans chaque inscription (demande events_read).
Valeurs possibles
  • data.event

Renvoie

Renvoie un objet list dont les data sont des objets registration.

Requête

curl

curl -G https://api.masterconf.com/v1/registrations \
  -H "Authorization: Bearer mcf_your_key" \
  --data-urlencode "event=EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30"

JavaScript

const params = new URLSearchParams({
  "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
});

const res = await fetch(`https://api.masterconf.com/v1/registrations?${params}`, {
  headers: { Authorization: "Bearer mcf_your_key" },
});
const data = await res.json();

Python

import requests

res = requests.get(
    "https://api.masterconf.com/v1/registrations",
    params={"event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30"},
    headers={"Authorization": "Bearer mcf_your_key"},
)
data = res.json()
Réponse
{
  "object": "list",
  "url": "/v1/registrations",
  "has_more": true,
  "data": [
    {
      "id": "SUB-8c3e2a71-0f4b-4d6a-b5e9-27c1d9a4e612",
      "object": "registration",
      "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
      "status": "validated",
      "role": "attendee",
      "first_name": "Ada",
      "last_name": "Lovelace",
      "email": "ada.lovelace@example.com",
      "ticket": {
        "name": "Full pass"
      },
      "checkin": {
        "checked_in": true,
        "last_checked_in_at": 1810119600
      },
      "created": 1795521600,
      "updated": 1810119600
    }
  ]
}

Rechercher les inscriptions d’un événement

GET/v1/registrations/search

Renvoie une page des inscriptions d’un événement qui répondent à query, de la plus récente à la plus ancienne (created décroissant, puis id décroissant). La requête est une ou plusieurs clauses reliées par AND (en majuscules, un espace de chaque côté) : champ:'valeur' (égal à) ou champ~'valeur' (contient, sans distinction de casse, de 3 à 200 caractères, sans %, _ ni \). Une valeur est toujours entre apostrophes ; une apostrophe à l’intérieur s’écrit \'. Chaque champ au plus une fois ; OR, les comparateurs et les autres champs sont refusés (search_query_invalid, le message indique la position). La clause event est obligatoire. La page suivante se demande avec page=<next_page> et la même query : un page est lié à la requête qui l’a produit, et toute autre query (ou un page mal formé) renvoie 400 parameter_invalid sur page.

Demande le droit registrations_read.

Paramètres de requête

querystringobligatoire
La requête de recherche, par exemple event:'EVT-…' AND text~'lovelace'. Obligatoire.
limitintegerfacultatif
Le nombre d’objets de la page, de 1 à 100 ; au plus 20 quand la requête a un expand[] (chaque champ développé ou inclus coûte des lectures par objet de la page).

Valeur par défaut : 10.

pagestringfacultatif
Le next_page de la réponse précédente, envoyé avec la même query : la page qui la suit. Avec une autre query (l’ordre des clauses n’importe pas), ou une valeur mal formée, la réponse est 400 parameter_invalid sur page.
include[]array of enumfacultatif
total_count : ajouter total_count, le nombre d’objets de tout le résultat.
Valeurs possibles
  • total_count
expand[]array of enumfacultatif
data.event : l’objet événement à la place de son identifiant dans chaque inscription (demande events_read).
Valeurs possibles
  • data.event

Champs de recherche

event: égal àobligatoire
L’événement dont les inscriptions sont recherchées (son identifiant). Obligatoire.
text~ contientfacultatif
Contient ce texte, sans distinction de casse : porte sur l’identifiant de l’inscription, le prénom, le nom et l’adresse e-mail seulement.
status: égal àfacultatif
Égal à ce statut d’inscription (require_admin_validation, validated, canceled, rejected).
role: égal àfacultatif
Égal à ce rôle de participant (attendee, applicant, reviewer, committee, exhibitor, sponsor, partner, guest).

Renvoie

Renvoie un objet de résultat de recherche dont les data sont des objets registration.

Requête

curl

curl -G https://api.masterconf.com/v1/registrations/search \
  -H "Authorization: Bearer mcf_your_key" \
  --data-urlencode "query=event:'EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30' AND text~'lovelace'"

JavaScript

const params = new URLSearchParams({
  "query": "event:'EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30' AND text~'lovelace'",
});

const res = await fetch(`https://api.masterconf.com/v1/registrations/search?${params}`, {
  headers: { Authorization: "Bearer mcf_your_key" },
});
const data = await res.json();

Python

import requests

res = requests.get(
    "https://api.masterconf.com/v1/registrations/search",
    params={"query": "event:'EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30' AND text~'lovelace'"},
    headers={"Authorization": "Bearer mcf_your_key"},
)
data = res.json()
Réponse
{
  "object": "search_result",
  "url": "/v1/registrations/search",
  "has_more": true,
  "next_page": "eyJjIjoxNzk1NTIxNjAwLCJpIjoiU1VCLThjM2UyYTcxIiwicSI6IjNmOWEifQ",
  "data": [
    {
      "id": "SUB-8c3e2a71-0f4b-4d6a-b5e9-27c1d9a4e612",
      "object": "registration",
      "event": "EVT-5a1f0c2e-3b7d-4e91-9c2a-1d6e8f4b7a30",
      "status": "validated",
      "role": "attendee",
      "first_name": "Ada",
      "last_name": "Lovelace",
      "email": "ada.lovelace@example.com",
      "ticket": {
        "name": "Full pass"
      },
      "checkin": {
        "checked_in": true,
        "last_checked_in_at": 1810119600
      },
      "created": 1795521600,
      "updated": 1810119600
    }
  ]
}