Kullanım ve API referansı
NodusAPI için kısa referans. Tam API, dashboard'da giriş yaptıktan sonra kullanılabilir.
Dokümantasyonu görüntüle
NodusAPI'nin nasıl kullanıldığını bu kısa videoda izleyin.
Kimlik doğrulama
- API Key (X-API-Key header). Kullanıcı başına bir anahtar, tüm projelerde geçerli. Path'te proje slug kullan: /api/v1/projectSlug/...
- Bearer JWT. Dashboard tarafından kullanılır. Proje bağlamı token'da.
Ana endpoint'ler
- GET /health — Sağlık kontrolü.
- Auth (Google giriş, /auth/me).
- Projeler (CRUD, geçiş).
- Şemalar (tablolar, kolonlar).
- Veri (tablo başına CRUD).
- Özel endpoint'ler (fn/:slug). JavaScript yazın, request ve db kullanın.
Özel endpoint'ler
Dashboard'da özel endpoint ekleyebilirsiniz: request (body, query, method, headers) ve db (query, get, insert, update, delete) erişimi olan JavaScript yazarsınız. Yanıt, döndürdüğünüz değerdir.
Aşağıdaki örnekler products tablo slug'ını kullanıyor. Kendi tablo slug'ınızla (Tablolar sayfasından) değiştirin.
Request
request.body — POST/PUT için parse edilmiş JSON.request.query — URL query parametreleri (örn. ?id=123).request.method — GET, POST, PUT, DELETE.request.headers — istek başlıkları.
Veritabanı (db)
db.query(tableSlug, options) — satırları listele (options: page, limit, orderBy, orderDir, filters).db.get(tableSlug, id) — id ile tek satır getir.db.insert(tableSlug, data) — satır oluştur.db.update(tableSlug, id, data) — satır güncelle.db.delete(tableSlug, id) — satır sil.
Örnekler
Basit dönüş
Sabit bir nesne döndürün.
return { message: 'Hello' };Query parametrelerini yansıt
URL query string'ini JSON olarak döndürün.
return { query: request.query };Request body'yi yansıt
Request body'yi döndürün (POST/PUT).
return { received: request.body };Tablo satırlarını listele
Tablodan sayfalanmış liste (örn. products).
const rows = await db.query('products', { page: 1, limit: 20 });
return { data: rows };Id ile tek satır getir
Id'yi query'den okuyun, db.get ile satırı getirin.
const id = request.query.id;
if (!id) return { error: 'id required' };
return await db.get('products', id);Body'den satır oluştur
request.body'yi tabloya ekleyin.
const row = await db.insert('products', request.body);
return { data: row };Id ile satır güncelle
Id'yi query'den okuyun, request.body ile güncelleyin.
const id = request.query.id;
if (!id) return { error: 'id required' };
return await db.update('products', id, request.body);Projeleri yönet, API anahtarını al, tam dokümantasyonu dashboard'da gör.