Authentification
Les données des évènements de monbillet.ch sont accessibles par les développeurs via une API HTTP REST. Pour consommer les données de l'API, il est nécessaire d'utiliser un token qui sera envoyé lors de chaque requête dans le header X-Monbillet-Api-Token.
Prévention du XSS
Tous les champs de type String
peuvent contenir de l'HTML non filtré. Le contenu de ces champs
reste en tout temps sous le contrôle de monbillet.ch et peut en principe être considéré comme sûr. Il appartient
cependant à l'implémenteur de se prémunir contre d'éventuelles attaques XSS, par exemple en passant le contenu à une
fonction d'échappement, ou en whitelistant les tags autorisés à l'aide d'une librairie telle que DOMPurify (Node) ou HTMLPurifier (PHP).
Ressources
Tous les évènements
Permet d'obtenir les informations de tous les évènements au format JSON.
Exemple d'utilisation :
curl -H 'X-Monbillet-Api-Token:<token>' https://monbillet.ch/api/v1/eventsSuccess 200
Champ | Type | Description |
---|---|---|
events | Event[] | Une liste d'évènements |
Un seul évènement
Permet d'obtenir des informations plus détaillées sur un évènement au format JSON.
Parameter
Champ | Type | Description |
---|---|---|
id | String | L'id ou le nom unique d'un évènement |
Success 200
Champ | Type | Description |
---|---|---|
event | Event | Un évènement |
Tous les groupes d'évènements
Permet d'obtenir les évènements par groupe au format JSON.
Exemple d'utilisation :
curl -H 'X-Monbillet-Api-Token:<token>' https://monbillet.ch/api/v1/event-groupsSuccess 200
Champ | Type | Description |
---|---|---|
event-groups | Object[] | Une liste de groupes d'évènements |
id | String | L'id d'un groupe d'évènements |
uniqueName | String | Le nom unique d'un groupe d'évènements (correspond à la regex [a-z0-9-]+) |
title | String | Le titre d'un groupe d'évènements |
events | Event[] | Une liste d'évènements |
Un seul groupe d'évènements
Permet d'obtenir les évènements appartenant à un groupe au format JSON.
Parameter
Champ | Type | Description |
---|---|---|
id | String | L'id ou le nom unique d'un groupe |
Success 200
Champ | Type | Description |
---|---|---|
event-groups | Object | Un groupe d'évènements |
id | String | L'id d'un groupe d'évènements |
uniqueName | String | Le nom unique d'un groupe d'évènements (correspond à la regex [a-z0-9-]+) |
title | String | Le titre d'un groupe d'évènements |
events | Event[] | Une liste d'évènements |
Objects API
Event
Champ | Type | Description |
---|---|---|
id | String | L'id d'un évènement |
uniqueName | String | Le nom unique d'un évènement (correspond à la regex [a-z0-9-]+) |
title | String | Le titre d'un évènement |
preTitle | String | Le prétitre d'un évènement |
isTemporary | Bool | `True` si l'évènement est annoncé temporairement |
canceledMessage | String|Null | Le message en cas d'annulation ou de report, ou `Null` |
location | Object | Le lieu d'un évènement |
uniqueName | String | L'identifiant du lieu (ex. "vevey-salle-del-castillo", "lausanne-cathedrale") |
name | String | Le nom du lieu (ex.: "Salle del Castillo", "Cathédrale") |
displayName | String | Le nom usuel du lieu (ex.: "Salle del Castillo, Vevey", "Cathédrale de Lausanne") |
street | String | L'adresse du lieu |
zipcode | Number | Le code postal du lieu |
city | String | La ville |
posterPreview | String | L'affiche d'un évènement (540x763 pixels) |
bg | String | L'image d'arrière-plan d'un évènement |
colors | Object | Les couleurs d'un évènement |
main | String | La couleur principale (couleur de fond), au format #rrggbbaa |
text | String | La couleur du texte, au format #rrggbbaa |
dateFirstShow | Date | La date et l'heure de la première représentation |
dateLastShow | Date | La date et l'heure de la dernière représentation |
datesHuman | String | La date formatée des représentations de l'évènement |
customDate | String | La date personnalisée d'un évènement |
url | String | L'URL de la page d'un évènement |
Les champs suivants sont disponibles seulement pour GET /api/v1/events/:id | ||
text | String | Le texte d'un évènement |
aside | String | Les informations complémentaires d'un évènement |
duration | String | La durée d'un évènement |
ageRecommendation | String | L'âge recommandé d'un évènement |
isFull | Bool | `True` si l'évènement est complet |
shouldShowBookingButton | Bool | `True` si le bouton de réservation peut être affiché. Les conditions suivantes doivent être remplies: des représentations sont ouvertes; l'évènement n'est pas gratuit; l'évènement n'est pas complet; l'évènement n'utilise pas une billetterie alternative. |
isFreeAccess | Bool | `True` si l'évènement est en entrée libre |
freeAccessDescription | String|Null | La description de l'entrée libre, ou `Null` |
alerts | String[] | Les alertes de cet évènement (peut être un `Array` vide) |
shows | Object[] | Une liste de représentations |
dateHappens | Date | La date d'une représentation |
customDate | String | La date personnalisée d'une représentation |
fullDateHappensHuman | String | La date formatée d'une représentation |
isFull | Bool | `True` si la représentation est complète |
categories | Object[] | La liste des catégories d'une représentation |
title | String | Le titre de la catégorie |
prices | Object[] | La liste des prix de la catégorie |
name | String | Le nom du tarif (correspond à la regex [a-z0-9-]+) |
title | String | Le titre du tarif |
value | Number | La valeur du tarif en CHF |