Eklenti & versiyon yönetimi
Eklentini oluştur, semver ile versiyonla; her sürüm kendi inceleme akışından geçer.
Hesap aç, eklentini oluştur, manifest’ini gir, incelemeye gönder ve onaylanınca marketplace’te yayınla. Credential’ını al, webhook teslimatlarını canlı izle — uçtan uca, hiçbir Restomenum çalışanına ihtiyaç duymadan.
Ücretsiz hesap · imzalı webhook · sandbox test event
// Tek uç: hem event hem lifecycle. İmza doğrula → idempotent işle.
app.post('/webhook', express.raw({ type: '*/*' }), (req, res) => {
const sig = req.get('X-Restomenum-Signature'); // t=<sec>,v1=<hmac>
if (!verifyHmac(webhookSecret, req.body, sig)) return res.sendStatus(401);
const e = JSON.parse(req.body.toString('utf8'));
if (seen(e.id)) return res.sendStatus(200); // retry → dedup
enqueue(e); // ağır işi async yap
res.sendStatus(200); // hızlı 200
});Eklentini oluşturmaktan yayınlamaya ve izlemeye kadar her şey burada.
Eklentini oluştur, semver ile versiyonla; her sürüm kendi inceleme akışından geçer.
Event, scope, webhook, connectUrl ve Custom UI sayfalarını gör; gönderemeden önce anında doğrula.
client_secret üret/rotate et — plaintext yalnızca bir kez, geri kalan her yerde sha256 hash.
İncelemeye gönder, yönetici onayıyla marketplace’te yayınlan — uçtan uca kendin yönet.
İmzalı (HMAC) teslimat, Cloud Tasks retry; test event gönder, teslim loglarını izle.
Abonelik fiyatını belirle, kurulum metriğini ve kazançlarını panelden takip et.
Süreci sen yönetirsin; biz altyapıyı.
Saniyeler içinde geliştirici hesabı oluştur.
Ad, slug, kategori ve ikonla taslağını başlat.
Scope, event, webhook ve connectUrl’i tanımla, doğrula.
Otomatik kontroller + yönetici incelemesi.
Onaylanan sürüm marketplace’te yayınlanır.
client_secret al, delivery loglarını canlı izle.
// Tek uç: hem event hem lifecycle. İmza doğrula → idempotent işle.
app.post('/webhook', express.raw({ type: '*/*' }), (req, res) => {
const sig = req.get('X-Restomenum-Signature'); // t=<sec>,v1=<hmac>
if (!verifyHmac(webhookSecret, req.body, sig)) return res.sendStatus(401);
const e = JSON.parse(req.body.toString('utf8'));
if (seen(e.id)) return res.sendStatus(200); // retry → dedup
enqueue(e); // ağır işi async yap
res.sendStatus(200); // hızlı 200
});Birkaç dakikada hesabını oluştur, ilk eklentini taslağa başla.