Blogs
Bloqların siyahısını və tək bloqun detalını qaytarır. Yalnız yayımlanmış (is_published=True) bloqlar qayıdır.
List
Əlaqəli endpoint: Blog-List Swagger
GET /api/v1/blog/blogs/
Filtrlər
| key | məlumat |
|---|---|
category |
Bloq kateqoriyasının id-si |
author |
Müəllifin id-si |
blog_type |
Bloq tipinin id-si |
tags |
Taqın id-si. Bir neçə taq üçün parametr təkrarlana bilər (?tags=1&tags=2) |
publish_date |
Yayımlanma tarixi, YYYY-MM-DD formatında |
attr_{key} |
Atribut üzrə filtr. {key} atributun key-idir (məs. attr_reading_time). Vergüllə bir neçə dəyər verilə bilər (attr_reading_time=5,10 → 5 və ya 10) |
page |
Səhifə nömrəsi (default 1) |
page_size |
Səhifədəki element sayı (default 10, maksimum 100) |
Atributların mümkün key-ləri və dəyərləri Attributes endpointindən alınır. attr_* filtrləri aktiv dilə (Accept-Language) görə uyğunlaşdırılır.
Nümunə: GET /api/v1/blog/blogs/?category=1&tags=2&attr_reading_time=5,10&page_size=20
Response
HTTP STATUS code 200
{
"next": null,
"previous": null,
"count": 1,
"current": 1,
"page_size": 10,
"results": [
{
"id": 12,
"name": "Yeni texnologiyalar",
"slug": "yeni-texnologiyalar",
"content": "Qısa kontent...",
"publish_date": "2026-06-01",
"image": "/media/blogs/cover.jpg",
"detail_url": "/xeberler/yeni-texnologiyalar"
}
]
}
results arrayindəki blog obyekti:
| key | məlumat | çoxdil |
|---|---|---|
id |
Bloqun identifikatoru | - |
name |
Bloqun adı (başlığı) | Var |
slug |
Detal endpointində istifadə olunan slug | Var |
content |
Bloqun kontenti | Var |
publish_date |
Yayımlanma tarixi (YYYY-MM-DD), təyin olunmayıbsa null |
- |
image |
Bloqun şəkli, yoxdursa null |
- |
detail_url |
Bloqun sayt daxilindəki yolu (/{page_slug}/{slug}) |
- |
Detail
Əlaqəli endpoint: Blog-Detail Swagger
GET /api/v1/blog/blogs/{slug}/
{slug} aktiv dildən asılı olmayaraq bloqun istənilən dildəki slug-ı ilə uyğunlaşdırılır. Uyğun (və yayımlanmış) bloq tapılmasa 404 qayıdır.
Response
HTTP STATUS code 200
{
"id": 12,
"name": "Yeni texnologiyalar",
"slug": "yeni-texnologiyalar",
"content": "Tam kontent mətni...",
"tags": [
{ "id": 2, "name": "AI", "slug": "ai" }
],
"category": { "id": 3, "name": "Texnologiya", "parent": 1 },
"author": {
"id": 5,
"name": "Əli Məmmədov",
"author_type": 1,
"author_attr_values": [
{
"id": 9,
"attr": { "id": 4, "key": "position", "type": "text" },
"value": "Redaktor",
"file_value": null
}
]
},
"publish_date": "2026-06-01",
"image": "/media/blogs/cover.jpg",
"attributes": {
"reading_time": { "value": "5", "file_value": null, "type": "number" }
}
}
List cavabındakı detail_url əvəzinə əlavə olaraq aşağıdakı sahələr qayıdır:
| key | məlumat | çoxdil |
|---|---|---|
tags |
Bloqun taqları arrayi (id, name, slug) |
Var |
category |
Bloqun kateqoriyası (id, name, parent) |
- |
author |
Bloqun müəllifi (aşağıya bax). Müəllif yoxdursa null |
- |
attributes |
Bloqun atributları. Açar atributun key-idir, dəyəri isə atribut obyektidir | Var |
author obyekti:
| key | məlumat | çoxdil |
|---|---|---|
id |
Müəllifin identifikatoru | - |
name |
Müəllifin adı | - |
author_type |
Müəllif tipinin id-si |
- |
author_attr_values |
Müəllifin atribut dəyərləri arrayi (attr, value, file_value) |
- |
attributes obyektindəki hər atribut:
| key | məlumat | çoxdil |
|---|---|---|
value |
Atributun dəyəri. Tipdən asılı olaraq sadə dəyər və ya boş ola bilər | Var |
file_value |
file/image tipli atributlarda fayl URL-i, əks halda null |
- |
type |
Atributun tipi (aşağıdakı siyahıya bax) | - |
type siyahısı:
textnumberbooleandatetimedatetimefileimagelistrich_textlong_text