Ana içeriğe geç

Public Blog Yazilari

Yayindaki blog yazilarini listeleme ve slug ile detay getirme endpointleri.

Base URL: /api/public/blog/posts Yetkilendirme: X-Api-Key

bilgi

Controller AllowAnonymous olsa da tenant cozumleme icin X-Api-Key header'i gereklidir.


GET /

Yayindaki blog yazilarini filtreli ve sayfalanmis olarak listeler.

Query Parametreleri:

ParametreTipVarsayilanAciklama
pageint1Sayfa numarasi
pageSizeint10Sayfa basina kayit
categoryIdGuid-Kategori filtresi
tagIdGuid-Etiket filtresi
searchstring-Baslikta arama
langstring-Dil kodu filtresi

Headers:

X-Api-Key: customer-api-key

Response - 200 OK:

{
"success": true,
"data": {
"items": [
{
"id": "3fa85f64-...",
"coverImageUrl": "https://minio.example.com/covers/image.jpg",
"status": "Published",
"publishDate": "2026-04-01T10:00:00Z",
"createdAt": "2026-03-27T10:00:00Z",
"title": "Ilk Blog Yazisi",
"slug": "ilk-blog-yazisi"
}
],
"page": 1,
"pageSize": 10,
"totalCount": 1,
"totalPages": 1
}
}

GET /{slug}

Belirli bir blog yazisini slug ile getirir.

Query Parametreleri:

ParametreTipAciklama
langstringIstenen dil kodu

Response - 200 OK:

{
"success": true,
"data": {
"id": "3fa85f64-...",
"coverImageUrl": "https://minio.example.com/covers/image.jpg",
"status": "Published",
"publishDate": "2026-04-01T10:00:00Z",
"createdAt": "2026-03-27T10:00:00Z",
"updatedAt": "2026-03-28T14:00:00Z",
"translations": [
{
"languageId": "9cd14a82-...",
"languageCode": "tr",
"title": "Ilk Blog Yazisi",
"content": "<p>Icerik...</p>",
"slug": "ilk-blog-yazisi",
"metaTitle": "Ilk Blog Yazisi | Kompanse",
"metaDescription": "Aciklama"
}
],
"categories": [],
"tags": []
}
}