EntwicklerÖFFENTLICHE CONTENT-API

Schlichtes REST und JSON. Geschlossen, bis Sie öffnen.

Die API-Konfiguration pro Website legt genau fest, was für wen freigegeben ist. Rufen Sie veröffentlichte Inhalte, Sitemaps und Weiterleitungen überall im selben vorhersehbaren JSON-Format ab – kein GraphQL-Schema zu lernen, kein generierter Client zu synchronisieren. Jede Anfrage unten ist echt: ein Blog auf CMSHub, aufgerufen mit nichts als curl.

01 / VERÖFFENTLICHTE INHALTE ABRUFEN

Eine GET-Anfrage, veröffentlichte Datensätze als JSON

Sobald eine Website zustimmt und eine Collection freigibt, sind ihre veröffentlichten Datensätze nur einen einfachen GET-Aufruf entfernt – vollständig über den Host-Header aufgelöst, ohne API-Schlüssel für öffentliche Daten.

  • Es werden ausschließlich VERÖFFENTLICHTE Datensätze zurückgegeben – Entwürfe und unveröffentlichte Revisionen gelangen nie über den öffentlichen Pfad nach außen.
  • Deny-by-default: Ein unbekannter Host, eine deaktivierte Website oder eine nicht freigegebene Collection liefern alle gleichermaßen 404.
  • ?locale=xx liefert die veröffentlichte Variante dieser Sprache, mit Rückfall auf die Standardsprache des Workspace.
GEThttps://the-signal.blog/api/posts
curl https://the-signal.blog/api/posts
RESPONSE
{
  "siteId": "the-signal-4f2a",
  "siteName": "The Signal",
  "baseUrl": "https://the-signal.blog",
  "collection": {
    "id": "3b0d6f2a-9c41-4e8a-8f2e-1d4c9a7b6e11",
    "slug": "posts",
    "name": "Posts"
  },
  "data": [
    {
      "id": "a91f2e3c-7d5b-4a10-9c3e-6f8a2b1d0e44",
      "locale": "en",
      "translationOfId": null,
      "data": {
        "title": "Shipping a public content API without a GraphQL schema",
        "slug": "shipping-a-public-content-api",
        "excerpt": "Plain REST beats a bespoke query language when a frontend just needs JSON.",
        "category": "Engineering",
        "author": "Dana Osei",
        "published_at": "2026-09-10"
      }
    },
    {
      "id": "d2c5b8a1-4e3f-4c9d-8b7a-2f1e6d5c4b33",
      "locale": "en",
      "translationOfId": null,
      "data": {
        "title": "What the quality gate actually checks before you publish",
        "slug": "the-quality-gate-explained",
        "excerpt": "Every generated page passes the same checks, whether it's post 1 or post 10,000.",
        "category": "Product",
        "author": "Dana Osei",
        "published_at": "2026-09-04"
      }
    }
  ],
  "meta": {
    "locale": "en",
    "pagination": { "start": 0, "limit": 20, "total": 2, "nextCursor": null }
  }
}
02 / AUFFINDBARKEIT, AUTOMATISCH

Eine Sitemap, die immer dem tatsächlich Veröffentlichten entspricht

sitemap.xml und robots.txt werden aus demselben Seitenbestand erzeugt, den auch die Content-API liest – keine separate Konfiguration zu synchronisieren, nichts von Hand neu zu erzeugen.

  • Spiegelt bei jeder Anfrage den Live-Seitenbestand wider – Seite veröffentlicht, schon steht sie in der Sitemap.
  • hreflang-Alternativen werden für jede Seite mit übersetzten Varianten automatisch ergänzt.
  • /robots.txt verweist Crawler pro Site auf genau diese Sitemap.
GEThttps://the-signal.blog/sitemap.xml
curl https://the-signal.blog/sitemap.xml
RESPONSE
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <url><loc>https://the-signal.blog/posts/shipping-a-public-content-api</loc><lastmod>2026-09-10T14:22:00.000Z</lastmod></url>
  <url><loc>https://the-signal.blog/posts/the-quality-gate-explained</loc><lastmod>2026-09-04T09:15:00.000Z</lastmod></url>
</urlset>
03 / STANDARDMÄSSIG GESCHLOSSEN

Sie entscheiden, was eine Website freigibt

Öffentliche Content-APIs bleiben geschlossen, bis Sie explizit festlegen, was eine Website freigibt – es gibt keinen standardmäßig offenen Endpunkt, der still unveröffentlichte Inhalte oder Entwürfe ausliefert.

Konfiguration pro Website

Aktivieren und konfigurieren Sie die öffentliche API für jede Website eines Workspace unabhängig.

Nur veröffentlichte Inhalte

Die öffentliche API liefert nur aus, was die Qualitätsprüfung durchlaufen hat und tatsächlich veröffentlicht ist – niemals Entwürfe.

Versioniert, stabil

Jede Route liegt unter einem versionierten Pfad – eine heute gebaute Integration funktioniert weiter, während sich CMSHub weiterentwickelt.

RUFEN SIE EINEN ECHTEN ENDPUNKT AUF

Aktivieren Sie die öffentliche API für eine Website.

Schalten Sie die öffentliche Content-API für eine Ihrer Websites ein und rufen Sie eine generierte Seite ab.