Blesyum Core

site

24 uç · /api/v1/site

İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 24 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.

GET/api/v1/site/bootstrap

Bootstrap

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/bootstrap" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/campaigns

Kampanyalar

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/campaigns" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/v1/site/consent

Çerez rızasının KANITINI yazar.

Oturum

Rızayı yalnız tarayıcıda tutmak, "kim ne zaman neyi kabul etti" sorusunu cevapsız bırakır — GDPR-01'in birebir aynı dersi.

İstek
curl -X POST "https://api.blesyum.com/api/v1/site/consent" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/csp

Sitenin CSP **şablonunu** üretir — açık piksellerden.

Oturum

# Neden şablon, neden nonce burada basılmıyor Nonce her istekte DEĞİŞİR; CSP'yi nonce'la birlikte döndüren bir uç, Next middleware'ini her gezinmede bir loopback alt-isteğe mahkûm ederdi. Şablon ise sağlayıcı listesi değişene kadar SABİTTİR: Next onu `revalidate` ile önbellekler ve `{nonce}` yer tutucusunu kendi üretir. Yer tutucu adı bir SÖZLEŞMEDİR: istemci `{nonce}` arar. Değiştirirsen CSP nonce'suz kalır ve Next'in kendi satır-içi script'leri engellenir — sayfa bembeyaz açılır ve sebebi yalnız konsolda görünür.

İstek
curl -X GET "https://api.blesyum.com/api/v1/site/csp" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/v1/site/csp-report

CSP ihlal toplayıcısı.

Oturum

Politika önce **Report-Only** koşar; buraya düşen kayıtlar sıfırlanınca zorlayıcı moda geçilir. Toplayıcı olmadan "enforce" etmek, siteyi tanımadığın bir ihlalle kırmaktır.

İstek
curl -X POST "https://api.blesyum.com/api/v1/site/csp-report" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/faq

Sss

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/faq" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/form/{key}

Form

OturumYol parametresi: key
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/form/<key>" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/v1/site/form/{key}

Form gönderimi — Turnstile + honeypot + İKİ kovalı hız sınırı.

OturumYol parametresi: key

⚠ Bot dolduran formda sessizce BAŞARILI dönülür: botun hangi alanın onu yakaladığını öğrenmesi, honeypot'u bir sonraki denemede işe yaramaz kılar.

İstek
curl -X POST "https://api.blesyum.com/api/v1/site/form/<key>" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
POST/api/v1/site/form/career/cv

Özgeçmiş yüklemesi — yalnız PDF.

Oturum

🔴 `.docx`/`.doc` KABUL EDİLMEZ: makro taşıyan bir ofis belgesini kovaya alıp İK'ya açtırmak, kendi ekibimize saldırı yüzeyi açmaktır. PDF de risksiz değildir ama `validate_upload` türü SİHİRLİ BAYTLA doğrular (istemcinin `Content-Type`'ıyla değil) ve dosya sunucunun ürettiği anahtarla saklanır.

İstek
curl -X POST "https://api.blesyum.com/api/v1/site/form/career/cv" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/job/{slug}

Ilan

OturumYol parametresi: slug
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/job/<slug>" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/jobs

Ilanlar

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/jobs" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/page

Sayfa

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/page" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/policies

Politikalar

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/policies" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/post/{slug}

Yazi

OturumYol parametresi: slug
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/post/<slug>" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/posts

Yazilar

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/posts" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/preview

Taslak önizleme — **imzalı ve 15 dakikalık**.

Oturum

⚠ Yanıt `no-store` + `noindex` taşımak zorunda; istemci bunu uygular. Önbelleklenebilir bir taslak, arama motoruna düşen bir taslaktır.

İstek
curl -X GET "https://api.blesyum.com/api/v1/site/preview" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/product/{slug}

Urun

OturumYol parametresi: slug
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/product/<slug>" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/products

Urunler

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/products" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/redirects

Etkin yönlendirmeler — Next middleware'i TTL'li önbellekle okur.

Oturum

⚠ Liste PUBLIC'tir ve olmalı: içinde sır yok, yalnız "hangi eski adres nereye gidiyor" bilgisi var — ve o bilgi zaten HTTP yanıtından okunabilir.

İstek
curl -X GET "https://api.blesyum.com/api/v1/site/redirects" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/references

Referanslar

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/references" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/routes

Sitemap'in okuduğu uç: yayınlanmış her varlığın kaynak yolu + son değişiklik.

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/routes" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/team

Ekip

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/team" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
GET/api/v1/site/testimonials

Gorusler

Oturum
İstek
curl -X GET "https://api.blesyum.com/api/v1/site/testimonials" \
  -H "Authorization: Bearer <oturum-token>" \
  -H "Accept: application/json"
Yanıt
{
  "data": "…",
  "trace_id": "01JC…"
}
Bu sayfa işine yaradı mı?