Skip to main content
POST
Call images.generate

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.

Body

application/json
board
string
required

Which board the images land on — a board id in this workspace.

brief
string
required

What to generate, in plain words.

Required string length: 1 - 2000
count
integer
default:1

How many images to make. Each one costs credits.

Required range: 1 <= x <= 10
shape
enum<string>

The aspect ratio. Omit for the workspace default.

Available options:
1:1,
3:4,
4:3,
9:16,
16:9
confirmation_id
string

Leave this out on the first call: the answer will describe the run and hand you an id. Send that id back, unchanged, to actually run it.

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
status
enum<string>
required

confirmation_required — nothing ran and nothing was charged; dispatched — the run is under way.

Available options:
confirmation_required,
dispatched
confirmation_id
string | null
required

Present only while confirmation is required. Send it back on the second call.

request_summary
string | null
required

Present only while confirmation is required — what will be made, in one sentence, for a person to approve.

count
integer
required

How many images this run covers.

aspect_ratio
string
required
board_id
string
required
run_id
string | null
required

Present only once dispatched — the run to follow.

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.