Trata sobre:
Formularios
Form endpoint
Un endpoint. Tres formatos de body. El Content-Type decide cómo se parsea.
POST
https://denorly.com/f/{TOKEN}
Auth: el TOKEN en la ruta. Token: Dashboard → formulario → Integración (es un UUID).
1. JSON
curl -X POST https://denorly.com/f/8f3b2c1a-9d4e-4f7a-b6c2-1e5a7d9c0b3f \
-H "Content-Type: application/json" \
-d '{"nombre":"Andrés","email":"andres@studio.pe"}'
2. Form-encoded
curl -X POST https://denorly.com/f/8f3b2c1a-9d4e-4f7a-b6c2-1e5a7d9c0b3f \
-d "nombre=Andrés" -d "email=andres@studio.pe"
3. Multipart (archivos)
curl -X POST https://denorly.com/f/8f3b2c1a-9d4e-4f7a-b6c2-1e5a7d9c0b3f \
-F "nombre=Andrés" \
-F "adjunto=@/ruta/al/archivo.pdf"
Campos
| Campo | Origen | Notas |
|---|---|---|
| {TOKEN} | Ruta | UUID del formulario. Debe estar activo. |
| cualquier campo | Body | Se guarda tal cual en payload. Sin esquema fijo: lo que envías es lo que se guarda. |
| Origin | Header | Si está presente, debe pasar la allow-list del formulario. |
Gotcha: con Content-Type: application/json mal formado, el body se parsea como {} (vacío); no devuelve error de parseo. Si tu submission llega vacía, revisa que el JSON sea válido y el header esté presente.
Redirect: si el formulario tiene redirect_url y la petición no es AJAX (sin Origin, no XHR, no JSON), responde 302 al destino. Si es AJAX, recibes el redirect_url en el JSON para redirigir tú mismo.