Blog API

Fetch published blog posts with rich content and metadata.

GET/api/public/blog

Returns published blog posts with pagination. Posts are returned newest first.

Query Parameters

localestring

Filter by locale.

limitnumber

Maximum posts to return (default 20, max 100).

offsetnumber

Pagination offset (default 0).

200Success
json
{
  "posts": [
    {
      "slug": "my-post",
      "locale": "fr",
      "title": "My First Post",
      "excerpt": "A brief excerpt...",
      "featuredImage": "https://...",
      "author": "John Doe",
      "publishedAt": "2025-01-15T12:00:00Z",
      "meta": { "title": "My First Post", "description": "A brief excerpt..." }
    }
  ],
  "total": 42,
  "hasMore": true
}

GET/api/public/blog/{slug}

Returns a single published blog post with its full content.

Query Parameters

localestring

Locale to fetch.

200Success
json
{
  "slug": "my-post",
  "locale": "fr",
  "title": "My First Post",
  "excerpt": "A brief excerpt...",
  "content": { ... },
  "featuredImage": "https://...",
  "author": "John Doe",
  "publishedAt": "2025-01-15T12:00:00Z",
  "meta": { "title": "My First Post", "description": "A brief excerpt..." }
}
404Not Found
json
{ "error": "Post not found" }