Nous contacter : contact@sowprog.com

API

 API Sowprog

Cette page est une introduction au webservice listant la programmation des salles et festivals partenaires. Vous trouverez dans les lignes ci-dessous tous les éléments techniques vous permettant de récupérer nos événements.

Nous avons également développé deux plugins WordPress permettant d’importer automatiquement les événements. Le premier plugin fonctionne avec Events Manager Pro (voir descriptif ici). Le second plugin fonctionne avec The Events Calendar (voir descriptif ici). N’hésitez pas à nous contacter pour plus d’informations.

Concernant notre API SOWPROG, nous mettons à votre disposition un webservice listant la programmation saisie sur Sowprog.
Pour y accéder, il vous suffit de nous contacter à l’adresse suivante : contact@sowprog.com
Il vous sera alors fourni un login et mot de passe permettant de vous authentifier auprès du webservice.

Accédez à la documentation détaillée

Nouvelle API en lecture / écriture !

La nouvelle API vous permet de contrôler Sowprog en lecture / écriture. Vous pouvez ainsi synchroniser vos CMS et applications automatiquement avec Sowprog, ou créer votre propre application.

Encore en phase de test, demandez-nous un accès pour démarrer dès à présent.

Si vous souhaitez simplement reprendre les événements, utilisez l’API Sowprog en lecture.

Documentation contact@sowprog.com

Lister les artistes

accès à la documentation détaillée
Permet de lister tous les artistes référencés dans les événements.

Lister les festivals

accès à la documentation détaillée
Permet de lister tous les festivals référencés dans les événements.

Généralisation du paramètre modifiedSince

Tous les services acceptent un paramètre de requête « modifiedSince » de type timestamp qui permet de limiter le résultat aux évènements modifiés depuis ce timestamp. Ce timestamp est en milli-secondes depuis le 1/1/1970.

Nouvelles informations liées aux événements

Artistes

En plus de la balise « lineup », les événements fournissent la liste et des informations détaillées sur chaque artiste de l’événement via la balise « artist ». On peut ainsi identifier les têtes d’affiches, avoir des visuels de l’artiste, une description, etc.

Festivals

Lorsqu’un événement fait partie d’un festival, la balise « eventGroup » fourni toutes les informations sur ce dernier.

Indicateur complet

La balise « soldOut » associée à la balise « eventScheduleDate » indique si une date est complète.

Nouveaux thumbnails

Les images sont désormais accompagnées de 3 thumbnails. La hauteur dépend de l’image d’origine et les proportions sont conservées.
« thumbnail » image en 150px de large
« thumbnailW300px » image en 300px de large
« thumbnailW600px » image en 600px de large

Whyd

Dans les événements, mais aussi les salles, un nouveau réseau social musical fait son apparition : Whyd.

1 – Les webservices disponibles

Tous les services sont disponibles en XML ou en JSON. Il suffit préciser dans le header de la requête Accept: application/json ou Accept: application/xml

1.1 – Lister les évènements

https://agenda.sowprog.com/rest/v1_2/scheduledEvents

Obtenez la liste de tous les évènements. Pour chaque évènement, il indique sa description, le lieu, les dates, les prix et d’autres informations dont vous trouverez le détail dans la documentation détaillée.

Ce service accepte un paramètre de requête « modifiedSince » de type timestamp qui permet de limiter le résultat aux évènements modifiés depuis ce timestamp.

https://agenda.sowprog.com/rest/v1_2/scheduledEvents/search

Permet de spécifier des critères de recherche en paramètre de requête sur les propriétés du document retourné. Par exemple, pour obtenir les évènenements qui ont lieu dans le 75 ou le 92 et qui sont gratuits :

https://agenda.sowprog.com/rest/v1_2/scheduledEvents/search?location.contact.department=75&location.contact.department=92&freeAdmission=true

Lorsque la même propriété est spécifiée plus d’une fois, un OU et appliqué. Entre différentes propriétés, un ET est appliqué. Le service peut renvoyer le code erreur 406 lorsque qu’un paramètre ne correspond à aucune propriété du document.

Vous ne pouvez pas faire de requêtes sur des propriétés au sein d’une liste comme les prix ou les billetteries.

accès à la documentation détaillée

1.2 – Lister les évènements par date

https://agenda.sowprog.com/rest/v1_2/scheduledEventsSplitByDate

et

https://agenda.sowprog.com/rest/v1_2/scheduledEventsSplitByDate/search

Ce service fourni les mêmes informations mais avec une entrée pour chaque date d’un évènement. Chaque entrée contient une balise qui indique sur quel horaire on se focalise. Attention, il y a une entrée par horaire, c’est à dire que pour une même évènement qui à lieu le 23-11 à 20h, le 2-12 à 16h et le 2-12 à 20h, il y aura 3 entrées. Dans le détail de l’évènement, toutes les dates sont répétées (cela permet d’indiquer quelles sont les autres dates pour un évènement)

accès à la documentation détaillée

1.3 – Lister les lieux

https://agenda.sowprog.com/rest/v1_2/locations
et
https://agenda.sowprog.com/rest/v1_2/locations/search

Toutes les informations concernant le lieu d’un évènement sont inclues dans les services de liste des évènement. Celui-ci est un référentiel de tous les lieux.

accès à la documentation détaillée

1.4 – Lister les types d’évènement

https://agenda.sowprog.com/rest/v1_2/eventTypes

Il s’agit d’un référentiel des types d’évènements et des styles possibles pour chaque type.

accès à la documentation détaillée

1.5 – Lister les style d’évènement

https://agenda.sowprog.com/rest/v1_2/eventStyles

Il s’agit d’un référentiel des styles d’évènements.

accès à la documentation détaillée

2 – Tester votre accès

Pour tester votre accès, deux méthodes sont proposées :

2.1 – Avec un navigateur

Pour tester votre accès, utilisez l’url suivante dans un navigateur : https://agenda.sowprog.com/rest/v1_2/scheduledEvents Le navigateur vous demande alors un login/mot de passe. Saisissez ceux vous ayant été fournis par SOWPROG. Le navigateur doit alors afficher un flux XML. Tout fonctionne !

2.2 – Avec un client REST

Sous chrome, vous pouvez utiliser un client REST. L’exemple ci-dessous utilise le plug-in REST Console. Renseignez les champs suivant :

Target / Request URI : https://agenda.sowprog.com/rest/v1_2/scheduledEventsTarget / Request method : GETAccept / Content-Type : application/json ou application/xml

 

Dans la partie Authorization, cliquez sur Basic Auth.

Renseignez les champs Username et Password avec ceux qui vous ont été fourni par SOWPROG
Cliquez sur Set Header. Le champ Auhorization Header est maintenant coché et renseigné.
Cliquez sur GET.Vous avez maintenant la réponse du webservice !

En cliquant sur Request Headers, vous pouvez voir les headers qui ont été envoyés avec votre requête.

3 – Accéder au webservice depuis une application

L’accès au webservice se fait à travers une simple requête HTTP GET.

3.1 – Requête

La requête se fait sour la forme d’un HTTP GET à l’url suivante :

https://agenda.sowprog.com/rest/v1_2/scheduledEvents

Le header de la requête doit contenir les informations suivantes :

Accept: application/json ou Accept: application/xmlContent-Type: application/json ou Content-Type: application/xmlAuthorization: Basic [token basic auth]

Pour ne prendre en compte que les évènements nouveaux ou modifiés

la requête accepte un paramètre modifiedSince qui limite le résultat aux évènements modifiés depuis le timestamp (en ms depuis le 1/1/1970).

https://agenda.sowprog.com/rest/v1_2/scheduledEvents?modifiedSince=1349648143355

L’élément event description porte 2 propriétés, creationDate et modificationDate, qui sont également des timestamp

Chaque élément de la réponse possède en outre les propriétés id et version. L’id est fixe et le numéro de version est incrémenté à chaque modification.

3.2 – Authentification

L’authentification utilise le [token basic auth]. Celui-ci est obtenu à partir de votre login et mot de passe encodés en Base64.

Il est fourni par SOWPROG sur simple demande à l’adresse suivante : contact@sowprog.com.

3.3 – Réponse

La programmation des salles est disponible au format XML ou JSON.

La racine est scheduledEvents.

Elle contient une liste de eventDescription.

 

Pour plus d’information, reportez vous à la documentation détaillée accessible depuis les liens ci-dessous :

Documentation détaillée complète

Vous trouverez ci-dessous un accès direct aux chapitres suivants :

accès au web service

description de la réponse

détail sur eventDescription

détail de chaque noeud