Allakartors API – hitta sushi, badplatser och hotell

Igår så lanserade Ted Valentin ett API för sina kartsajter (sushikartan, cafekartan etc). Detta API kan användas på flera sätt för att få information om vilka ställen (tex sushirestaurang för sushikartan eller badplats för badkartan, ett ställe kallas för “venue” i APIet) som finns på en viss plats. Man kan också få information om varje ställe, tex betyg, bilder och beskrivning, samt information om vilka recensioner en enskild användare har gjort. Anledningen till att Ted släpper ett API är att han vill se vad andra utvecklare kan göra med all den data han har tillgänglig.

Grundformatet för ett API anrop är:

http://www.allakartor.se/api/?key=<DIN NYCKEL>&webpage=<NAMNET PÅ EN KARTSAJT>

För att kunna använda allakartor APIet så krävs alltså en API nyckel. Om du vill ha en så kontakta Ted Valentin direkt.

Man kan använda nästan alla kartsajterna, så giltiga värden för “webpage” parametern är en av följande – hotellkartan, cafekartan, sushikartan, wifikartan, badkartan, campingkartan, kyrkokartan, gymnasikartan, vintagekartan. Det betyder alltså att man för tillfället inte kan använda APIet för att komma åt data från annonskartan, jobbkartan och studentrabattkartan.

Geografisk sökning

För att söka efter alla venues i närheten av ett specifikt område så finns det flera API parametrar man kan använda:

  • address – hämtar alla venues i närheten av en given adress. För att få information om alla hotell i Mexico så använd denna URL: http://www.allakartor.se/api/?key=<DIN API NYCKEL>&webpage=hotellkartan&address=Mexico. Om det finns flera matchningar för den angivna adressen så returneras en lista på alla matchande adresser (inklusive longitude och latitude för varje match).
  • lat & long = använd dessa två parametrar för att specifiera en geografisk position istället för en adress
  • distance – returnera de högst rankade venues inom detta avstånd i meter från den angivna adressen eller positionen. Maxvärdet är 9999 meter.

Detta är ett exempel på lite av den JSON data man får tillbaka från ett anrop till badkartan efter de badplatser i Helsingborg (http://www.allakartor.se/api/?key=<DIN API NYCKEL>&webpage=badkartan&address=Helsingborg):

{ "venues":<br /> [{"result_id": "1",<br /> "venue_id": "53636",<br /> "latitude": "56.04356856",<br /> "longitude": "12.68629074",<br /> "name": "Parapeten Tropical Beach",<br /> "grade": "0.0",<br /> "grade_count": "Ej betygsatt",<br /> "distance": "668 meter bort",<br /> "phone": ""}<br /> ,{"result_id": "2", .....

Information om en venue

För att få mer detaljerad information om en specifik venue så finns det ett par praktiska API parametrar:

  • venue – ange venue id på den venue man är intresserad av, för att få mer info om Parapeten Tropical Beach från anropet ovan så gör följande anrop: http://www.allakartor.se/api/?key=<DIN NYCKEL>&webpage=badkartan&venue=53636. Då får man beskrivning, adress etc om den venuen samt alla de recensioner som denna venue har fått av olika användare.
  • pictures – ange ett venue id för att få en lista på alla de bilder som finns tillgängliga för denna venue.

Information om en användare

Vill man ha mer information om en given användare så använd följande parameter:

  • user – ange user id (som kan fås tex via de recensioner som returneras när man gör ett anrop med parametern “venue”). Tillbaka får man bla användarens namn, beskrivning och alla recensioner.

Det är riktigt kul att se fler och fler svenska APIer komma ut (Bloggy är ju ett annat lysande exempel). Det är också kul att se att Ted inte har snålat på vilken data han delar med sig av, nu återstår bara att se vad olika utvecklare gör med all denna data. Vad tycker ni om APIet och dess möjligheter?

Om ni bygger någon tjänst som använder detta API (eller för den delen något annat svenskt API) så hör gärna av er, jag skriver gärna om er skapelse på mashup.se.