Passer au contenu principal

Participant

Mis à jour aujourd’hui

Recouvrir une liste de participant

MobiCheckin fournit une API paginée pour récupérer la liste des invités de votre événement. Commence à la page=1. Paginez tous les 500 invités. Si vous souhaitez connaître le nombre d'invités inscrits à votre événement, vous devez interroger GET /api/v1/events/{id}.format et consulter la propriété guest_count.

Les paramètres de requête facultatifs sont les suivants :

?uid=%s : recherche un invité par son identifiant. Renvoie un tableau contenant 0 ou 1 invité.

?search=%s : recherche en texte intégral dans la liste des invités.

?category[]=%s&category[]=%s : filtre par les identifiants de catégorie d'invités indiqués.

Vous pouvez combiner ces paramètres de filtre.

JSON :

Requête

GET /api/v1/events/{event_id}/guests.json?page=1&auth_token=YOUR_API_TOKEN

Réponse :

// 200 OK
[
{
// the first guest
},
{
// the second guest
}
]

XML :

Requête

GET /api/v1/events/{event_id}/guests.xml?page=1&auth_token=YOUR_API_TOKEN

Réponse

<!-- 200 OK -->
<?xml version="1.0" encoding="UTF-8"?>
<guests type="array">
<guest>
<!-- [...] -->
</guest>
<guest>
<!-- [...] -->
</guest>
</guest>

Vous pouvez incrémenter le paramètre de chaîne de requête de la page jusqu'à obtenir un tableau vide.

Créer un nouveau participant

Vous pouvez ajouter un nouveau participant sur votre liste :

Json

Requête :

POST /api/v1/events/{event_id}/guests.json?auth_token=YOUR_API_TOKEN
Content-Type: application/json; charset=utf-8
{
"guest_category_id": "{guest_category_id}",
"email": "john.smith@acme.org",
"first_name": "John",
"last_name": "Smith",
"company_name": "Acme Inc.",
"position": "CEO",
"phone_number": "001122334455",

// Use this field if you want to choose your owns ids for your guests.
"uid": {your_custom_id},

// Use this field if you want a message that appear on the iOS device when the guest is checked-in.
"message": "Vegan lunch",

// You can pass any other information abotu the guest in this array.
"guest_metadata": [
{ "name": "Has a dog", "value": "Yes" },
{ "name": "Birth year", "value": "1960" }
]

// You can pass an array of access privileges for specific check-in points
"access_privileges_attributes": [
{ "access_once": true, "accesspoint_id": "{workshop_foo_id}" },
{ "access_once": false, "accesspoint_id": "{vip_room_id}" },
]
}

Réponse :

// 201 Created
{
"badge_completed": false,
"rsvp_status": "not_replied",
"_id": "50af6426bbfa805f760005ac",
"guest_category_id": "{guest_category_id}",
"email": "john.smith@acme.org",
"first_name": "John",
"last_name": "Smith",
"company_name": "Acme Inc.",
"position": "CEO",
"phone_number": "001122334455",
"message": "Vegan lunch",
"event_id": "{event_id}",
"uid": "9vts5v3nqs",
"updated_at": "2012-11-23T11:55:18Z",
"created_at": "2012-11-23T11:55:18Z",
"badge_url": null,
"qrcode_url": null,
"guest_metadata":
[
{ "name": "Has a dog", "value": "Yes" },
{ "name": "Birth year", "value": "1960" }
],
"access_privileges":
[
// Array of all access privileges
]
}

XML

Requête:

POST /api/v1/events/{event_id}/guests.xml?auth_token=YOUR_API_TOKEN
Content-Type: application/xml; charset=utf-8
<guest>
<guest-category-id>{guest_category_id}</guest-category-id>
<email>john.smith@acme.org</email>
<first-name>John</first-name>
<last-name>Smith</last-name>
<company-name>Acme Inc.</company-name>
<position>CEO</position>
<phone-number>001122334455</phone-number>

<!-- Use this field if you want to choose your owns ids for your guests. -->
<uid>9vts5v3nqs</uid>

<!-- Use this field if you want a message that appear on the iOS device when the guest is checked-in. -->
<message>Vegan lunch</message>

<!-- You can pass any other information abotu the guest in this hash. -->
<guest-metadata type="array">
<guest-metadatum>
<name>Has a dog</name>
<value>Yes</value>
</guest-metadatum>
<guest-metadatum>
<name>Birth year</name>
<value>1960</value>
</guest-metadatum>
</guest-metadata>

<!-- You can pass an array of access privileges if the guest can access specific check-in points -->
<access-privileges-attributes type="array">
<access-privilege>
<access-once type="boolean">true</access-once>
<accesspoint-id>{workshop_foo_id}</accesspoint-id>
</access-privilege>
<access-privilege>
<access-once type="boolean">false</access-once>
<accesspoint-id>{vip_room_id}</accesspoint-id>
</access-privilege>
</access-privileges-attributes>
</guest>

Réponse :

<!-- 201 Created -->
<?xml version="1.0" encoding="UTF-8"?>
<guest>
<_id>50af6426bbfa805f760005ac</_id>
<badge-completed type="boolean">false</badge-completed>
<badge-url></badge-url>
<company-name>Acme Inc.</company-name>
<email>john.smith@acme.org</email>
<event-id>{event_id}</event-id>
<first-name>John</first-name>
<guest-category-id>{guest_category_id}</guest-category-id>
<last-name>Smith</last-name>
<message>Vegan lunch</message>
<phone-number>001122334455</phone-number>
<position>CEO</position>
<rsvp-status>not_replied</rsvp-status>
<uid>9vts5v3nqs</uid>
<created-at type="datetime">2012-11-23T11:55:18Z</created-at>
<updated-at type="datetime">2012-11-23T11:55:18Z</updated-at>
<access-privileges type="array">
<access-privilege>
<!-- [...] -->
<access-privilege>
</access-privilege>
<!-- [...] -->
</access-privilege>
</access-privileges>
<guest-metadata type="array">
<guest-metadatum>
<name>Has a dog</name>
<value>Yes</value>
</guest-metadatum>
<guest-metadatum>
<name>Birth year</name>
<value>1960</value>
</guest-metadatum>
</guest-metadata>
</guest>

Retrouvez des informations sur votre participant :

Avec l'identifiant d'un invité, vous pouvez obtenir des informations détaillées à son sujet. Nous fournissons deux paramètres facultatifs à transmettre en tant que paramètres de chaîne de requête :

guest_metadata=true placera le tableau guest_metadata dans l'objet renvoyé.

qrcode_url=true placera la chaîne qrcode_url dans l'objet renvoyé.

badges=true fournira un tableau des badges des invités.

files=true fournira un tableau des fichiers joints.

JSON

Requete

GET /api/v1/events/{event_id}/guests/{id}.json?auth_token=YOUR_API_TOKEN
GET /api/v1/events/{event_id}/guests/{id}.json?auth_token=YOUR_API_TOKEN&qrcode_url=true
GET /api/v1/events/{event_id}/guests/{id}.json?auth_token=YOUR_API_TOKEN&guest_metadata=true
GET /api/v1/events/{event_id}/guests/{id}.json?auth_token=YOUR_API_TOKEN&files=true

Réponse

// 200 OK
{
"_id": "{id}",
"guest_category_id": "{guest_category_id}",
"first_name": "John",
"last_name": "Smith",
// [...]
}

XML

Requete

GET /api/v1/events/{event_id}/guests/{id}.xml?auth_token=YOUR_API_TOKEN
GET /api/v1/events/{event_id}/guests/{id}.xml?auth_token=YOUR_API_TOKEN&qrcode_url=true
GET /api/v1/events/{event_id}/guests/{id}.xml?auth_token=YOUR_API_TOKEN&guest_metadata=true

Réponse

<!-- 200 OK -->
<?xml version="1.0" encoding="UTF-8"?>
<guest>
<_id>{id}</_id>
<guest-category-id>{guest_category_id}</guest-category-id>
<first-name>John</first-name>
<last-name>Smith</last-name>
<!-- [...] -->
</guest>

Mettre à jour un participant

Vous pouvez ajouter des informations complémentaires, mettre à jour ou supprimer les champs de vos invités. Veillez à ce que ces modifications soient effectuées à leur emplacement, et non concaténées aux champs existants. Par exemple, si vous fournissez un tableau guest_metadata dans votre requête, celui-ci ne sera pas ajouté aux entrées existantes dans le champ guest, mais les remplacera.

Json

Requête

PUT /api/v1/events/{event_id}/guests/{id}.json?auth_token=YOUR_API_TOKEN
Content-Type: application/json; charset=utf-8
{
// Fields to update (View the POST request for a complete list of fields)
}

Réponse

// 204 No Content

XML

Requête

PUT /api/v1/events/{event_id}/guests/{id}.xml?auth_token=YOUR_API_TOKEN
Content-Type: application/xml; charset=utf-8
<guest>
<!-- Fields to update (View the POST request for a complete list of fields) -->
</guest>

Réponse

<!-- 204 No Content -->

Supprimer un participant

JSON

Requete

DELETE /api/v1/events/{event_id}/guests/{id}.json?auth_token=YOUR_API_TOKEN

Réponse

// 204 No Content

XML

Requete

DELETE /api/v1/events/{event_id}/guests/{id}.xml?auth_token=YOUR_API_TOKEN

Réponse

<!-- 204 No Content -->
Avez-vous trouvé la réponse à votre question ?