Skip to main content
POST
Call funnel.plan

Authorizations

Authorization
string
header
required

An API key minted at Settings › API & MCP. Send it as Authorization: Bearer <key>. A key carries its holder's own permissions, resolved on every call — revoking a membership closes the key's reach immediately. Keep it in an environment variable (GOOSY_API_KEY), never in a committed file.

Headers

x-request-id
string

Your own id for this request, echoed back and recorded on the audit trail. 1–128 characters from A–Z a–z 0–9 . _ : -, starting with a letter or digit; anything else is replaced by a generated id.

Maximum string length: 128

Body

application/json
answers
object
required
parts
enum<string>[]
required

Which parts this funnel needs. Choose from the closed list — you cannot invent one. A funnel with a page and a sequence is a real funnel; do not add parts nobody asked for.

Required array length: 1 - 7 elements
Available options:
landing_pages,
email_sequences,
pipeline,
automations,
creative,
tracking,
data_table
defaulted
enum<string>[]

Which of the five answers YOU supplied rather than the operator. The plan marks each one so they can see what they never actually decided. Leave it out when they answered everything.

Available options:
offer,
audience,
entry_point,
conversion_event,
follow_up_window
workspace
string

Which workspace to run in — its slug. Omit to use your default. With more than one reachable workspace and no default, the call is refused and the choices are listed.

Minimum string length: 1

Response

The call was admitted and dispatched. ok says whether the tool succeeded — a refusal the tool itself produced is still a 200, exactly as it is a successful JSON-RPC result over MCP.

The tool ran and answered.

ok
boolean
required
plan_markdown
string
required
project_name
string
required
ordered_parts
object[]
required
missing_dependencies
string[]
required
answer_note
string
required
workspace
string
required

The slug of the workspace this call ran in.

working_in
object
required

Which workspace this call ran in, and how that was decided. Present on every workspace-scoped result.