No blocks yet. Add one above, or click Sample.
Loading the component library…
Where the component system is strong, and where it is thin — to drive new or extended components. Derived live from /api/schema (objectives + per-component intent). “bestFor” counts components that name the objective; the sequence is the objective’s recommended skeleton.
/api/schema
Tell me what the campaign is for — the audience, the occasion, the products, the deadline. I'll generate a complete, validated campaign JSON you can review and edit here.
Creates a draft campaign (never sends), built from per-block image slices — each block is its own image with its own link, not one giant PNG. The footer stays live HTML so the unsubscribe link works. The server needs KLAVIYO_API_KEY (scopes campaigns:write, templates:write, images:write, lists:read, segments:read). Set per-block links in the Slices tab first. Audience & sender are remembered in this browser.
KLAVIYO_API_KEY
campaigns:write
templates:write
images:write
lists:read
segments:read
Saved on the server so you can reopen or clone them later. (Persists across sessions when the server has a persistent disk.)