---
title: "Generate email sequence steps with AI (async)"
method: POST
path: "/email-sequences/ai-generate"
---

# Generate email sequence steps with AI (async)

`POST /email-sequences/ai-generate`

## Request

- Base URL: `https://api.web2wave.com/api`
- URL: `https://api.web2wave.com/api/email-sequences/ai-generate`
- Auth: API key in header `api_key`

Starts a background job that writes 1–20 emails and creates them as steps. Returns a `token`;
poll `GET /email-sequences/ai-generate/{token}/status` until `status` is `completed` or `failed`;
`created_ids` lists the new step ids. Discover options first with
`GET /email-sequences/ai-generate/style-packs`, `.../sequence-templates`, `.../quizzes`, `.../paywalls`.
For `cta_type` quiz/paywall pass `cta_resource_id`; for `custom` pass `cta_link`.

## Headers

- `api_key` string, required

## Request body

- object
  - `style_pack` string: Id from `style-packs`; `from_quiz` / `from_paywall` copy the visual style of `style_source_id`
  - `style_source_type` 'quiz' | 'paywall'
  - `style_source_id` integer
  - `emails` object[], required
    - `start_trigger` 'lead_registration' | 'any_purchase' | 'purchase' | 'subscribe' | 'start_trial' | 'app_installed' | 'no_trigger', required
    - `stop_trigger` 'any_purchase' | 'purchase' | 'subscribe' | 'start_trial' | 'app_installed' | 'no_trigger', required
    - `content_description` string, required: What the email should say
    - `subject` string
    - `cta_type` 'custom' | 'quiz' | 'paywall' | 'app_download', required
    - `cta_link` string
    - `cta_resource_id` integer
    - `delay_value` integer
    - `delay_unit` 'minutes' | 'hours' | 'days'
    - `audience_source` 'quiz' | 'paywall' | 'manual'
    - `audience_id` integer
    - `audience_description` string
    - `example_template` string

## Response `202`

Generation started

- object
  - `success` boolean
  - `token` string, uuid
  - `status_url` string

## Other responses

- `422`: Validation error

## Changes

- **2026-11-03** `eb8b2d9124ac`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/web2wave/apis/web2wave-api/changes/email-sequences/ai-generate/post.md)

---

[API](https://skmtc.dev/web2wave/apis/web2wave-api.md) - [All operations](https://skmtc.dev/web2wave/apis/web2wave-api/llms.txt) - [OpenAPI document](https://skmtc.dev/web2wave/apis/web2wave-api/revisions/eb8b2d9124ac?raw)
