Babl voor developers
API
Wil je berichten ophalen of plaatsen vanuit je eigen applicatie, website, widget enz.?
Op dit moment kan dat in JSON en RSS, requests kunnen zowel via GET als POST calls gedaan
worden, maar eventuele authenticatie parameters moeten altijd gePOST worden.
Authenticatie
Voor een aantal requests & commando's is authenticatie nodig, dat wil zeggen dat een
bablgebruikersnaam & wachtwoord meegegeven moet worden.
Dit kan op twee manieren:
RSS
De RSS feeds zijn read-only, maar bieden wel naast de standaard RSS items extra
informatie via een namespace "babl", zodat je toch eenvoudig uitgebreidere
berichtinformatie uit de feeds kunt trekken.
JSON
De JSON interface geeft altijd als response een variabele "status", met als waarde "OK"
als de opdracht/request gelukt is, of als het mislukt is een uitleg waarom het mislukt is.
Verder is het bij alle JSON requests mogelijk om de response in een (javascript-) callbackfunctieaanroep
terug te laten geven voor eventuele asynchrone implementatie.
Wanneer je de variable
cb=callbackFunctieNaam
meegeeft aan je request krijgt de response de vorm
callbackFunctieNaam(<JSON output>);
Berichten lezen
Bij het ophalen van berichten is authenticatie alleen nodig als de babl niet publiek is.
Authenticatie is mogelijk met elk account dat lid is van de babl.
Nieuwste berichten ophalen
http://bablnaam.babl.nl/feed.json,
http://bablnaam.babl.nl/feed.rss
Geeft de nieuwste 25 berichten en reacties uit de babl terug.
Berichten van een gebruiker
http://bablnaam.babl.nl/user/gebruikersnaam/feed.json,
http://bablnaam.babl.nl/user/gebruikersnaam/feed.rss
Geeft de laatste 25 berichten en reacties die
gebruikersnaam in deze babl heeft
geplaatst
Reacties op een bericht ophalen
http://bablnaam.babl.nl/message/id/feed.json,
http://bablnaam.babl.nl/message/id/feed.rss
id is hier de ID van het betreffende bericht. Bij het ophalen van nieuwste
berichten worden deze ID's meegegeven.
Berichten plaatsen
Voor het plaatsen van een bericht is altijd authenticatie nodig met een bablaccount
dat lid is van de betreffende babl waar het bericht in geplaatst moet worden. Dit
bablaccount is ook direct de schrijver van het bericht.
Bij het plaatsen van berichten wordt op dit moment alleen een JSON response teruggegeven.
http://bablnaam.babl.nl/api/call.json
parameters (verplicht):
method=message.post
message=bericht
optioneel:
parentId=id
bericht is het bericht dat je wilt plaatsen. Als het bericht langer dan 400
tekens is wordt het automatisch afgekapt.
Wanneer de optionele parameter
parentId wordt meegegeven,
dan wordt het nieuwe bericht geplaatst als reactie op het bericht met
id
id. Deze
id moet zelf een hoofdbericht zijn, er kan dus
geen reactie op een reactie gegeven worden.
Heb je nog vragen, suggesties of zou je bepaalde functionaliteit willen zien?
Laat het weten op de
API & developers babl.
Daar houden we je ook op de hoogte van veranderingen en nieuwe features.
Een voorbeeld-implementatie van berichten ophalen met behulp van de API
vind je hier.