GET /listings
Meldungen abrufen
Öffentliche Meldungen, neueste zuerst. Filtern Sie nach Status, Tierart und Ort. Synchronisieren Sie mit updated_since und If-None-Match. Eine identische Anfrage innerhalb von 60 Sekunden erhält die vorige Antwort aus dem Cache.
Parameter
| Name | Ort | Typ | Beschreibung |
|---|---|---|---|
status | query | string | Kommagetrennt: missing, found, seen, home. |
species | query | string | Kommagetrennt: cat, dog, bird, small_mammal, reptile, horse, other. |
province | query | string | Provinz-Slug (siehe /gemeenten). Nicht zusammen mit gemeente oder near. |
gemeente | query | string | Gemeinde-Slug oder NIS-Code (siehe /gemeenten). |
near | query | string | Belgische Postleitzahl: Meldungen in Gemeinden, deren Zentrum innerhalb von radius km liegt (Abstand zwischen Gemeindezentren, nie genaue Standorte). |
radius | query | integer 1–25 | Radius in km (1–25, Standard 10), nur mit near. |
updated_since | query | string | Nur seitdem geänderte Meldungen (ISO 8601). Grundlage der Synchronisation. |
sort | query | string (-reported_at, reported_at, -updated_at, updated_at) = -reported_at | Sortierung; ein Minuszeichen bedeutet neueste zuerst. |
page | query | integer 1–100 = 1 | Seite (max. 100). Für eine vollständige Synchronisation verwenden Sie updated_since. |
per_page | query | integer 1–100 = 25 | Ergebnisse pro Seite (max. 100). |
lang | query | string (nl, fr, en, de) = nl | Sprache der Bezeichnungen und Links (der Link öffnet die Meldung in dieser Sprache). |
If-None-Match | header | string | ETag Ihrer vorigen Antwort: unverändert → 304 ohne Inhalt. |
If-Modified-Since | header | string | Last-Modified Ihrer vorigen Antwort. |
Beispielanfrage
curl
curl -s "https://ikbenvermist.be/wp-json/ibv/api/v1/listings?status=missing&gemeente=hasselt&lang=nl" \
-H "Authorization: Bearer $IBV_API_KEY" \
-H 'If-None-Match: W/"…"'JavaScript
// on your server (Node 18+), never in the browser
const res = await fetch('https://ikbenvermist.be/wp-json/ibv/api/v1/listings?status=missing&gemeente=hasselt&lang=nl', {
headers: { Authorization: `Bearer ${process.env.IBV_API_KEY}` },
});
if (res.status === 429) { /* wait res.headers.get('Retry-After') seconds */ }
const body = await res.json();PHP
$ch = curl_init('https://ikbenvermist.be/wp-json/ibv/api/v1/listings?status=missing&gemeente=hasselt&lang=nl');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('IBV_API_KEY')],
]);
$body = json_decode(curl_exec($ch), true);Beispielantwort 200
{
"data": [
{
"id": 900001,
"status": "missing",
"status_label": "Vermist",
"species": "cat",
"species_label": "Kat",
"place": {
"gemeente": "Hasselt",
"gemeente_slug": "hasselt",
"nis": "71022",
"province": "Limburg",
"province_slug": "limburg"
},
"reported_at": "2026-10-10T08:12:00Z",
"updated_at": "2026-10-11T17:40:00Z",
"url": "https://ikbenvermist.be/m/900001/?utm_source=jouw-organisatie&utm_medium=api&utm_campaign=api",
"links": {
"self": "https://ikbenvermist.be/wp-json/ibv/api/v1/listings/900001",
"html": "https://ikbenvermist.be/m/900001/?utm_source=jouw-organisatie&utm_medium=api&utm_campaign=api",
"gemeente": "https://ikbenvermist.be/?utm_source=jouw-organisatie&utm_medium=api&utm_campaign=api"
}
},
{
"id": 900002,
"status": "found",
"status_label": "Gevonden",
"species": "dog",
"species_label": "Hond",
"place": {
"gemeente": "Gent",
"gemeente_slug": "gent",
"nis": "44021",
"province": "Oost-Vlaanderen",
"province_slug": "oost-vlaanderen"
},
"reported_at": "2026-10-09T14:03:00Z",
"updated_at": "2026-10-09T14:03:00Z",
"url": "https://ikbenvermist.be/m/900002/?utm_source=jouw-organisatie&utm_medium=api&utm_campaign=api",
"links": {
"self": "https://ikbenvermist.be/wp-json/ibv/api/v1/listings/900002",
"html": "https://ikbenvermist.be/m/900002/?utm_source=jouw-organisatie&utm_medium=api&utm_campaign=api",
"gemeente": "https://ikbenvermist.be/?utm_source=jouw-organisatie&utm_medium=api&utm_campaign=api"
}
}
],
"meta": {
"page": 1,
"per_page": 2,
"total": 6,
"total_pages": 3,
"lang": "nl",
"generated_at": "2026-10-15T01:00:04Z"
},
"links": {
"self": "https://ikbenvermist.be/wp-json/ibv/api/v1/listings?lang=nl&per_page=2&page=1",
"first": "https://ikbenvermist.be/wp-json/ibv/api/v1/listings?lang=nl&per_page=2&page=1",
"last": "https://ikbenvermist.be/wp-json/ibv/api/v1/listings?lang=nl&per_page=2&page=3",
"next": "https://ikbenvermist.be/wp-json/ibv/api/v1/listings?lang=nl&per_page=2&page=2",
"docs": "https://ikbenvermist.be/en/api/documentation/"
}
}