Skip to main content
POST
Create a Lead Capture pop-up

Authorizations

Authorization
string
header
required

Organization API key, sent as Authorization: Bearer boom_org_....

Body

application/json
name
string
required

Internal name, unique in the organization. Not shown to visitors.

Required string length: 1 - 80
template
enum<string>

A finished starting point: look, image, words and game. bold_coupon, warm_newsletter (email only), midnight and editorial (a yes/no screen, the code sent by message) have no game; wheel, cards, plinko and scratch are games and need prizes before going live.

Available options:
bold_coupon,
warm_newsletter,
midnight,
editorial,
wheel,
cards,
plinko,
scratch
allowedOrigins
string[]

Every site the pop-up may open on, as bare origins such as https://www.example.com. Matching is exact: https://example.com does not cover https://www.example.com.

Maximum array length: 20

Response

Success

id
string
required
name
string
required
status
enum<string>
required

ACTIVE shows it to visitors on the allowed sites; it is refused, with the reasons, until the pop-up is ready (at least one site, a prize per game, consent text for a phone).

Available options:
PAUSED,
ACTIVE
game
string
required

The game, or none for a plain form.

allowedOrigins
string[]
required
installKey
string
required

Public; identifies the pop-up in the install tag.

updatedAt
string
required

ISO timestamp.

installTag
string
required

The script tag to paste at the end of the page body.

buttonTag
string
required

A button that opens the pop-up when clicked, whatever its trigger; with the trigger set to click it is the only way it opens. The install tag must be on the page too.

config
object
required

The full design, copy, fields, trigger, game and prizes. Send any part of it back as config to lead_capture_forms_update. Text fields are { "en": "…", "es": "…", "pt": "…" }; en is required. If the stored settings could no longer be read, this shows the defaults and liveIssues says so; a patch then starts from the defaults.

liveIssues
string[]
required

Why it could not go live as it stands, one field: reason per line. Empty when it is ready.