L'API v1 sera définitivement supprimée le 1er Novembre 2021
Structure
Les données pouvant être précisées lors de la création ou de la mise à jour d'un lieu sont les suivantes:
- name : Requis. Le nom du lieu.
- address : Requis. L'adresse complète du lieu
- latitude : Requis.
- longitude : Requis.
- country: Requis. Code 2 lettres du pays ( FR, CH, DE... ).
- description : Optionnel. Champ multilingue. Précisez les codes langue comme clés d'un objet de valeurs texte.
- access: Optionnel. Champ multilinuge.Précisez les codes langue comme clés d'un objet de valeurs texte. Information devant préciser comment accéder au lieu.
- city : Optionnel.
- extId : Optionnel. Une référence externe pour le lieu.
- agenda_uid : Optionnel. L'identifiant unique de l'agenda auquel le lieu doit être rattaché.
Création
Pour créer un lieu, postez vos données sur:
https://api.openagenda.com/v1/locations
Les méthodes PUT et POST sont acceptées. Les paramètres à ajouter en corps de requête sont :
access_token
: un token d'accès valide. En savoir plusnonce
: un entier unique et aléatoiredata
: les données du lieu détaillées en première section, encodées en json.
Mise à jour
Pour mettre à jour un lieu, deux routes sont possibles, selon le type d'identifiant utilisé:
Identifiant OA:
/v1/locations/{locationUid}
Identifiant extId:
/v1/agendas/{agendaUid}/locations/ext/{extId}
Les méthodes PUT et POST sont acceptées. Les paramètres à ajouter en corps de requête sont :
access_token
: un token d'accès valide. En savoir plusnonce
: un entier unique et aléatoiredata
: les données du lieu détaillées en première section, encodées en json.
Exemples
php
$ch = curl_init("https://api.openagenda.com/v1/locations"); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'access_token' => '--avalidaccesstoken--', 'nonce' => randomnumber, 'data' => json_encode(array( 'placename' => 'La Gaité Lyrique', 'address' => '3bis Rue Papin, 75003 Paris',
'description' => array( 'fr' => 'Une description', 'en' => 'A description' ), 'latitude' => 48.8665593, 'longitude' =>2.3533941 )) )); $received_content = curl_exec($ch); if (curl_getinfo($ch, CURLINFO_HTTP_CODE) == 200) { $data = json_decode($received_content, true); $location_uid = $data['uid']; }
node.js
var https = require('https'); var querystring = require('querystring'); var access_token = '--youraccesstoken--'; var nonce = '--auniquenumber--'; var location_data = querystring.stringify({ 'access_token' : access_token, 'nonce': nonce, 'data': JSON.stringify({ placename: 'Titty Ho', address: 'Raunds, Wellingborough, Northamptonshire', latitude: 52.339954, longitude: -0.545178 }) }); var request = https.request({ host: 'api.openagenda.com', path: '/v1/locations', method: 'PUT', // or POST headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Content-Length': location_data.length } }, function (response) { var str = ''; response.on('data', function (chunk) { str += chunk; }); response.on('end', function () { if (response.statusCode == 200) { // remember the uid of your location, // you'll need it for publishing events occurring there var location_uid = JSON.parse(str).uid; } }); }); request.write(location_data); request.end();
Commentaires
0 commentaire
Cet article n'accepte pas de commentaires.