Een fout gevonden?

Meldingen ontvangen?

Wil je notificaties ontvangen?

Notifying Pim

Escapetalk review API uitleg

Met de review API kun je, indien je een abonnement hebt, reviews of scores van je locatie(s) of kamer(s) op je eigen website tonen. De API retourneert een JSON string met info over de locatie/kamer en alle reviews die hieraan gekoppeld zijn. Deze kun je vervolgens net zo tonen als je wil.


Overzicht

Klik op een onderdeel om daarheen te scrollen.
  1. Overzicht
  2. Authenticatie
  3. Parameters
  4. Reactie
  5. Voorbeeld
Basis URL
https://escapetalk.nl/api/reviews/

Authenticatie

Als eigenaar van een locatie, met een actief abonnement, kun je bij instellingen een API code genereren.
De 'apikey' wordt gebruikt om verzoeken te authentiseren.
apikey*

Standaard: geen standaard waarde;

Parameters

Er kunnen verschillende parameters aan een API call worden meegegeven.

De reviews API heeft sowieso een ID nodig van een locatie of kamer.
- Kamer (room_id): Alle reviews van deze kamer worden opgehaald.
- Locatie (loc_id): Alle reviews, van alle aan deze locatie gekoppelde kamers, worden opgehaald.

Je stuurt een locatie (loc_id) mee als je de data van alle kamers die aan de locatie gekoppeld zijn op wilt halen.
loc_id*

Standaard: geen standaard waarde;
Accepteert: Numerieke waarde;
Je stuurt een kamer (room_id) mee als je de data van een specifieke kamer wilt opvragen.
room_id*

Standaard: geen standaard waarde;
Accepteert: Numerieke waarde;
Met de 'max_score' parameter kun je aangeven dat je alleen reviews tot een bepaalde score terug wilt ontvangen. In de praktijk zal je dit niet snel gebruiken :)
max_score

Standaard: geen standaard waarde;
Accepteert: Numerieke waarde (0-10);
Met de 'min_score' parameter kun je aangeven dat alleen reviews vanaf een bepaalde score meegestuurd mogen worden. Handig als je bepaalde minder positieve reviews liever niet op je site terug ziet.
min_score

Standaard: geen standaard waarde;
Accepteert: Numerieke waarde (0-10);
Hiermee kun je uitsluiten dat specifieke reviews meegenomen worden.
exclude_reviews

Standaard: geen standaard waarde;
Accepteert: Numerieke waardes;
Accepteert meerdere id's als deze gescheiden zijn door komma's;
Hiermee kun je aangeven dat alleen deze specifieke reviews meegenomen worden.
include_reviews

Standaard: geen standaard waarde;
Accepteert: Numerieke waardes;
Accepteert meerdere id's als deze gescheiden zijn door komma's;
'sort_type' sorteert standaard op de laatste bezoekdatum ('visit_date'). Optioneel kun je sorteren op 'score' of op de datum van het plaatsen van de review ('review_date').
sort_type

Standaard: 'visit_date';
Accepteert: ['visit_date', 'score', 'review_date'];
'sort' bepaald of het sorteren van boven naar beneden of andersom wordt uitgevoerd. Deze waarde staat standaard op 'DESC' (omlaag)
sort

Standaard: 'DESC'(Descending);
Accepteert: ['ASC', 'DESC'];
De waarde die je aan de 'limit' parameter meegeeft bepaald hoeveel reviews er maximaal teruggestuurd worden.
limit

Standaard: geen standaard waarde;
Accepteert: Numerieke waardes;
De startdatum vanaf welke datum je de reviews wilt ontvangen
from

Standaard: geen standaard waarde;
Accepteert: Een datum;
De einddatum tot welke datum je de reviews wilt ontvangen
to

Standaard: geen standaard waarde;
Accepteert: Een datum;

Reactie

Geeft een lijst met reviews als JSON terug.
Een voorbeeld van de JSON reactie er uit zou kunnen zien.
{"room_info":{
    "title":"Best Escape Room Ever",
    "description":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus id lorem laoreet, placerat quam...",
    "loc_slug":"escaperoom-location",
    "room_slug":"escaperoom-room",
    "link":"https://escapetalk.nl/escaperoom/escaperoom-location/escaperoom-room/",
    "score":9.5,
    "sfeer":9,
    "spelbeleving":9,
    "service":9.80
},
    "total_review_count":"55",
    "reviews":[
        {
            "id":"22",
            "title":"title",
            "description":"description",
            "score":"10.0",
            "sfeer":"10.0",
            "spelbeleving":"10.0",
            "service":"10.0",
			"review_date":"2021-08-01",
            "visit_date":"June 2021",
            "escaped":"ja",
            "nickname":"Name of reviewer",
            "review_link":"https://escapetalk.nl/escaperoom/escaperoom-location/escaperoom-room/#rev_22"
        },
        ... //more reviews would follow in the same format
    ]
}

Voorbeeld

Een voorbeeld van PHP code om de API aan te roepen. Dit kan natuurlijk ook in JavaScript gedaan worden.
$url = 'https://escapetalk.nl/api/reviews/';

$data = array(
    'apikey' => 'REPLACE_WITH_YOUR_API_KEY', 
    'loc_id' => '319',
    'max_score' => '10', 
    'min_score' => '10', 
    'exclude_reviews' => '', 
    'include_reviews' => '', 
    'sort_type' => 'review_date', 
    'sort' => 'desc', 
    'limit' => '10'
);

$options = array(
    'http' => array(
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'method'  => 'POST',
        'content' => http_build_query($data)
    )
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);
$result = json_decode($result);