Ana içeriğe geç

Blog Etiketleri

Blog etiketlerinin CRUD islemleri. Etiketler coklu dil destegiyle calisir.

Base URL: /api/tenant/blog/tags Yetkilendirme: Bearer Token + X-Api-Key Modul: Blog modulu musteriye atanmis olmalidir.

Headers:

Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
X-Api-Key: customer-api-key

POST /

Yeni etiket olusturur.

Request Body:

{
"isActive": true,
"translations": [
{
"languageId": "9cd14a82-...",
"name": "Yazilim",
"slug": "yazilim"
},
{
"languageId": "7ba92e31-...",
"name": "Software",
"slug": "software"
}
]
}
AlanTipZorunluAciklama
isActivebooleanEvetAktiflik durumu
translationsTagTranslationRequest[]EvetDil cevirileri

TagTranslationRequest

AlanTipZorunluAciklama
languageIdGuidEvetDil ID
namestringEvetEtiket adi
slugstringHayirURL slug

Response - 201 Created:

{
"success": true,
"data": {
"id": "3fa85f64-...",
"isActive": true,
"createdAt": "2026-03-27T10:00:00Z",
"translations": [
{
"languageId": "9cd14a82-...",
"languageCode": "tr",
"name": "Yazilim",
"slug": "yazilim"
}
]
}
}

GET /

Tum etiketleri listeler.

Response - 200 OK:

{
"success": true,
"data": [
{
"id": "3fa85f64-...",
"isActive": true,
"createdAt": "2026-03-27T10:00:00Z",
"translations": [
{
"languageId": "9cd14a82-...",
"languageCode": "tr",
"name": "Yazilim",
"slug": "yazilim"
}
]
}
]
}

GET /{id}

Belirli bir etiketi getirir.

Response - 200 OK:

{
"success": true,
"data": {
"id": "3fa85f64-...",
"isActive": true,
"createdAt": "2026-03-27T10:00:00Z",
"translations": [
{
"languageId": "9cd14a82-...",
"languageCode": "tr",
"name": "Yazilim",
"slug": "yazilim"
}
]
}
}

PUT /{id}

Etiketi gunceller.

Request Body: CreateTagRequest ile ayni yapidadir.

Response - 200 OK: TagResponse objesi doner.


DELETE /{id}

Etiketi siler (soft delete).

Response - 204 No Content

Olası Hatalar

KodDurum
401Token eksik veya geçersiz
403Tenant kullanıcısı yetkisi yok veya blog modül erişimi yok
404Etiket bulunamadı
409Slug çakışması veya ilişkili veri çakışması
400Geçersiz request body