Documentation Index
Fetch the complete documentation index at: https://docs.jelou.ai/llms.txt
Use this file to discover all available pages before exploring further.
Quando usar
Use config: { public: true } quando o chamador não pode enviar X-Jelou-Token:
- Webhooks de serviços externos (Stripe, GitHub, Twilio)
- Callbacks de gateways de pagamento
- APIs públicas acessíveis do navegador
No modo define()
export default define({
description: "Webhook do Stripe",
input: z.object({ type: z.string() }),
config: { public: true, methods: ["POST"], mcp: false },
handler: async (input, ctx) => {
return { received: true };
},
});
export default app({
tools: {
webhook: define({
config: { public: true, mcp: false },
handler: async () => ({ ok: true }),
}),
admin: define({
// protegido por padrão
handler: async () => ({ ok: true }),
}),
},
});
Segurança: validar webhooks
Com funções públicas, a plataforma não valida nada. Seu código é responsável:
handler: async (input, ctx, request) => {
const signature = request.headers.get("x-webhook-signature");
const secret = ctx.env.get("WEBHOOK_SECRET");
// verificar HMAC-SHA256...
}
Nunca confie em uma função pública sem validar a assinatura.