Skip to main content
POST
Create a custom brief (triggers async brief generation)

Authorizations

X-API-KEY
string
header
required

Path Parameters

brand_id
string<uuid>
required

Body

application/json

Creation wizard input. Create mode needs prompt_ids[] (the UI expands topic checkboxes to prompt ids client-side); the anchor topic is derived server-side. Rewrite mode needs source_url instead.

format
enum<string>
required

Pre-fill from GET briefs/recommended_inputs

Available options:
how_to_guide,
comparison,
product_review,
listicle,
case_study,
pricing_breakdown,
alternative,
article,
opinion_piece,
news_article,
glossary_page,
technical,
features,
documentation,
service_page,
product_page
audience_id
string<uuid>
required
mode
enum<string>
default:create

rewrite replaces an existing owned page (source_url required, selection optional); create is the net-new flow

Available options:
create,
rewrite
prompt_ids
string<uuid>[]

The selection — prompts tracked by the brand (topic checkboxes expand to their prompts client-side)

source_url
string | null

Rewrite mode only (required there): URL of a crawled owned page to rewrite

title
string | null

Optional — when omitted the brief generator derives a title (research / topic name / source page title)

target_word_count
integer | null
additional_instructions
string | null

Advanced settings free text — tone, angles, must-cover points; honored by research/outline/writing

Response

brief created, generation enqueued

data
object
required