API-Endpunkte
Die Basisadresse der öffentlichen API lautet https://feedivo.de/api/v1.
Jede Antwort verwendet den JSON-Umschlag { "data", "meta", "errors" }.
Bis auf /health benötigen alle Endpunkte ein Bearer-Token; Einrichtung und
Sicherheitsregeln stehen unter
API-Authentifizierung und Token.
Tipp
Für die erste Integration empfiehlt sich der Schnellstart mit der Feedivo-API. Die folgende Referenz dient anschließend zum Nachschlagen einzelner Parameter und Antworten.
-
GET
/api/v1/feeds/{uuid}/posts -
GET
/api/v1/feeds/{uuid}/posts/{post_id} -
GET
/api/v1/feeds -
GET
/api/v1/feeds/{uuid} -
GET
/api/v1/me -
GET
/api/v1/health
GET
/api/v1/feeds/{uuid}/posts
Posts eines Feeds
Liefert die Posts eines Feeds, neueste zuerst, mit Cursor-Pagination — der Haupt-Endpunkt für Einbindungen.
Parameter
| Name | Bedeutung |
|---|---|
limit |
Ganzzahl 1–100, Standard 25 — Posts pro Seite. |
cursor |
Opaker Cursor aus meta.pagination.next_cursor — lädt die nächste Seite. |
since |
ISO-8601-Zeitstempel — nur Posts, die danach veröffentlicht wurden. Ungültige Werte antworten mit 422. |
updated_since |
ISO-8601-Zeitstempel — nur Posts, die Feedivo seither erstmals gesehen hat. Das ist der Parameter für inkrementelle Syncs: ein Post trifft hier später ein, als sein Veröffentlichungsdatum sagt, und since würde ihn übergehen. |
Hinweis
Caching: Antworten senden ein ETag. Sende es als If-None-Match mit — bei unverändertem Inhalt antwortet die API mit 304 ohne Body. Der ETag gilt für genau diese Abfrage (Feed samt limit, cursor und Zeitfiltern).
Antwort
{
"data": [
{
"id": "17895695668004550",
"platform": "instagram",
"type": "image",
"caption": "Unser neues Projekt …",
"permalink": "https://www.instagram.com/p/…",
"media_url": "…", "thumbnail_url": "…",
"author": "meinaccount",
"published_at": "2026-06-12T14:30:00+02:00",
"media": [
{ "url": "…", "thumbnail_url": "…", "type": "image", "embed_url": null,
"width": 1080, "height": 1350, "mime": "image/jpeg", "bytes": 284913, "cached": true }
],
"hashtags": ["projekt"],
"also_on": []
}
],
"meta": {
"feed": { "id": "…", "name": "…" },
"pagination": { "next_cursor": "eyJ…", "count": 25 }
},
"errors": []
}
GET
/api/v1/feeds/{uuid}/posts/{post_id}
Einzelner Post
Liefert genau einen Post eines Feeds — etwa für Detailseiten oder gezielte Aktualisierungen.
Parameter
| Name | Bedeutung |
|---|---|
{post_id} |
Post-ID aus der Post-Liste (data[].id). |
Hinweis
Abrufbar ist genau, was die Post-Liste liefert — Posts außerhalb der Feed-Filter antworten mit 404. Antworten senden ein ETag wie die Liste.
Antwort
{
"data": {
"id": "17895695668004550",
"platform": "instagram",
"type": "image",
"caption": "Unser neues Projekt …",
"permalink": "https://www.instagram.com/p/…",
"media_url": "…", "thumbnail_url": "…",
"author": "meinaccount",
"published_at": "2026-06-12T14:30:00+02:00",
"media": [
{ "url": "…", "thumbnail_url": "…", "type": "image", "embed_url": null,
"width": 1080, "height": 1350, "mime": "image/jpeg", "bytes": 284913, "cached": true }
],
"hashtags": ["projekt"],
"also_on": []
},
"meta": { "feed": { "id": "…", "name": "…" } },
"errors": []
}
GET
/api/v1/feeds
Feeds auflisten
Listet alle Feeds, die diese Verknüpfung abdeckt — bei „Alle Feeds“ auch künftig erstellte.
Hinweis
Sendet ein ETag: Wer regelmäßig nachsieht, ob sich an den Feeds etwas geändert hat, bekommt mit If-None-Match ein 304 ohne Body.
Antwort
{
"data": [
{
"id": "1c9e7a52-…",
"name": "Instagram Highlights",
"slug": "instagram-highlights",
"description": null,
"filters": { "platforms": ["instagram"], "media_types": [], "hashtags": [], "exclude_hashtags": [], "date_from": null, "date_to": null, "sort": "newest" },
"display": { "style": "grid-classic", "columns": 4, "aspect": "square", "gap": "normal", "limit": 12, "load_more": true, "autoplay": true, "corners": "rounded", "hover": true, "accent": "", "components": { "caption": true, "date": true, "platform": true, "author": false, "type_icon": true, "source": true } },
"updated_at": "2026-06-12T14:30:00+02:00"
}
],
"meta": null,
"errors": []
}
GET
/api/v1/feeds/{uuid}
Feed-Details
Metadaten, Filter und Darstellungseinstellungen eines einzelnen Feeds.
Parameter
| Name | Bedeutung |
|---|---|
{uuid} |
Feed-UUID aus der Feeds-Liste. Nicht abgedeckte oder unbekannte Feeds antworten mit 404. |
Hinweis
Sendet ein ETag wie die Feed-Liste.
Antwort
{
"data": { "id": "1c9e7a52-…", "name": "…", "slug": "…", "description": null, "filters": { … }, "display": { … }, "updated_at": "…" },
"meta": null,
"errors": []
}
GET
/api/v1/me
Token prüfen
Zeigt, zu welcher Verknüpfung das verwendete Token gehört — praktisch beim Einrichten und bei mehreren Tokens.
Antwort
{
"data": { "id": "fc2b4352-…", "name": "Meine Website", "type": "api", "all_feeds": false, "feeds": 2, "created_at": "…" },
"meta": null,
"errors": []
}
GET
/api/v1/health
Statusprüfung
Verfügbarkeit des Dienstes — der einzige Endpunkt ohne Token.
Antwort
{
"data": { "status": "ok", "service": "Feedivo", "version": "v1", "time": "…" },
"meta": null,
"errors": []
}
Frage nicht beantwortet? Schreib uns — wir ergänzen die Seite.