Skip to main content
POST
Generate Digital Humans
Integration Prompt for AI Agents
Given the simulation ID and generation options, this endpoint creates Digital Humans from scenarios. Payload shape and validation rules (including scenario-based generation) are documented in the OpenAPI schema on this page. For graph-based paths, see Create scenario and the Scenario Builder cookbook. The generate request does not accept allow_silence_tool or silence_tool_instructions; those are set when you create or update a Digital Human explicitly. Generated or returned digital_human objects in responses may still include those fields at model defaults (allow_silence_tool false, silence_tool_instructions "default"). Whether the silence tool runs in voice simulations is determined by the execution layer that reads stored test-case data, not by this API alone.

Headers

X-Organization-Id
string
X-API-Key
string
required

API key required to authenticate requests.

Body

application/json

Pydantic model for digital humans (simulation type) request

agent_id
string
required

ID of the agent to be used to generate the digital humans

simulation_id
string | null

Optionally attach the digital humans to a simulation

prompt_id
string<uuid> | null
deprecated

Deprecated. Use agent_version_id. Same uuid, still works.

agent_version_id
string<uuid> | null

Agent version UUID to generate from (defaults to latest)

knowledge_base_id
string<uuid> | null

Knowledge base UUID associated with the simulation

goal_adherence
GoalAdherence · object[] | null

List of goal adherence scenarios

workflow_adherence
Workflow Adherence · object | null

Dictionary of workflow IDs and their counts

workflow_adherence_v2
Workflow Adherence V2 · object | null

Dictionary of workflow_v2 IDs and their counts (uses new graph definition format)

replay_transcript
(Replay Transcript From Text · object | Replay Transcript From Conversation ID · object)[] | null

List of transcript replays to generate digital humans from

Replay transcript by providing the transcript text directly.

customer_personas
CustomerPersonaRequest · object[] | null
deprecated

List of customer personas to be used in the simulation

system_prompt
integer | null
default:0

Number of digital humans to generate from the agent version's locked system-prompt rules. Each rule is tested from both sides, so this is two per rule and must be even: one caller the agent must help, one it must push back on. A lower number covers fewer rules rather than half-testing every rule.

Required range: x >= 0Must be a multiple of 2
load_testing
integer | null
default:0

Number of load testing calls

red_teaming
integer | null
default:0

Number of red teaming calls

red_team_attacks
SocialEngineeringRedTeamConfig · object | null

Red-team attack matrix (intent x vector x available information). When set, supersedes the legacy red_teaming int. Persisted onto test_cases: free-text intent → intent_summary, attack_vector → attack_vector column, available information → customer_trait_values rows with completeness.

traits
Trait · object[] | null

Case facts applied to EVERY generated digital human — the fixtures the whole batch shares (e.g. a test account number). Per-caller facts belong on the individual digital human, and neither place takes internal or agent-side information: a trait is always something a real caller could recite.

num_runs
integer | null
default:1

Number of runs per digital human per simulation run (run count).

Required range: x >= 1

Response

Successful Response

digital_humans
any[]

List of digital humans created for the simulation

status
string
default:200

Status of the response

success
boolean
default:true

Whether the generation succeeded

test_scenarios
any[] | null

Scenario view of created digital humans (includes original_transcript and formatted_transcript for transcript replays)

warning
string | null

Warning message if the request was modified (e.g. truncated due to exceeding the max limit)