Projects
rEve API publique

Cette page dĂ©crit l’interface HTTP/XML publique offerte par rEve.

Principes de l'intégration

Un systĂšme tiers peut interagir avec rEve via des requĂȘtes de type HTTP GET retournant des rĂ©ponses au format XML. Les requĂȘtes de l'API publique d'un site rEve permettent de consulter, via requĂȘtes HTTP/XML, le mĂȘme contenu que celui disponible via le site sans ĂȘtre authentifiĂ©, c’est-Ă -dire la liste des activitĂ©s actuellement publiĂ©es.

Authentification

Les requĂȘtes publiques de rEve ne nĂ©cessitent pas d’authentification.

Les requĂȘtes HTTP

Toutes les requĂȘtes sont de type GET et retournent une rĂ©ponse au format XML. Dans cette rĂ©ponse, certains champs pourront contenir des URLs vers d’autres requĂȘtes, permettant de complĂ©ter l’information rĂ©ceptionnĂ©e par la premiĂšre requĂȘte.

Fichiers binaires

Les fichiers binaires exposĂ©s via l'interface, tels les images des activitĂ©s, le sont au sein mĂȘme des charges utiles XML, Ă  l'intĂ©rieur desquelles des tags contiendront tout ou partie des fichiers binaires, encodĂ©s en Base64.

Partons d'un exemple, au sein duquel les parties encodées en Base64 ont été tronquées.

<picture type="file" mimeType="image/png" name="LibreOffice.png">
  <part type="base64" number="1">iVBORw0KGgoAAAANSUhEUgAAA...</part>
  <part type="base64" number="2">rsnY99YHNva8QBcCTUSEcYClG8RKJv2XU...</part>
</picture>

Le tag principal, nommé ici picture, doit contenir les métadonnées suivantes: un type (valant "file", comme sur l'exemple), le type MIME du fichier et un nom polissé (attribut name).

Ensuite, un ou plusieurs sous-tags nommĂ©s part doivent charrier le contenu du fichier, dĂ©cupĂ©s en morceaux si la taille du fichier dĂ©passe une taille limite dĂ©finie en interne. Chaque partie doit mentionner son type valant "base64" et son numĂ©ro d'ordre (attribut number, dont la premiĂšre manifestation est 1 et non 0) parmi la sĂ©quence des parties du mĂȘme fichier. Quant au contenu du tag, il s'agit de l'encodage en Base64 de la partie du fichier. Pourquoi dĂ©couper ces fichiers binaires en morceaux? Le constat est que dĂ©coder des bouts courts de chaĂźnes encodĂ©es en Base64 et les concatĂ©ner ensuite est plus performant qu'un dĂ©codage d'une chaĂźne unique plus longue.

Notation

L'URL de base du site sera notée {siteUrl}.

Services

Les services disponibles sont listés dans le tableau ci-dessous.

Service Description Type de requĂȘte
get/activities RécupÚre la liste des activités actuellement publiées GET
{activityId}/xml RécupÚre le détail d'une activité dont l'identifiant est activityId GET
get/activityTypes RécupÚre les types d'activités actif sur un site rEve GET
get/domainCategories RécupÚre les catégories de domaines actives GET
get/activityTargets RécupÚre les publics-cibles actif actuellement définis GET
get/activityTags RécupÚre les tags actuellement définis GET
{periodId}/xml RécupÚre les détails au sujet d'une période externe, dont l'identifiant est periodIdi référencée par une activité GET
⚠
//7
Title
1 get/activities
2 {activityId}/xml
3 get/activityTypes
4 get/domainCategories
5 get/activityTargets
6 get/activityTags
7 {periodId}/xml