Pusha API
av Andreas Krohn
På Pusha.se så röstar sajtens medlemmar fram sina favoritlänkar i olika ämnen. De populäraste länkarna hamnar sedan på pushas framsida. Idag så har Pusha lanserat ett imponerande API där man kan få fram information om medlemmar, länkar, kommentarer etc.
Grunderna för ett API-anrop
För att anropa Pushas API så krävs en API-nyckel som Pusha medlemmar (om du inte är medlem så är det gratis att registrera sig) kan få genom att skapa en ny Pusha applikation. När man väl har en nyckel så kallar man APIet via en URL med grundformatet:
http://service.pusha.se/<NOD>?key=<API NYCKEL>&format=<RETURFORMAT>
Pushas API kan returnera XML, JSON eller JSONP genom att ange parametern “format” i API-anropet till “xml”, “json” eller “javascript” respektive. Med JSONP så kan man ange en lokal javascriptfunktion som exekveras när APIet returneras, denna funktion kan sedan hantera den data som APIet returnerar. Mer om de olika formaten och exempel på den data som returneras hittas på http://api.pusha.se/format.
API Noder
Pushas API har flera olika noder (metoder). Om du tex vill veta vad jag (medlemsnamn Andreas) har fått upp på Pushas framsida så använder man noden user/
http://service.pusha.se/user/Andreas/links/popular?key=<API NYCKEL>&format=xml
Tillbaka får man då XML där varje länk som jag har skickat in till Pusha och som sedan har hamnat på framtidan listas. För varje länk så finns det en mängd metadata, tex antalet gånger den har pushats, när den skickades in, länkens beskrivning och url etc.
Andra exempel på anrop är:
http://service.pusha.se/links/popular
– returnerar de senaste populara länkarna</li>
http://service.pusha.se/comments
– hämtar de senaste kommentarerna</li>
http://service.pusha.se/users/<ANVÄNDARNAMN>/similarities
– hämtar de användare som gillar liknande innehåll som den angivna</li> </ul>
Varje anrop har flera parametrar som gör dem väldigt flexibla. För alla noder, parametrar, felkoder etc så läs Pushas egen API dokumentation. Den är mycket utförlig och innehåller en massa exempel på anrop och returnerad data.
Väl genomtänkt
Överhuvudtaget är Pushas API mycket väl genomtänkt. Även om APIet bara är i Beta-version så har det väldigt mycket funktionalitet så möjligheterna att integerera information från Pusha på andra sidor och i olika webbapplikationer är mycket stora. Jag gillar speciellt att de stödjer JSONP, att dokumentationen är väldigt utförlig och hur mycket data man faktiskt har tillgång till via APIet.För tillfället så har APIet lite begränsningar, man kan bara göra 100 anrop i timmen per IP-adress och varje anrop returnerar “bara” 100 objekt. Det blir nog ett måste att ändra antalet anrop per timme snart om någon börjar använda APIet seriöst.