API-Referenz

Blog-HTML und SEO-Metadaten in Ihren Stack ziehen. Basispfad: `/api/v1`.

OpenAPI 3.0 Spec herunterladen →

Inhalte, die bereits auf Ihrer Website sind

Webhooks werden nur ausgelöst, wenn GrowthDailySeo einen neuen Entwurf erstellt. Bestehende CMS-Inhalte oder ältere Beiträge werden nicht automatisch gepusht.

  1. Einmalig importieren: `GET /posts` mit `status=published` (und `status=draft` für Entwürfe) paginieren.
  2. `updatedAt` speichern und mit `updatedAfter` Änderungen nachziehen, ohne den gesamten Katalog neu zu laden.
  3. `If-None-Match` mit der `ETag`-Antwort nutzen, um unveränderte Seiten zu überspringen.
GET/api/v1/sites/:siteId/posts

Paginierte Beiträge für CMS-Sync. Gibt standardmäßig Entwurf + veröffentlicht zurück (neue Entwürfe sind sofort importierbar).

Abfrageparameter

  • page — Seitennummer (Standard 1)
  • pageSize — Elemente pro Seite, max. 50 (Standard 12)
  • search — Groß-/kleinschreibungsunabhängiger Titelfilter
  • status — Filter: `draft`, `published` oder `all` (Standard — Entwurf + veröffentlicht, empfohlen für CMS-Sync)
  • language — ISO-Sprachcode (z. B. `en`, `tr`) — entspricht `language` jedes Beitrags
  • updatedAfter — ISO-8601-Zeitstempel — nur Beiträge, die danach aktualisiert wurden
Antwort 200
{
  "items": [{
    "id": "...",
    "slug": "my-post",
    "title": "...",
    "contentHtml": "<article>...</article>",
    "status": "draft",
    "seo": {
      "metaDescription": "...",
      "ogTitle": "...",
      "ogDescription": "...",
      "keywords": ["..."]
    },
    "faqJsonLd": { "@type": "FAQPage", ... }
  }],
  "page": 1,
  "pageSize": 12,
  "total": 42,
  "totalPages": 4
}
GET/api/v1/sites/:siteId/posts/:slug

Vollständiges Post-Payload: contentHtml, excerpt, seo, faqJsonLd. Funktioniert für Entwurfs- und veröffentlichte Slugs.

GET/api/v1/sites/:siteId/guides/:slug

Gibt einen einzelnen veröffentlichten Guide per Slug zurück.

Antwort 200 (camelCase JSON)
{
  "id": "...",
  "slug": "my-guide",
  "title": "...",
  "contentHtml": "<article>...</article>",
  "status": "published",
  "publishedAt": "2026-07-21T12:00:00.000Z",
  "updatedAt": "2026-07-21T12:00:00.000Z"
}
GET/api/v1/sites/:siteId/sitemap.xml

XML-Sitemap veröffentlichter Beiträge und Guides. Auth per Bearer oder `?token=` für Crawler.

GET/api/v1/sites/:siteId/training/export

Streamt opt-in Training-Zeilen als NDJSON (max. 500). Content-Type: application/x-ndjson.

POST/api/v1/webhooks/test

Sendet Test-Payload an Ihre konfigurierte Webhook-URL. Gibt 400 zurück, wenn keine URL gesetzt ist.