Genel Bakış
BlogProduce API, yayınladığınız blog yazılarını programatik olarak almanızı sağlar. REST API ile içerikleri uygulamanıza, sitenize veya otomasyon sistemlerinize entegre edebilirsiniz.
- İçerik teslimi: Yayınlanmış blog yazılarını REST API ile çekin
- Esnek sorgulama: Durum, dil veya slug ile filtreleme
- Zengin metadata: SEO verisi, etiketler, yazar bilgisi
- Güvenli erişim: API anahtarı ile kimlik doğrulama
https://api.blogproduce.comÖnerilen: /v1/api/blogHızlı Başlangıç
- 1Dashboard'a giriş yapın ve API Docs bölümünden çalışma alanınız için API anahtarı oluşturun.
- 2İsteklerde
Authorization: Bearer YOUR_API_KEYheader'ını kullanın. - 3Yayınlanmış yazıları listelemek için
GET /v1/api/blog?status=publishedendpoint'ini çağırın.
curl -X GET "https://api.blogproduce.com/v1/api/blog?status=published&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"Başarılı yanıt: { "success": true, "data": [...], "meta": { "next_cursor": "...", "has_more": true } }
Kimlik Doğrulama
API anahtarı çalışma alanına özeldir; ilgili çalışma alanındaki içeriklere erişim sağlar. Anahtar formatı: bg_<64-karakter-hex>
Önerilen: Bearer token
Authorization: Bearer bg_your_api_key_hereAlternatif: X-API-Key: bg_your_api_key_here header'ı da kullanılabilir. Anahtarı asla URL query parametresi olarak göndermeyin.
API Referansı
Blog listeleme
GET /v1/api/blog — Cursor tabanlı sayfalama (önerilen).
| Parametre | Tip | Açıklama |
|---|---|---|
| status | string | draft, generated, review, published |
| limit | number | Varsayılan 50, max 100 |
| cursor | string | Önceki yanıttan meta.next_cursor |
Tekil yazı (ID)
GET /v1/api/blog/:id — Tam içerik (HTML, markdown, SEO, TOC, FAQ).
Tekil yazı (slug)
GET /v1/api/blog/slug/:slug — Slug ile tam içerik.
Dashboard'taki API Docs sayfasında tüm endpoint detayları ve anahtar yönetimi bulunur.
Hata Yönetimi
Tüm hata yanıtları aynı yapıdadır:
{
"success": false,
"message": "Hata mesajı",
"error": "Detaylı açıklama"
}| Kod | Anlam | Açıklama |
|---|---|---|
| 200 | OK | Başarılı |
| 400 | Bad Request | Geçersiz parametre |
| 401 | Unauthorized | Eksik veya geçersiz API anahtarı |
| 404 | Not Found | Kaynak bulunamadı |
| 429 | Too Many Requests | Rate limit aşıldı |
| 500 | Internal Server Error | Sunucu hatası |
Limitler ve Kota
Planınıza göre dakikalık/günlük istek limitleri uygulanır. Yanıt header'larında limit bilgisi döner:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95
X-RateLimit-Reset: 1641024000Limit aşımında 429 Too Many Requests döner. Üstel geri çekilme (exponential backoff) ve önbellek kullanımı önerilir.
Kod Örnekleri
JavaScript (cursor ile sayfalama):
const API_BASE = 'https://api.blogproduce.com';
const API_KEY = process.env.BLOG_API_KEY;
async function listPosts(cursor = null) {
const params = new URLSearchParams({ status: 'published', limit: '50' });
if (cursor) params.append('cursor', cursor);
const res = await fetch(`${API_BASE}/v1/api/blog?${params}`, {
headers: { 'Authorization': `Bearer ${API_KEY}` }
});
const data = await res.json();
return { posts: data.data || [], meta: data.meta || {} };
}
// Tüm sayfaları çek
async function getAllPosts() {
const all = [];
let cursor = null;
let hasMore = true;
while (hasMore) {
const { posts, meta } = await listPosts(cursor);
all.push(...posts);
hasMore = meta.has_more ?? false;
cursor = meta.next_cursor;
if (!cursor && !hasMore) break;
}
return all;
}Destek
Teknik sorularınız veya entegrasyon desteği için iletişim sayfamızdan bize ulaşabilirsiniz. Dashboard içindeki API Docs sayfasında canlı örnekler ve API anahtar yönetimi bulunur.