Démarrer
Démarrer
Créez une clé d’API, faites votre premier appel et listez les inscriptions d’un événement, en cinq minutes environ.
L’API Masterconf donne à vos propres serveurs un accès en lecture seule aux événements, aux inscriptions, aux appels à communications et aux communications de votre organisation. Chaque requête est un GET HTTPS vers https://api.masterconf.com/v1.
Créer une clé d’API
Un administrateur de votre organisation crée les clés dans la console, rubrique « Intégrations ».
- Droits. Ne cochez que ce que votre application lit :
events_read,registrations_read,calls_for_papers_read. - Expiration. Toute clé expire. Choisissez une date située au plus à 366 jours.
- Affichée une seule fois. La clé n’apparaît qu’une fois, juste après sa création. Copiez-la tout de suite dans votre gestionnaire de secrets : personne ne pourra plus l’afficher, pas même un administrateur.
Une clé commence par mcf_. Traitez-la comme un mot de passe.
S’authentifier
Envoyez la clé dans l’en-tête Authorization, exactement sous cette forme :
Authorization: Bearer mcf_your_key
Ne mettez jamais une clé dans une URL, ni dans un navigateur ou une application mobile. L’API est faite pour les serveurs : elle ne répond à aucune requête de navigateur (CORS).
Faire votre premier appel
GET/v1/account ne demande aucun droit particulier. Il indique quelle organisation et quelle clé la requête a utilisées.
curl
JavaScript
Python
{
"id": "ORG-7b2c9e40-1a5d-4c83-9f6e-3d8a0b4c2e71",
"object": "account",
"api_key": {
"id": "APIK-4f8a2c1e-9b3d-4e6a-8c7f-2a1e5d9b0c34",
"scopes": [
"calls_for_papers_read",
"events_read",
"registrations_read"
],
"expires_at": 1824076800
}
}Si vous recevez plutôt 401 api_key_invalid, vérifiez que l’en-tête est exactement celui ci-dessus.
Lister les inscriptions d’un événement
Trouvez d’abord l’id d’un événement avec GET/v1/events :
curl
JavaScript
Python
Listez ensuite ses inscriptions avec GET/v1/registrations. Le paramètre event est obligatoire.
curl
JavaScript
Python
{
"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
}
]
}Parcourir toutes les pages
Une liste renvoie une page d’objets, du plus récent au plus ancien, et has_more. Tant que has_more vaut true, demandez la page suivante avec starting_after égal à l’id du dernier objet reçu :
curl
JavaScript
Python
La page Pagination explique le reste : la taille des pages, le retour en arrière et la synchronisation d’une copie.
Pour aller plus loin
- Authentification : droits, expiration et révocation.
- Gérer les erreurs : que faire de chaque type d’erreur.
- La référence de l’API : chaque objet et chaque opération.