JSON‑API

Öffentlicher, lesender Zugriff auf veröffentlichte Beiträge. Rate‑Limit: 60 Requests/Minute, ETag/304 unterstützt.

Übersicht

Filter & Parameter

Unterstützte Query‑Parameter (kombinierbar):

Beispiele

Liste abrufen

curl -s 'https://www.wissenschaft-trifft-kommune.de/api/posts'

Suche und Filter

curl -s 'https://www.wissenschaft-trifft-kommune.de/api/posts?q=bachelor&category=thesis&regions[]=dessau-rosslau'

Detail (Slug)

curl -s 'https://www.wissenschaft-trifft-kommune.de/api/posts/slug/BEISPIEL-SLUG'

Detail (ID)

curl -s 'https://www.wissenschaft-trifft-kommune.de/api/posts/123'

ETag / 304 (Caching)

Die API liefert einen ETag. Clients können diesen wiederverwenden, um Bandbreite zu sparen.

# 1) Erste Abfrage – ETag extrahieren
ETAG=$(curl -is 'https://www.wissenschaft-trifft-kommune.de/api/posts' | awk '/^ETag:/ {print $2}' | tr -d '\r')

# 2) Mit If-None-Match erneut anfragen → 304, wenn unverändert
curl -i -H "If-None-Match: $ETAG" 'https://www.wissenschaft-trifft-kommune.de/api/posts'

Antwortstruktur (Auszug)

{
  "data": [
    {
      "id": 123,
      "slug": "beispiel-slug",
      "title": "Beitragstitel",
      "description": "Kurzbeschreibung …",
      "category": "project",
      "regions": ["dessau-rosslau"],
      "subject_areas": ["digitalisierung"],
      "target_groups": ["students"],
      "published_at": "2025-08-01T10:00:00Z",
      "expires_at": "2025-11-01"
    }
  ],
  "links": { "first": "...", "last": "...", "prev": null, "next": "..." },
  "meta": { "current_page": 1, "last_page": 10, "per_page": 15, "total": 150 }
}

Limits & Sicherheit

Fragen oder Feedback? Bitte Kontakt über die Website.