import { defineEventHandler, readBody, createError } from 'h3' export default defineEventHandler(async (event) => { const { message, recaptchaToken } = await readBody(event) if (!message?.trim()) { throw createError({ statusCode: 400, message: 'Mensaje vacĂ­o' }) } const config = useRuntimeConfig(event) const webhookUrl = config.public.feedbackWebhook const feedbackToken = config.feedbackToken if (!webhookUrl) { console.error('[feedback] Webhook URL no configurada') throw createError({ statusCode: 500, message: 'Webhook no configurado' }) } const headers: Record = { 'Content-Type': 'application/json' } if (feedbackToken) { headers['X-Feedback-Token'] = feedbackToken } try { const res = await $fetch(webhookUrl, { method: 'POST', headers, body: { message, recaptchaToken }, retry: 1, timeout: 10000 }) return { ok: true, data: res } } catch (e: any) { console.error('[feedback] Error al reenviar al webhook:', { url: webhookUrl, status: e?.response?.status, statusText: e?.response?.statusText, message: e?.message }) const statusCode = e?.response?.status || 502 const detail = e?.response?.statusText || e?.message || 'Error al reenviar el feedback' throw createError({ statusCode, message: detail }) } })