---
title: "Create agent"
method: POST
path: "/agent/v1/agents"
tags: ["Agents"]
---

# Create agent

`POST /agent/v1/agents`

Creates a new agent definition with a scoped API key. The agent can then be used to create and execute runs.

## Request body

- object
  - `name` string, required — Display name for the agent
  - `description` string — Optional description of the agent
  - `instructions` string, required — System instructions that define agent behavior
  - `model` string — LLM model identifier (e.g. anthropic/claude-sonnet-4.6). Defaults to anthropic/claude-sonnet-4.6
  - `vaultIds` string[], nullable — Restrict agent to specific vault IDs
  - `vaultGroups` string[], nullable — Restrict agent to vaults within specific vault group IDs
  - `enabledTools` string[], nullable — Allowlist of tools the agent can use. Mutually exclusive with disabledTools — set one or the other, not both.
  - `disabledTools` string[], nullable — Denylist of tools the agent cannot use. Mutually exclusive with enabledTools — set one or the other, not both.
  - `sandbox` object, nullable — Custom sandbox configuration (cpu, memoryMiB)
    - `cpu` integer — Number of CPUs
    - `memoryMiB` integer — Memory in MiB

## Response `200`

Agent created

- object
  - `id` string
  - `name` string
  - `description` string, nullable
  - `instructions` string
  - `model` string
  - `vaultIds` string[], nullable
  - `enabledTools` string[], nullable
  - `disabledTools` string[], nullable
  - `sandbox` object, nullable
  - `createdAt` string, date-time
  - `updatedAt` string, date-time

## Other responses

- `400` — Missing required fields (name, instructions)
- `401` — Invalid API key
- `403` — No agent access

---

[API](https://skmtc.net/casemark/apis/case-dev-api.md) · [All operations](https://skmtc.net/casemark/apis/case-dev-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/casemark/case-dev-api/versions/5b7e64e6d6f9/schema)
