Skip to main content
PUT
/
api
/
prompts
/
{promptId}
Update a user prompt
curl --request PUT \
  --url https://your-instance.example.com/api/prompts/{promptId} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "Leasing follow-up assistant (v2)",
  "prompt": "<prompt><role>Leasing assistant</role><goal>Be friendly, concise, and confirm next steps.</goal></prompt>",
  "description": "Refined tone; clearer next-step CTA.",
  "temperature": 0.6,
  "responseTime": 30,
  "tools": [
    {
      "name": "book_tour"
    }
  ],
  "toolConfigs": {
    "book_tour": {
      "requireApproval": true
    }
  }
}
'
{
  "message": "Prompt updated successfully",
  "prompt": {
    "_id": "64d2f9c5e8a1d4e001a0b1c2",
    "name": "Maple Court — Tour confirm",
    "prompt": "<prompt>updated body</prompt>",
    "temperature": 0.4,
    "lastEditedAt": "2026-05-20T15:04:01.135Z"
  },
  "versionSnapshot": {
    "_id": "64d2f9c5e8a1d4e001a0b1d8",
    "version": 6,
    "displayVersion": "v1.5",
    "createdAt": "2026-05-20T15:04:01.135Z"
  }
}

Authorizations

Authorization
string
header
required

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

Path Parameters

promptId
string
required

Body

application/json
name
string

Human-readable prompt name shown in pickers and lists.

prompt
string

XML prompt body driving the AI agent.

responseTime
number

Target reply latency in seconds; the engine throttles streaming to roughly this duration.

description
string

Short summary of the prompt's purpose; surfaced in summary lists and pickers.

temperature
number

Sampling temperature (0-1). Lower = more deterministic.

tools
object[]

Enabled tool keys (e.g. getContact, sendSms, transfer).

toolConfigs
object

Per-tool config overrides keyed by tool name.

Response

Prompt updated successfully (may include a versionSnapshot when a checkpoint was captured)

versionSnapshot is only present when the update created a version checkpoint as a side-effect (e.g. autosave thresholds).

message
string
required
prompt
object
required

Prompt document as stored in the Prompt collection. Returned shape varies slightly per endpoint (some list/summary endpoints project a subset of fields).

Example:
{
"_id": "5f7b1c2e8a1d4e0012c3b4a5",
"name": "Leasing follow-up assistant",
"prompt": "<prompt><role>Leasing assistant</role><goal>Re-engage leads 24h after their last reply.</goal></prompt>",
"description": "Follow up with leads 24h after their last response.",
"temperature": 0.7,
"responseTime": 45,
"isHidden": false,
"tools": [{ "name": "book_tour" }],
"toolConfigs": { "book_tour": { "requireApproval": true } },
"organizationId": "64a1b2c3d4e5f60012345678",
"userId": "64a1b2c3d4e5f60012345679",
"createdAt": "2026-03-12T14:22:10.000Z",
"updatedAt": "2026-04-22T10:14:00.000Z"
}
versionSnapshot
object
Example:
{
"_id": "65f9b1c2e8a1d4e001a0b1c3",
"version": 4,
"label": "Friendlier tone",
"displayVersion": "v1.3",
"title": "Tone update",
"description": "Softened the opening line.",
"source": "manual_save",
"createdAt": "2026-04-22T10:14:00.000Z",
"matchesCurrentPrompt": true,
"preview": "<prompt><role>Leasing assistant</role>..."
}