레퍼런스HTTP APIAgents

The runtime profiles this workspace can run

GET
/v1/profiles

Lists the profiles a session's profile_id or a release's runtime_profile_id may name, by id: the profiles (source: operator, each with an installation object): the installation-wide ones and the caller's workspace's own, each with the models it offers, its tools and permission mode. The older workspace versions (ids starting ws_) are not listed; what runs on them keeps its release. A profile saved from now on carries no repository_mode; an older one still does. Every profile is listed with its state (installation.state); only usable takes a new release or session. A profile's provider endpoint and credential are not included.

Scope: sessions:read (API key or cookie session).

Authorization

headerAuthorizationBearer <token>

For servers and scripts: an API key sent as an HTTP bearer token, Bearer <key>. It holds exactly the scopes it was issued with; a key issued before scopes existed holds none. It never needs the CSRF header, and it cannot manage agents, members, teams or API keys. Issue one in the web console under Settings → API keys; each operation names the scope it needs.

Scope: sessions:read

Response Body

The operator's profiles ordered by id, then the workspace's.

application/json
  1. response
items*array<>
Example Request
curl -X GET 'https://example.com/v1/profiles'
Example Response
{  "items": [    {      "id": "claude-coding-real",      "source": "operator",      "model": "claude-sonnet-5",      "models": [        "claude-sonnet-5",        "claude-haiku-5"      ],      "tools": [        "Read",        "Edit",        "Write",        "Glob",        "Grep",        "Bash"      ],      "permission_mode": "acceptEdits",      "runtime_kind": "claude_agent_sdk",      "runtime_version": "0.3.319",      "billing": "metered",      "repository_mode": "required"    },    {      "id": "op_coding_v2",      "source": "operator",      "model": "claude-sonnet-5",      "models": [        "claude-sonnet-5",        "claude-haiku-5"      ],      "tools": [        "Read",        "Edit",        "Write",        "Glob",        "Grep",        "Bash"      ],      "permission_mode": "acceptEdits",      "runtime_kind": "claude_agent_sdk",      "runtime_version": "0.3.319",      "billing": "metered",      "repository_mode": "required",      "repository_ids": [        "sample-app"      ],      "installation": {        "name": "coding",        "version": 2,        "origin": "console",        "state": "usable",        "connection_id": "anthropic-main",        "title_model": "claude-haiku-5",        "project_settings": {          "claude_md": true        },        "previous_id": "op_coding_v1",        "created_by": "019a0000-0000-7000-8000-0000000000b1",        "created_at": "2026-10-28T01:00:00.000Z",        "retired_by": null,        "retired_at": null,        "blocked_by": null,        "blocked_at": null      }    },    {      "id": "ws_acme_strict-review_v2",      "source": "workspace",      "model": "claude-sonnet-5",      "models": [        "claude-sonnet-5"      ],      "tools": [        "Read",        "Glob",        "Grep"      ],      "permission_mode": "default",      "runtime_kind": "claude_agent_sdk",      "runtime_version": "0.3.319",      "billing": "metered",      "repository_mode": "required",      "workspace": {        "name": "strict-review",        "version": 2,        "base_profile_id": "claude-coding-real",        "state": "usable",        "created_by": "019a0000-0000-7000-8000-0000000000b1",        "created_at": "2026-10-27T01:00:00.000Z",        "retired_by": null,        "retired_at": null      }    }  ]}