Create a version
Saves a configuration of the agent. A saved state is immutable: to change an agent's instructions you save again rather than editing one. By default (`target.mode` `new`) the save opens a new version. With `target.mode` `append` it goes onto an existing version that can still change, and is refused with `version_locked` when that version has been live or is part of an A/B test, or `version_changed` when someone saved on it since you read it. Either way the saved state's `version` is the number of the version it lands on, as the dashboard shows it, and `savedState` its place in that version. Without the deprecated `status` field, saving never puts anything live: use `POST …/agents/{id}/go-live`. That field still accepts `champion`, which archives the agent's previous `champion` version.
Authorization
ApiKeyAuth A WorkOS org-scoped API key, created from the dashboard's organization settings page. Identifies the tenant every read and write is scoped to. Missing, malformed, unknown, revoked, expired, or non-organization-owned keys all return 401 (no distinction, so the response can't be used to probe which keys or org ids exist).
In: header
Path Parameters
The site id (prefixed site_). A site id that isn't yours is a 404, same as any other cross-tenant id.
The agent id (prefixed agt_).
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X POST "https://example.com/api/v1/sites/string/agents/string/versions" \ -H "Content-Type: application/json" \ -d '{ "status": "draft" }'{ "data": { "id": "string", "agentId": "string", "lineId": "string", "version": 0, "label": "string", "savedState": 0, "savedStateLabel": "string", "status": "draft", "lifecycleStatus": "live", "locked": true, "lockedReason": "live", "engine": "string", "capabilities": [ "attachment" ], "startersAlignment": "left", "showStarterQuestions": true, "avatarUrl": "string", "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }}