Saltar al contenido
API v1 · https://bentho.org/api
POST/api/mod/landing/{espacio}/landings

Crea una landing

Mandas el brief y la URL que recibe el formulario. Bentho escribe la landing, la prueba en un navegador y la deja lista para publicar. Contesta al momento con el id; el trabajo sigue en segundo plano.

  • PERMISOescribe
  • CRÉDITOSgasta créditos
  • AUTENTICACIÓNBearer bth_…

PARÁMETROS

CAMPOTIPOREQUERIDOQUÉ ES
espaciostringSÍEl id del espacio (sale en GET /api/companies). Tiene que tener el módulo Landings.

CUERPO · JSON

CAMPOTIPOREQUERIDOQUÉ ES
promptstringSÍEl brief: qué ofreces, a quién, con qué tono, qué secciones y qué datos (precios, fechas, testimonios). Hasta 24 000 caracteres.
submitUrlstringSÍAdónde envía sus datos el formulario. HTTP o HTTPS, sin usuario ni contraseña. Qué le llega, en la guía.
titulostringnoPara reconocerla en la lista. Hasta 120 caracteres; sin él, el comienzo del brief.
pageIdstringnoTu identificador de la página, hasta 200 caracteres. El formulario lo manda como page_id en cada envío.
brandBlockstringnoTu marca, en texto: nombre, colores, tipografías, tono, URL del logotipo. Hasta 20 000 caracteres.
formConfigobjectnoEl formulario: campos, mensaje de éxito, botones y redirección. Su forma, en la guía.
chatHistory[{ role, content }]noLa conversación con tu usuario que llevó a esta petición, si la hay. Hasta 50 mensajes de 8000 caracteres.
funnelReferenceHtmlstringnoEl HTML de otra página de tu embudo, para que esta siga su estilo. Hasta 300 000 caracteres.
pdf{ data, name? }noUn PDF con la información del producto, en base64 en data. Hasta 16 000 000 de caracteres (unos 12 MB de PDF).
revisarBriefbooleannoPor defecto true: antes de escribir, revisa si el brief pide datos que no da y te los pregunta (esperando_datos). Con false, no pregunta.

RESPUESTA 202

CAMPOTIPOQUÉ ES
idstringEl id de la landing.
versionintegerEl número de la versión que se encoló.
trabajostringEl id de esa versión. Para seguirla te basta con id y version.
status"pendiente"Siempre pendiente al encolar.

ERRORES DE ESTA RUTA · SIEMPRE {"detail": …}

STATUSCUÁNDODETAIL LITERAL
403El espacio no tiene el módulo Landingsmódulo no habilitado para este espacio.
403La clave es de solo lecturaTu cuenta es de solo lectura en este espacio.
402La cuenta agotó sus créditos del cicloLa cuenta de este espacio agotó sus créditos de este ciclo.
413El cuerpo pasa de 24 MBCuerpo demasiado grande
422Falta promptprompt es obligatorio
422submitUrl no es una URL HTTP/HTTPS, o lleva usuario o contraseñasubmitUrl debe ser una URL HTTP/HTTPS sin credenciales
422Un campo que no es de esta rutaCampos no admitidos: …
429El espacio tiene demasiadas landings generándose a la vezHay demasiadas landings en curso en este espacio; espera a que terminen.

Y los de cualquier ruta —clave inválida, cuenta no al día, IP, límites—, en Errores, límites y créditos.

CONVIENE SABER

  • Responde enseguida: el trabajo sigue en segundo plano y suele tardar unos minutos. Sigue la versión con GET landings/{landing}.
  • Mientras se prueba, el formulario no envía nada de verdad: a tu submitUrl no le llegan envíos de prueba.
  • Un formConfig que no cumple su forma no da 422: la versión termina en fallido y error dice por qué.
  • Los 422 del módulo traen el detail como texto ("prompt es obligatorio"), no como lista.