FeedWave API'ye Hoş Geldiniz
FeedWave, Supabase altyapısı üzerine kurulmuştur. RESTful API ve Realtime özellikleri ile uygulamalarınızı kolayca entegre edebilirsiniz.
Authentication
JWT tabanlı güvenli kimlik doğrulama
Realtime
WebSocket ile anlık güncellemeler
Row Level Security
Veritabanı seviyesinde güvenlik
Kimlik Doğrulama
API isteklerinde iki header gereklidir:
# Her istekte gerekli headerlar
apikey: YOUR_ANON_KEY
Authorization: Bearer YOUR_ACCESS_TOKEN
⚠️ Önemli: Anon key'inizi client-side kodlarda kullanabilirsiniz, ancak service_role key'i asla açığa çıkarmamalısınız.
API Endpoints
| Method | Endpoint | Açıklama |
|---|---|---|
| GET | /rest/v1/posts | Tüm gönderileri listele |
| GET | /rest/v1/posts?id=eq.{id} | Belirli bir gönderiyi getir |
| POST | /rest/v1/posts | Yeni gönderi oluştur |
| GET | /rest/v1/profiles | Kullanıcı profillerini listele |
| GET | /rest/v1/comments | Yorumları listele |
| POST | /rest/v1/likes | Gönderi beğen |
| GET | /rest/v1/follows | Takip ilişkilerini listele |
Kod Örnekleri
import { createClient } from '@supabase/supabase-js'
const supabase = createClient(
'YOUR_SUPABASE_URL',
'YOUR_ANON_KEY'
)
// Gönderileri getir
const { data: posts, error } = await supabase
.from('posts')
.select('*, author:profiles(*)')
.eq('is_deleted', false)
.order('created_at', { ascending: false })
.limit(20)
// Yeni gönderi oluştur
const { data, error } = await supabase
.from('posts')
.insert({
content: 'Merhaba FeedWave! 👋',
user_id: user.id
})
.select()
.single()⚡ Rate Limits
Standart Limitler
- • 100 istek/dakika (anonim)
- • 1000 istek/dakika (authenticated)
- • 10MB maksimum payload boyutu
- • 50MB maksimum dosya yükleme
Response Headers
- X-RateLimit-Limit
- X-RateLimit-Remaining
- X-RateLimit-Reset