Appearance
Souscriptions de services
Les endpoints de souscriptions de services permettent a un partenaire de communiquer les services optionnels ou souscrits pour une chambre.
Ils sont reserves aux applications particulieres avec gestion de services par chambre. Un cas typique est le contexte hospitalier, ou certaines fonctionnalites de l'interface peuvent etre disponibles uniquement sur souscription.
Disponibilite
Ces endpoints ne sont pas necessaires pour les integrations standards.
Leur usage depend de deux conditions:
- l'installation cible doit etre compatible avec la gestion de services par chambre;
- le partenaire doit etre explicitement autorise a communiquer ces informations.
Les permissions CMS peuvent refuser l'acces meme avec un token Partner valide.
Modele indicatif
La structure exacte des objets depend du contrat convenu avec le partenaire. Un objet de souscription peut contenir par exemple:
json
{
"code": "tv_premium",
"label": "TV Premium",
"status": "active",
"start": "2026-04-28T08:00:00.000Z",
"end": "2026-04-30T10:00:00.000Z"
}Champs courants:
code: identifiant fonctionnel du service.label: libelle affiche ou descriptif.status: etat de la souscription, par exempleactive.start: date de debut de validite.end: date de fin de validite.
Le champ end, lorsqu'il est fourni, peut etre utilise pour determiner la validite temporelle d'un service.
Ajouter des souscriptions
Ajoute une ou plusieurs souscriptions a une chambre.
http
POST /v1/areas/{areaExternalId}/data_servicesLe corps conserve le format legacy: value est une chaine contenant un JSON array.
json
{
"value": "[{\"code\":\"tv_premium\",\"label\":\"TV Premium\",\"status\":\"active\",\"start\":\"2026-04-28T08:00:00.000Z\",\"end\":\"2026-04-30T10:00:00.000Z\"}]"
}Exemple
bash
curl -X POST \
-H "Authorization: Bearer <cms-partner-token>" \
-H "Content-Type: application/json" \
-d '{"value":"[{\"code\":\"tv_premium\",\"label\":\"TV Premium\",\"status\":\"active\",\"start\":\"2026-04-28T08:00:00.000Z\",\"end\":\"2026-04-30T10:00:00.000Z\"}]"}' \
https://partner.api.tvcast.fr/v1/areas/facility-001-101/data_servicesComportement
- Chaque souscription ajoutee recoit un
idgenere par l'API. - Les nouvelles souscriptions sont ajoutees a
data_services. - Les souscriptions existantes ne sont pas remplacees par defaut.
Reponse indicative
json
{
"info": "service(s) added to room",
"services": {
"data_services": []
}
}Supprimer une souscription
Supprime une souscription de service d'une chambre a partir de son identifiant.
http
DELETE /v1/areas/{areaExternalId}/data_services/{serviceId}Cette operation retire l'entree correspondante de data_services.
Exemple
bash
curl -X DELETE \
-H "Authorization: Bearer <cms-partner-token>" \
https://partner.api.tvcast.fr/v1/areas/facility-001-101/data_services/service-idReponse indicative
json
{
"info": "service deleted from room",
"id": "service-id",
"remaining_services": []
}Cycle de vie
Les souscriptions de services sont rattachees a l'occupation ou au cycle courant de la chambre.
Les operations suivantes reinitialisent data_services:
POST /v1/areas/{areaExternalId}/lors de l'ouverture d'une chambre;DELETE /v1/areas/{areaExternalId}/lors de la fermeture d'une chambre.
Erreurs possibles
400: payload legacy malforme ou champvalueabsent.403: partenaire non autorise, installation non compatible ou ressource refusee par le CMS.404: area inconnue ou non accessible.