Configurar un formulario de captura de leads

Captura de leads

Activa la barrera de captura de leads de un flipbook, alterna sus campos estándar y personalizados, marca campos como obligatorios y define la etiqueta de cada campo mediante la API.

APIs usadas en esta discusión

¿Hay algo incorrecto o desactualizado en esta guía?

Qué puedes hacer

Un formulario de captura de leads es una barrera que recopila los datos del visitante antes de que lea el flipbook. Cuatro endpoints te permiten crear y configurar ese formulario por completo mediante la API:

  • Activa y configura la barrera base — enciende la captura de leads, define su título, permite (o bloquea) que se pueda omitir, y controla tras cuántas páginas aparece el formulario.
  • Alterna los campos estándar — nombre, correo electrónico, teléfono, empresa, fecha — y marca cada uno como obligatorio u opcional.
  • Define campos personalizados adicionales más allá del conjunto estándar, con sus propias etiquetas.
  • Define las etiquetas y el texto de marcador de posición que se muestra en cada campo.

Cada endpoint apunta a un flipbook mediante su {flipbookId} y aplica los cambios con un solo PUT.

Antes de empezar

  • Una clave de API — se envía como el encabezado X-Api-Key, o como Authorization: Bearer YOUR_API_KEY, en cada solicitud.
  • El {flipbookId} — el ID numérico del flipbook, devuelto por create-by-file / create-by-url (como ID) o por list. Es un parámetro de ruta en los cuatro endpoints.
  • Todas las solicitudes van a la URL base https://go.fliplink.me.
  • El cuerpo de cada solicitud es form-urlencoded (no JSON) — envía los campos con --data-urlencode.

Activa y configura la barrera base

PUT /api/set-lead-capture/{flipbookId} activa y configura el formulario base de captura de leads. La bandera de activación es IsLeadCapture (un error común es buscar IsEnabled — ese campo no existe aquí).

curl -X PUT 'https://go.fliplink.me/api/set-lead-capture/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'IsLeadCapture=true' \
  --data-urlencode 'LeadCaptureTitle=Please share your details to continue' \
  --data-urlencode 'IsLeadAllowSkip=false' \
  --data-urlencode 'LeadSkipText=Skip' \
  --data-urlencode 'LeadFormAfterPages=0' \
  --data-urlencode 'LeadAfterPages=0'

Respuesta:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

El cuerpo lleva la bandera de activación (IsLeadCapture), un encabezado del formulario (LeadCaptureTitle), un interruptor para omitir (IsLeadAllowSkip) y su LeadSkipText — la etiqueta que se muestra en el botón de omitir (valor por defecto Skip). También lleva dos campos independientes de recuento de páginas, LeadFormAfterPages y LeadAfterPages, cada uno almacenado por su cuenta. Los dos recuentos de páginas controlan, del lado del visitante, cuándo aparece el formulario; define ambos de forma deliberada según el comportamiento que quieras.

Alterna los campos estándar

PUT /api/set-lead-fields/{flipbookId} alterna cada campo estándar de captura de leads (nombre, correo electrónico, teléfono, empresa, fecha) y si es obligatorio. Cada campo tiene una bandera Is… para mostrarlo y una bandera Is…Mandatory para exigirlo.

El cuerpo también lleva LeadPhoneCountry, que define el país / código de marcación por defecto del campo de teléfono. Acepta un valor como US o +1 y se almacena tal cual; su valor por defecto es vacío.

curl -X PUT 'https://go.fliplink.me/api/set-lead-fields/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'IsLeadEmail=true' \
  --data-urlencode 'IsLeadEmailMandatory=true' \
  --data-urlencode 'IsLeadName=true' \
  --data-urlencode 'IsLeadNameMandatory=false' \
  --data-urlencode 'IsLeadPhone=false' \
  --data-urlencode 'IsLeadPhoneMandatory=false' \
  --data-urlencode 'IsLeadCompany=false' \
  --data-urlencode 'IsLeadCompanyMandatory=false' \
  --data-urlencode 'IsLeadDate=false' \
  --data-urlencode 'IsLeadDateMandatory=false' \
  --data-urlencode 'LeadPhoneCountry='

Respuesta:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Define campos personalizados

PUT /api/set-lead-custom-fields/{flipbookId} define campos personalizados adicionales en el formulario de captura de leads, más allá del nombre/correo/teléfono estándar. Cada campo personalizado tiene una bandera para mostrarlo, una bandera de obligatoriedad y una etiqueta.

curl -X PUT 'https://go.fliplink.me/api/set-lead-custom-fields/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'IsLeadCustom1=false' \
  --data-urlencode 'IsLeadCustom1Mandatory=false' \
  --data-urlencode 'Custom1Label=' \
  --data-urlencode 'IsLeadCustom2=false' \
  --data-urlencode 'IsLeadCustom2Mandatory=false' \
  --data-urlencode 'Custom2Label='

Respuesta:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Define las etiquetas de los campos

PUT /api/set-lead-labels/{flipbookId} define las etiquetas y el texto de marcador de posición de los campos del formulario de captura de leads, incluido el botón de envío.

curl -X PUT 'https://go.fliplink.me/api/set-lead-labels/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'LeadEmail=' \
  --data-urlencode 'LeadName=' \
  --data-urlencode 'LeadPhone=' \
  --data-urlencode 'LeadCompany=' \
  --data-urlencode 'LeadDate=' \
  --data-urlencode 'LeadButton='

Respuesta:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Errores posibles

Estos aplican a los cuatro endpoints:

  • Clave de API ausente o no válida → HTTP 401. Esto devuelve una página HTML de "Unauthorized" sin formato — no hay cuerpo JSON. Comprueba que el encabezado X-Api-Key (o Authorization: Bearer) esté presente y sea correcto.
  • ID del elemento no encontrado o no perteneciente a tu clave → HTTP 200 con Message: "Item not found".
  • Campo del cuerpo desconocido o mal escrito → HTTP 200 con Message: "Unknown field(s) '…'. Expected: …". Respeta la ortografía y las mayúsculas/minúsculas exactas de cada nombre de campo de los ejemplos anteriores.

Notas

  • Para activar la captura de leads, actívala mediante set-lead-capture (IsLeadCapture=true) antes de apoyarte en los endpoints de campos, campos personalizados y etiquetas — esos configuran el formulario que presenta la barrera base.

Discusiones relacionadas