Skip to main content
Si ya tienes un formulario funcional respaldado por Formspree, moverlo a Formpaste es principalmente un cambio de dos líneas: una URL de action distinta, y un campo oculto en lugar de tener el ID del endpoint incorporado en la URL. Esta guía cubre el cambio en sí y el puñado de diferencias de comportamiento que vale la pena conocer antes de dar el salto, para que nada se rompa en silencio.

El cambio central

Un formulario típico de Formspree envía directamente a un endpoint con tu ID de formulario incrustado en la URL:
El equivalente en Formpaste envía a un único endpoint compartido, /submit, e identifica tu formulario mediante un campo oculto access_key en el cuerpo, no mediante la URL:
Dos cambios, nada más: la URL de action, y un nuevo input oculto access_key. Cualquier otro campo, tu email, message, o cualquier campo personalizado que ya tenga tu formulario, conserva su nombre y funciona sin cambios, ya que ningún servicio reserva esos nombres. Obtén tu access_key (fp_…) creando un formulario en el panel (o pidiéndole a un agente que lo haga mediante la herramienta MCP create_form), consulta Tu primer formulario si estás empezando desde cero.

Si estás usando la integración AJAX/fetch de Formspree

El patrón tiene la misma forma, solo apuntando a una URL distinta y con access_key en el cuerpo en lugar de en la ruta del endpoint:
La respuesta de éxito de Formpaste es un 200 con {"success": true, "message": "Submission received.", "id": "sub_..."}, verifica res.ok o success de la misma forma que verificarías la respuesta de Formspree.

Mapeo del resto de tu configuración

Diferencias que vale la pena conocer antes de cambiar

Sin acertijos de spam. Si tu formulario de Formspree tenía reCAPTCHA o hCaptcha conectado, simplemente elimínalo, no busques un equivalente que configurar. Formpaste depende completamente de heurísticas del lado del servidor (honeypot, tiempo, densidad de enlaces, tasa, correo desechable) que nunca le muestran un acertijo a tu visitante. Si tenías un campo honeypot para Formspree, renómbralo a botcheck, ese es el nombre específico que verifica Formpaste, y ocúltalo con CSS (display:none), no con type="hidden", para que los bots poco sofisticados que se saltan los inputs ocultos igual caigan en la trampa. Consulta Prevenir spam. Los envíos sospechosos se ponen en cuarentena, no se descartan ni se bloquean en silencio. Un envío que se puntúa como spam sigue llegando a un lugar donde puedes verlo, la pestaña Spam del panel, en lugar de desaparecer. En Free esa vista es de solo lectura; reentregar un falso positivo (“rescate”) es una acción Pro. Si tu filtro de spam de Formspree descartaba envíos en silencio, dedica tiempo a revisar la pestaña de cuarentena ocasionalmente después de migrar, por si algo legítimo necesita un empujón. Sin API REST para formularios o envíos. Formpaste no tiene una API REST general de crear-formulario/listar-envíos. Los formularios se crean en el panel o mediante la herramienta MCP create_form; los envíos se leen mediante el panel, la exportación CSV, o la herramienta MCP list_submissions, consulta Recuperar envíos si estabas programando algo contra la superficie de API de Formspree. Un servidor MCP, si estás configurando esto con un agente. Si estás migrando un formulario con la ayuda de Claude Code, Cursor, u otro agente que hable MCP, puede crear el formulario y devolverte directamente un snippet ya conectado, consulta Servidor MCP y los prompts de cookbook. Esto no es un equivalente de Formspree; es una superficie nueva que Formpaste tiene y Formspree no. Los planes son más simples. Formpaste tiene exactamente dos planes, Free y Pro (cuatro niveles de cuota de envíos dentro de Pro), en lugar de la estructura multinivel de Formspree. Consulta Plan Pro si estás evaluando si tu uso actual encaja en los 250 envíos/mes de Free.

Después de cambiar

  1. Actualiza la URL de action y agrega access_key en cada formulario que estés migrando.
  2. Verifica el correo de destino de cada formulario (OTP único por dirección), consulta Tu primer formulario.
  3. Renombra cualquier campo honeypot a botcheck y confirma que esté oculto con CSS.
  4. Elimina cualquier widget/script de CAPTCHA, no se necesita y Formpaste no lo leerá.
  5. Establece la lista permitida de dominios una vez que hayas confirmado que los envíos están llegando, para que el formulario no quede abierto a cualquier origen indefinidamente.
  6. Envía una prueba real y confirma que llega al inbox del panel y a tu correo.

Tu primer formulario

Recorrido completo para crear un formulario y verificar su destino.

Snippets por framework

Ejemplos listos para HTML, React, Next.js, Astro, Vue, y Svelte.

Prevenir spam

Cómo funciona el filtrado.

Recuperar envíos

Panel, exportación CSV, y la herramienta MCP, sin API REST.