API de backend de formularios: reciba envíos de formularios sin un servidor
Una API de backend de formularios elimina la necesidad de código del lado del servidor para manejar los envíos de formularios. En lugar de escribir scripts PHP, rutas Node.js o funciones sin servidor, apunta su formulario HTML a un endpoint alojado que recibe, valida y entrega los datos.
Esta guía explica cómo funcionan las API de backend y cómo integrarlas con cualquier sitio web o aplicación.
Cómo funciona una API de backend de formularios
El flujo es simple:
- Your HTML form has an
actionattribute pointing to the form backend URL - El formulario incluye una clave de acceso público para identificar su formulario
- Cuando se envía, el navegador envía una solicitud POST al endpoint
- El servicio valida los datos, ejecuta comprobaciones antispam y entrega el envío
Browser → POST /submit → Form Backend → Email / Webhook / Sheets / SlackIntegración básica
Formulario HTML estándar
<form action="https://api.formsfort.com/submit" method="POST"> <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" /> <input type="email" name="email" required /> <textarea name="message" required></textarea> <button type="submit">Send</button></form>El navegador se encarga de todo. No se requiere JavaScript.
Envío AJAX
para aplicaciones de una sola página o una experiencia de usuario más fluida:
const response = await fetch("https://api.formsfort.com/submit", { method: "POST", body: new FormData(formElement),});
if (response.ok) { console.log("Submission received");}Envío JSON
Para aplicaciones API-first:
const response = await fetch("https://api.formsfort.com/submit", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ access_key: "YOUR_ACCESS_KEY", message: "Hello from JSON", }),});Formato de solicitud
Tipos de contenido
Las API de backend de formularios normalmente aceptan:
| Content-Type | Caso de uso |
|---|---|
multipart/form-data | Formularios HTML estándar, carga de archivos |
application/x-www-form-urlencoded | Datos de formulario codificados en URL |
application/json | Clientes AJAX y API |
Campos requeridos
| Campo | Propósito |
|---|---|
access_key | Identifica su formulario (obligatorio) |
Todos los demás campos son datos de su formulario. Nómbralos como necesites.
Campos especiales
Muchos servidores de formulario reconocen nombres de campos especiales para la configuración:
| Campo | Propósito |
|---|---|
_redirect | URL a la que redirigir después del envío exitoso |
_subject | Línea de asunto de correo electrónico personalizada |
_replyto | Establezca la dirección de correo electrónico de respuesta |
botcheck | Campo Honeypot para detección de spam |
Formato de respuesta
Respuesta exitosa
{ "success": true, "requestId": "req_abc123", "message": "Submission received"}The requestId is useful for debugging delivery issues. Include it when contacting support.
Respuesta de error
{ "success": false, "message": "Invalid access key", "code": "INVALID_ACCESS_KEY"}Códigos de error comunes:
| Código | Significado |
|---|---|
INVALID_ACCESS_KEY | La clave de acceso falta o es incorrecta |
DOMAIN_NOT_ALLOWED | El origen del envío no está en sus dominios permitidos |
RATE_LIMITED | Demasiados envíos de esta IP |
SPAM_DETECTED | El envío fue marcado como spam |
FILE_TOO_LARGE | Un archivo cargado excede el límite de tamaño |
INVALID_FILE_TYPE | Un archivo cargado tiene un tipo MIME no permitido |
Modelo de seguridad
Claves de acceso público
La clave de acceso es intencionalmente pública. Va en su código fuente HTML donde cualquiera puede verlo. La seguridad no se basa en el secreto de la clave sino en:
- Restricción de dominio: acepte solo envíos de su sitio web
- Limitación de velocidad: evite el abuso desde una sola IP
- Detección de spam: Honeypot, CAPTCHA, filtrado de contenido
- Validación de campo: comprobaciones de longitud y tipo del lado del servidor
Qué no incluir nunca en el código de interfaz
- Secretos de API o tokens de administrador
- Tokens de OAuth
- Claves secretas CAPTCHA
- Credenciales de la base de datos
- Claves privadas
Estos pertenecen a un servidor, nunca a un código accesible al navegador.
Configuración de CORS
Form backend APIs set CORS headers to allow browser submissions. The Access-Control-Allow-Origin header is typically set to * (all origins) or restricted to your configured domains.
Si ve errores de CORS en la consola del navegador:
- Verifique que su dominio esté en la lista de dominios permitidos
- Asegúrese de que la URL del backend de formularios sea correcta (incluido https://)
- Busque extensiones del navegador que bloqueen solicitudes entre orígenes
Reenvío de webhook
Configure el backend de su formulario para reenviar envíos a sus propios endpoints:
POST https://your-server.com/webhook{ "name": "Ada Lovelace", "message": "Hello", "_metadata": { "requestId": "req_abc123", "submittedAt": "2026-05-28T14:32:00Z", "origin": "https://yoursite.com" }}Los webhooks permiten integraciones en tiempo real con CRM, herramientas de gestión de proyectos, bases de datos personalizadas y plataformas de automatización.
Carga de archivos
Para envíos de varias partes con archivos:
<form action="https://api.formsfort.com/submit" method="POST" enctype="multipart/form-data"> <input type="hidden" name="access_key" value="YOUR_ACCESS_KEY" /> <input type="file" name="attachment" accept=".pdf,.png,.jpg" /> <button type="submit">Upload</button></form>El backend de formularios:
- Valida el tipo MIME frente a los tipos permitidos
- Comprueba el tamaño del archivo con respecto a los límites configurados
- Escanea el archivo en busca de malware
- Almacena el archivo e incluye un enlace de descarga en la entrega
Limitación de velocidad
Los backends de formulario imponen límites de velocidad para evitar abusos:
| Nivel | Límite típico |
|---|---|
| Gratis | 5-10 envíos por minuto por IP |
| Pagado | 30-60 envíos por minuto por IP |
When rate limited, the API returns a 429 Too Many Requests response. Implement retry logic with exponential backoff in AJAX handlers.
Prueba de tu integración
Prueba con curl
curl -X POST https://api.formsfort.com/submit \ -F "access_key=YOUR_ACCESS_KEY" \ -F "message=Testing from curl"Prueba con un probador de endpoint de formulario
Utilice FormsFort Probador de endpoint de formulario para enviar datos de prueba desde el navegador e inspeccionar la respuesta.
Verificar la entrega
Después de enviar, verifique:
- Bandeja de entrada de correo electrónico (incluida la carpeta de correo no deseado)
- Registros de endpoint de webhook
- Google Sheets para nuevas filas
- Slack/Discord/Telegram para notificaciones
- Registros de entrega de backend de formularioss para el ID de solicitud
Resumen
Una API de backend de formularios recibe envíos de formularios HTML a través de HTTP POST, valida los datos, ejecuta comprobaciones antispam y entrega el envío a correo electrónico, webhooks, hojas de cálculo o plataformas de mensajería. La integración solo requiere configurar la acción del formulario en la URL del endpoint e incluir una clave de acceso pública. Funciona con cualquier marco, cualquier generador de sitios estáticos y cualquier cliente HTTP. No se requiere código del lado del servidor.
Preguntas frecuentes
¿Qué es una API de backend de formularios?
Una API de backend de formularioss es un endpoint alojado que recibe envíos de formularios HTML mediante HTTP POST, aplica comprobaciones antispam y entrega los datos por email, webhooks, hojas de cálculo o plataformas de mensajería. Sustituye la necesidad de código de servidor para procesar formularios.
¿Cómo funciona una API de backend de formularios?
Usted establece el atributo de acción del formulario HTML en la URL del backend de formularios e incluye una clave de acceso público. Cuando se envía el formulario, el navegador envía una solicitud POST al endpoint. El servicio valida los datos, ejecuta comprobaciones antispam y reenvía el envío a los destinos configurados.
¿Puedo enviar JSON a una API de backend de formularios?
Sí. La mayoría de las API de backend de formularioss aceptan datos multiparte/formularios (formularios HTML estándar) y aplicaciones/json (solicitudes AJAX). Incluya la clave de acceso en el cuerpo de la solicitud o como encabezado.
¿Es segura una API de backend de formularios?
Sí. La clave de acceso es pública por diseño (va en el HTML del navegador). La seguridad se aplica mediante restricciones de dominio, limitación de velocidad, comprobaciones de honeypot, verificación CAPTCHA y validación del lado del servidor. Nunca incorpore secretos de API ni tokens de administrador en el código de interfaz.
¿Puedo usar una API de backend de formularios con cualquier marco?
Sí. Las API de backend de formularios funcionan con cualquier marco que pueda producir solicitudes HTTP POST: Astro, Next.js, Hugo, 11ty, React, Vue, Svelte, HTML simple o cualquier cliente HTTP.
Comience gratis
¿Listo para agregar formularios a su sitio estático?
No se requiere backend. Apunte su formulario HTML a FormsFort y comience a recibir envíos en minutos.