Geliştiriciler
API genel bakış
API token’larıyla kimlik doğrulaması yapılan tek bir JSON-RPC uç noktası. İstediğin metodu adıyla çağır.
Kod yazmaya gerek yok mu?
Kılavuzlar formbase’i Zapier’de API’yi kendin çağırmadan tıklama tıklama kurar.
Uç Nokta
Tüm istekler tek bir URL’ye POST ile gönderilir. Metot adını ve parametreleri JSON olarak ilet.
Kimlik Doğrulama
API token’ını Authorization başlığında bearer token olarak ilet. Token’lar bir çalışma alanıyla ilişkilidir — kenar
çubuğundaki OAuth ve API Anahtarları bölümünden oluşturabilirsin.
curl -X POST https://api.formbase.so/api/v1 \
-H "Authorization: Bearer fb_..." \
-H "Content-Type: application/json" \
-d '{"method": "forms.list", "params": {}}'const res = await fetch('https://api.formbase.so/api/v1', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.FORMBASE_TOKEN}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ method: 'forms.list', params: {} }),
})
const data = await res.json()import os, requests
res = requests.post(
"https://api.formbase.so/api/v1",
headers={"Authorization": f"Bearer {os.environ['FORMBASE_TOKEN']}"},
json={"method": "forms.list", "params": {}},
)
data = res.json()Token’ları sunucu tarafında tut
Token’ları asla tarayıcı koduna yerleştirme. İstemci taraflı çağrılar için bir backend proxy kullan.
İstek formatı
Her istek iki alanlı bir JSON nesnesidir:
{
"method": "forms.list",
"params": {
"workspaceId": "abc123..."
}
}Yanıt formatı
Her yanıt, ok alanı içeren bir JSON nesnesidir. Başarılı durumda:
{
"ok": true,
"data": { ... }
}Hatalar
Hata durumunda ok değeri false olur ve error nesnesi makine tarafından okunabilir bir kod ile
kullanıcı dostu bir mesaj içerir:
{
"ok": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Field 'name' is required."
}
}Yaygın hata kodları:
VALIDATION_ERROR(400) — geçersiz veya eksik parametrelerUNAUTHORIZED(401) — eksik veya geçersiz API token’ıUPGRADE_REQUIRED(402) — bu özellik daha yüksek bir abonelik katmanı gerektirirFORBIDDEN(403) — token’ın kaynağa erişim yetkisi yokCONFLICT(409) — kaynak durum çakışması, örneğin yinelenen bir adNOT_FOUND(404) — kaynak mevcut değilMETHOD_NOT_FOUND(404) — bilinmeyen metot adıRATE_LIMITED(429) — çok fazla istek gönderildiINTERNAL_ERROR(500) — beklenmeyen sunucu hatası
Hız sınırları
API istekleri token başına dakikada 120 istekle sınırlıdır. Sınırı aşmak 429 Too Many Requests döndürür.