Skip to main content
POST
Create scenario
Create a scenario from scenario JSON. You can mint hosted links in the same request. Required headers:
  • Authorization: Bearer <YOUR_AKAPULU_API_KEY>
  • Content-Type: application/json
Required request fields:
  • name
  • nodes_json with initial_node and nodes
Optional request fields:
  • llm_model (defaults to gpt-4.1-mini; full-size models require a paid plan)
  • hosted_links — each link needs avatar_id and a runtime_vars key for every {{runtime.*}} variable the scenario references (blank values are allowed)
The response hosted_links array includes the public url (https://live.akapulu.com/session/<token>).

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
name
string
required
nodes_json
object
required

Scenario flow JSON. See the Using JSON guide for the full contract.

llm_model
enum<string>

OpenAI chat model for this scenario. Defaults to gpt-4.1-mini. Full-size models require a paid plan.

Available options:
gpt-4.1-nano,
gpt-4.1-mini,
gpt-4.1,
gpt-5.4-nano,
gpt-5.4-mini,
gpt-5.4

Optional hosted links to create with the scenario.

Response

Scenario created successfully

status
string
required
id
string<uuid>
required
redirect_url
string

Dashboard path. Ignore for API clients.