> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spiritprotocol.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Workspace: creating agents

> Birth and enumerate agents programmatically — workspace-key territory.

These endpoints require a **workspace key** (`swk_`) — an agent token cannot
create agents. See [Authentication](/studio-api/authentication).

## Create an agent

<ParamField path="POST /api/v1/workspace/provision">
  One request births an agent: workspace slot, published starter soul, archetype
  capabilities, its own EVM wallet, and the workspace's one-time welcome
  credits.
</ParamField>

```sh theme={null}
curl -X POST -H "Authorization: Bearer swk_..." -H "Content-Type: application/json" \
  -d '{
    "agentName": "Verse",
    "archetype": "researcher",
    "soulMd": "# Verse\n\n## What I Am\n\nI trace the lineage of ideas across texts."
  }' \
  https://studio.spiritprotocol.io/api/v1/workspace/provision
```

```json Response theme={null}
{ "agentSlug": "verse" }
```

`archetype` is one of `assistant` (default), `creative`, `researcher`,
`operator` — it seeds which capability sections the agent starts with; the
owner can change everything later.

## List agents

<ParamField path="GET /api/v1/workspace/agents">
  The workspace's agents plus its credit balance.
</ParamField>

```sh theme={null}
curl -H "Authorization: Bearer swk_..." \
  https://studio.spiritprotocol.io/api/v1/workspace/agents
```
