JJourney AI

API

Sitelerin içerik okumak ve form göndermek için kullandığı, kimlik doğrulaması gerektirmeyen herkese açık API.

Son güncelleme: 14 Ekim 20264 dk okuma

Bu sayfada API'nin yanıt zarfını, uç listesini ve örnek istekleri öğreneceksin.

API herkese açıktır; siteler içeriği buradan okur. Kimlik doğrulaması istemez. Tüm yollar /api/v1 ile başlar. Panelin kullandığı yönetim API'si ayrıdır, oturum ister ve bu belgenin kapsamı dışındadır.

Aşağıdaki örneklerde https://api.example.com yer tutucusunu kendi CMS adresinle değiştir.

Yanıt zarfı

Her yanıt aynı zarfla gelir. İçerik data alanındadır.

Yanıt zarfı
{
  "data": { },
  "errorCode": 0,
  "errorMessage": "",
  "errorId": null,
  "requestId": "…",
  "hasError": false
}
AlanAnlamı
dataAsıl içerik. Hata durumunda boş olabilir.
hasErrortrue ise istek başarısızdır. Önce bu alana bak.
errorCode0 başarılıdır. Diğer değerler alan koduna özgüdür, HTTP durum kodu değildir.
errorMessageKullanıcıya gösterilebilecek hata metni.
errorIdHata takibindeki kayıt kimliği. Destek isterken paylaş.
requestIdİsteğin kimliği.

Her uç grubunun kendi hız sınırı vardır. Sınıra takılan istek HTTP 429 ve bir Retry-After başlığı alır. Bu başlığa uy ve isteği sonra yinele.

Uçlar

YöntemYolNe döner
GET/page/detail/{dil}?path=Sayfa, SEO, şemalar, varlıklar ve bileşen ağacı
GET/page/menu/{dil}Menü ağacı
GET/page/sitemap-pages/{dil}?path=Sitemap için sayfa ağacı
GET/page/get-page-language-variants/{uniqueName}Sayfanın diğer dillerdeki karşılıkları (hreflang ve dil seçici için)
GET/page/search?searchKey=&languageId=&path=Site içi arama sonuçları
GET/page/public-revisionYayındaki içeriğin parmak izi
GET/redirect/all/{dil}Yönlendirme listesi
GET/template/detail/{id}Şablon ve bileşenleri
GET/template/listŞablon listesi
GET/language/listDiller: kod, locale, URL öneki, varsayılan
GET/parameter/listYalnızca herkese açık parametreler
GET/page-list/component-data/{tanımId}Bir listenin yayındaki girdileri
GET/form/captcha-configCaptcha sağlayıcısı ve site anahtarı
POST/form/submit/{componentId}Form gönderimi
POST/form/upload/{componentId}Form dosya yüklemesi
GET/healthSağlık kontrolü (/api/v1 önekinin dışında)

{dil} dil kodudur, örneğin tr veya en.

Sayfa detayı

Terminal
curl "https://api.example.com/api/v1/page/detail/tr?path=kurumsal/hakkimizda"

Ana sayfa için path değerine sitenin ana sayfa slug'ını ver. Site şablonunda bu HOME_SLUG sabitidir. Yanıtın yapısı Sayfa JSON'u sayfasında anlatılıyor.

Sayfa bulunamazsa zarf hasError: true ile döner. Site bu durumda 404 gösterir.

Menü ve sitemap

Terminal
curl "https://api.example.com/api/v1/page/menu/tr"
curl "https://api.example.com/api/v1/page/sitemap-pages/tr?path="

İki uç da düz liste değil, ağaç döner. Alt sayfalar children altında gelir. Bağlantılar için API'nin döndürdüğü href alanını kullan. URL'leri path alanından elle kurma.

Dil varyantları ve diller

Terminal
curl "https://api.example.com/api/v1/language/list"
curl "https://api.example.com/api/v1/page/get-page-language-variants/{uniqueName}"

html lang, og:locale ve URL öneki dil kaydındaki locale ve basePath alanlarından alınır. Dil kodundan yerel ayar türetme.

Arama

Terminal
curl "https://api.example.com/api/v1/page/search?searchKey=iletisim&languageId=tr"

searchKey en az 3, en fazla 100 karakter olmalıdır. Aksi durumda zarf hata döner.

Yayın parmak izi

Terminal
curl "https://api.example.com/api/v1/page/public-revision"

data alanı yayındaki içeriği temsil eden bir metindir. Değer değiştiyse yayındaki içerik değişmiştir. Bir site bu değeri izleyip kendi önbelleğini düşürebilir.

Şablon ve parametreler

Terminal
curl "https://api.example.com/api/v1/template/detail/0"
curl "https://api.example.com/api/v1/parameter/list"

0 kimliği istenen dilin varsayılan şablonunu getirir. Parametre listesi yalnızca herkese açık değerleri içerir: kurum bilgileri, site metinleri, robots ayarları ve doğrulama kodları gibi.

Formlar

Terminal
curl "https://api.example.com/api/v1/form/captcha-config"

curl -X POST "https://api.example.com/api/v1/form/submit/42" \
  -H "Content-Type: application/json" \
  -d '{
    "formData": { "Ad Soyad": "Ada Yılmaz", "E-posta": "[email protected]" },
    "languageId": "tr",
    "pagePath": "iletisim",
    "pageId": 123
  }'

42 sayfadaki form bileşeninin kimliğidir. Akışın tamamı Formlar sayfasında.

Sağlık kontrolü

Terminal
curl "https://api.example.com/health"

İlgili sayfalar

Bu sayfada