API de capture de prospects

Créez et gérez des formulaires de capture de prospects, collectez les soumissions des lecteurs depuis vos publications et exportez les données de prospects en CSV.

On this page

API de capture de prospects

L'API de capture de prospects vous permet de créer des formulaires qui apparaissent dans vos publications flipbook pour collecter les informations des lecteurs. Vous pouvez configurer les champs de formulaire, les conditions de déclenchement et le style. Les prospects capturés sont stockés et disponibles pour la consultation, la recherche et l'export CSV.

URL de base : https://api.zenflip.io/v1/leads

Capturer un prospect (public)

Soumettez un prospect depuis le lecteur de publication. Il s'agit d'un endpoint public --- aucune authentification n'est requise. Il est appelé par le lecteur intégré lorsqu'un lecteur remplit un formulaire de capture de prospect.

` POST /leads/capture/:pubId `

Limite de débit : 10 soumissions par minute par adresse IP.

Paramètres de chemin

Paramètre

Type

Description

pubId

string

UUID de la publication

Corps de la requête

Champ

Type

Requis

Description

email

string

Oui

Adresse email du prospect

name

string

Non

Nom complet

company

string

Non

Nom de l'entreprise ou de l'organisation

phone

string

Non

Numéro de téléphone

customFields

object

Non

Paires clé-valeur pour les champs de formulaire personnalisés

sourcePage

integer

Non

Numéro de la page où le formulaire a été déclenché

triggerType

string

Non

Comment le formulaire est apparu : page, exit, timer, scroll

Exemple de requête

`bash curl -X POST "https://api.zenflip.io/v1/leads/capture/a1b2c3d4-e5f6-7890-abcd-ef1234567890" \ -H "Content-Type: application/json" \ -d '{ "email": "jane@example.com", "name": "Jane Doe", "company": "Acme Inc.", "phone": "+1-555-0100", "customFields": { "jobTitle": "Product Manager", "department": "Marketing" }, "sourcePage": 3, "triggerType": "page" }' `

Exemple de réponse

`json { "data": { "id": "d4e5f6a7-b8c9-0123-def0-234567890123", "email": "jane@example.com", "name": "Jane Doe", "company": "Acme Inc.", "phone": "+1-555-0100", "customFields": { "jobTitle": "Product Manager", "department": "Marketing" }, "sourcePage": 3, "triggerType": "page", "capturedAt": "2026-02-20T15:30:00.000Z" } } `

Lister les prospects

Récupérez une liste paginée de tous les prospects capturés pour votre organisation.

` GET /leads `

Paramètres de requête

Paramètre

Type

Requis

Description

pubId

string

Non

Filtrer par identifiant de publication

page

integer

Non

Numéro de page (par défaut : 1)

limit

integer

Non

Éléments par page (par défaut : 20)

search

string

Non

Rechercher par email ou nom

Exemple de requête

`bash curl "https://api.zenflip.io/v1/leads?pubId=a1b2c3d4...&page=1&limit=20" \ -H "Authorization: Bearer YOUR_TOKEN" `

Exemple de réponse

`json { "data": [ { "id": "d4e5f6a7-b8c9-0123-def0-234567890123", "publicationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "email": "jane@example.com", "name": "Jane Doe", "company": "Acme Inc.", "phone": "+1-555-0100", "customFields": { "jobTitle": "Product Manager" }, "sourcePage": 3, "triggerType": "page", "capturedAt": "2026-02-20T15:30:00.000Z" } ], "meta": { "total": 142, "page": 1, "limit": 20, "totalPages": 8 } } `

Exporter les prospects en CSV

Exportez tous les prospects de votre organisation (ou d'une publication spécifique) sous forme de fichier CSV.

` GET /leads/export `

Paramètres de requête

Paramètre

Type

Requis

Description

pubId

string

Non

Filtrer par identifiant de publication

Exemple de requête

`bash curl "https://api.zenflip.io/v1/leads/export?pubId=a1b2c3d4..." \ -H "Authorization: Bearer YOUR_TOKEN" `

Exemple de réponse

`json { "data": "email,name,company,phone,source_page,trigger_type,captured_at\njane@example.com,Jane Doe,Acme Inc.,+1-555-0100,3,page,2026-02-20T15:30:00.000Z\n" } `

Formulaires de capture de prospects

Les formulaires de capture de prospects définissent les champs, les conditions de déclenchement et le style des formulaires présentés aux lecteurs à l'intérieur de vos publications.

Lister les formulaires d'une publication

` GET /leads/forms/:pubId `

Exemple de requête

`bash curl "https://api.zenflip.io/v1/leads/forms/a1b2c3d4-e5f6-7890-abcd-ef1234567890" \ -H "Authorization: Bearer YOUR_TOKEN" `

Exemple de réponse

`json { "data": [ { "id": "e5f6a7b8-c9d0-1234-ef01-345678901234", "publicationId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "title": "Download gated form", "description": "Enter your details to continue reading", "fields": [ { "name": "email", "type": "email", "label": "Email", "required": true }, { "name": "name", "type": "text", "label": "Full Name", "required": false }, { "name": "company", "type": "text", "label": "Company", "required": false } ], "trigger": { "type": "page", "page": 3 }, "styling": { "backgroundColor": "#ffffff", "buttonColor": "#3b82f6" }, "isActive": true, "createdAt": "2026-02-10T09:00:00.000Z", "updatedAt": "2026-02-10T09:00:00.000Z" } ] } `

Créer un formulaire de capture de prospects

` POST /leads/forms/:pubId `

Rôle requis : editor ou supérieur. Fonctionnalité de forfait requise : leadCapture.

Corps de la requête

Champ

Type

Requis

Description

title

string

Oui

Titre du formulaire (max 200 caractères)

description

string

Non

Description affichée au-dessus du formulaire

fields

array

Oui

Tableau de définitions de champs (voir ci-dessous)

trigger

object

Oui

Configuration du déclencheur (voir ci-dessous)

styling

object

Non

Options de style personnalisé

Objet de définition de champ

Propriété

Type

Description

name

string

Identifiant du champ (utilisé comme clé dans les soumissions)

type

string

Type de champ : email, text, tel, select, textarea

label

string

Libellé d'affichage du champ

required

boolean

Si le champ est obligatoire

options

array

Options pour les champs select (tableau de chaînes)

Objet de configuration du déclencheur

Propriété

Type

Description

type

string

Type de déclencheur : page, exit, timer, scroll

page

integer

Numéro de page (pour le déclencheur page)

delay

integer

Secondes d'attente (pour le déclencheur timer)

percent

integer

Pourcentage de défilement (pour le déclencheur scroll)

Exemple de requête

`bash curl -X POST "https://api.zenflip.io/v1/leads/forms/a1b2c3d4-e5f6-7890-abcd-ef1234567890" \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "title": "Get the full report", "description": "Enter your email to unlock all pages", "fields": [ { "name": "email", "type": "email", "label": "Work Email", "required": true }, { "name": "name", "type": "text", "label": "Full Name", "required": true }, { "name": "company", "type": "text", "label": "Company", "required": false } ], "trigger": { "type": "page", "page": 5 }, "styling": { "backgroundColor": "#ffffff", "buttonColor": "#4F46E5", "buttonText": "Unlock Report" } }' `

Mettre à jour un formulaire de capture de prospects

` PATCH /leads/forms/:formId `

Rôle requis : editor ou supérieur.

Tous les champs sont optionnels. N'incluez que les champs que vous souhaitez modifier.

Champ

Type

Description

title

string

Titre du formulaire

description

string

Description du formulaire

fields

array

Définitions de champs mises à jour

trigger

object

Configuration du déclencheur mise à jour

styling

object

Options de style mises à jour

isActive

boolean

Activer ou désactiver le formulaire

Supprimer un formulaire de capture de prospects

` DELETE /leads/forms/:formId `

Rôle requis : editor ou supérieur.

`bash curl -X DELETE "https://api.zenflip.io/v1/leads/forms/e5f6a7b8-c9d0-1234-ef01-345678901234" \ -H "Authorization: Bearer YOUR_TOKEN" `

Réponse

`json { "message": "Lead capture form deleted" } `

Obtenir les formulaires actifs (public)

Récupérez uniquement les formulaires de capture de prospects actifs pour une publication. Il s'agit d'un endpoint public utilisé par le lecteur pour savoir quels formulaires afficher.

` GET /leads/forms/public/:pubId `

Aucune authentification requise. Renvoie uniquement les formulaires dont isActive est true.

← Previous
API Analytics
Next →
API Publications