Platform API'leri: dosya, e-posta, webhook, AI
devany.files, devany.mail, devany.hook ve devany.ai — kapılar, kotalar ve hata kodları.
SDK yüzeyi
Görsel yükleme (devany.files)
// Dosya seçici <input type="file" accept="image/*"> — mobilde kamerayı da açar.
const file = input.files[0];
const { url } = await devany.files.upload(file); // SDK istemcide küçültür
// Kayıtta yalnız URL saklanır — asla base64 gömme (doküman 20K karakter).
await devany.db.put('boats', { name, price, photo: url });
await devany.files.remove(url); // kayıt silinince görseli de sil
const { used, quota } = await devany.files.usage();Yükleme başarısız olabilir: 'file_too_large' ve 'quota_exceeded' kodlarını kullanıcının dilinde bir mesaja çevir ve görselsiz bir yedek görünüm bırak.
İşlemsel e-posta ve webhook
// Tek alıcılı işlemsel e-posta — rezervasyon onayı, sipariş bildirimi.
try {
await devany.mail.send({
to: booking.email,
subject: 'Randevunuz onaylandı',
text: `${booking.name}, randevunuz ${booking.at} için alındı.`,
});
} catch (e) {
if (e.message === 'mail_disabled') showNote('E-posta kapalı');
else if (e.message === 'test_mode_owner_only') showNote('Taslakta yalnız sahibe gider');
}
// Alan olayını sahibin otomasyonuna (Zapier/Make/n8n) ilet.
await devany.hook.send('booking.created', { id: booking.id, at: booking.at });Taslak uygulamada e-postalar TEST modundadır: yalnız sahibin adresine, [TEST] önekiyle gider. Kota ve ücretlendirme sunucudadır.
Uygulama içi zekâ (devany.ai)
// Metin — kısa, yapılandırılmış çıktı iste; sohbet dökümü değil.
const summary = await devany.ai.ask(
'Bu ayın randevularını 3 maddede özetle: ' + JSON.stringify(rows).slice(0, 4000),
{ system: 'Kısa, sayısal ve iddiasız yaz.' }
);
// Görsel yorumlama ve üretme
const alt = await devany.ai.see(photoUrl, 'Bu üründe ne var?');
const hero = await devany.ai.image('Minimal, sıcak beyaz arka planlı ürün fotoğrafı');Kapalıyken çağrı 'ai_disabled' fırlatır — özelliği gizle ya da kibarca devre dışı bırak, çöken bir ekran gösterme.
Kapı, kota ve maliyet
| Sahip açmalı | Krediden düşer | Taslakta çalışır | |
|---|---|---|---|
| devany.db / devany.user | |||
| devany.files | |||
| devany.mail | Yalnız sahibe | ||
| devany.hook | |||
| devany.ai |
Özet
- Veri ve dosya her zaman açıktır; e-posta, webhook ve AI sahibin anahtarına bağlıdır.
- Kapalı bir yetenek çökmez — kodla yakalanacak bir hata kodu fırlatır.
- Görsel kayda değil dosya deposuna gider; kayıtta yalnız URL durur.
İlgili konular
Paylaşımlı koleksiyonlar ile kullanıcıya özel depo — aynı şekil, farklı kapsam.
Uygulamalar birbirinden ve platformdan nasıl yalıtılır?
Sağlam bir uygulamayı ayakta tutan kalıplar: mobil, durum yönetimi, hata toleransı, maliyet.
Hâlâ takıldın mı? Köşedeki asistana sor ya da SSS'ye göz at.