Skip to main content
Prompts are the instruction layers behind Configuration → Prompts: planning, main guidelines, and channel-specific overrides. Use these public routes to read one agent’s current prompt configuration, inspect saved prompt history, save a new prompt version, or stage a draft prompt version for review.
The wire-format paths still use /hc-prompt because that is the current controller contract. In this reference, we call them prompts because they manage the agent instructions you configure in the product.
The read routes return a merged view: Fini overlays the agent’s saved prompt version on top of the workspace template prompt. That is why read responses include helper fields like defaultPrompt and custom. The write route stores a raw version payload and does not perform that merge in its response.

Reference pages

Get prompts

GET /v2/bots/{id}/hc-prompt/public - fetch the agent’s current merged prompt configuration.

Get prompt history

GET /v2/bots/{id}/hc-prompt/history/public - list metadata for saved prompt versions.

Get prompt version

GET /v2/bots/{id}/hc-prompt/{promptId}/public - fetch one saved prompt version as a merged prompt object.

Update prompts

POST /v2/bots/{id}/hc-prompt/public - save a new prompt version for one agent.

Create prompt draft version

POST /v2/bots/{id}/hc-prompt/versions/public - create a draft prompt version without publishing it.

Get prompt draft version

GET /v2/bots/{id}/hc-prompt/versions/{versionId}/public - fetch one exact stored draft version for review.

Publish prompt draft version

POST /v2/bots/{id}/hc-prompt/versions/{versionId}/publish/public - publish one reviewed draft version.

Endpoint map

Prompt object

string
Prompt version ID. On read routes, this is the saved version ID when one exists, otherwise the template prompt ID.
string
Agent ID the prompt is scoped to.
string
ISO 8601 timestamp for when this prompt version was created.
string
Creator identifier recorded for the saved version.
PromptSection[]
Planning Prompt sections.
PromptSection[]
Main Guidelines sections.
PromptSection[]
Channel Prompt sections.

PromptSection object

string
Section ID.
string
Section name shown in the dashboard.
string
Section description.
boolean
Whether the section is enabled.
boolean
Present on merged read responses. true means this section does not come from the default template.
PromptSubsection[]
Subsections inside the section.

PromptSubsection object

string
Subsection ID.
string
Subsection name shown in the dashboard.
string
The saved custom prompt text for this subsection. On merged read responses, this can be an empty string when useDefault is true.
string
Present on merged read responses. The default template text Fini would use if useDefault is true.
boolean
Whether this subsection should use the template prompt text instead of the custom prompt value.
boolean
Whether the subsection is enabled.
boolean
Present on merged read responses. true means this subsection does not come from the default template.
If you want to edit prompts safely through the API, the simplest workflow is: call Get prompts, modify the returned arrays, then send those arrays back to Update prompts. That preserves section IDs and ordering.