Skip to main content
POST
cURL

Authorizations

Authorization
string
header
required

Send your API key as Authorization: Bearer YOUR_API_KEY.

Path Parameters

id
string
required

Agent id.

Minimum string length: 1

Body

application/json

Choose a type to create either a custom instruction skill or a configured platform tool.

type
string
required
Allowed value: "instructions"
name
string
required

Human-readable name for the skill. Longer input is truncated to 120 characters and saved, not rejected. Whitespace is trimmed first, so a whitespace-only name is rejected as empty.

Required string length: 1 - 120
Pattern: \S
instructions
string
required

The playbook the agent follows once the trigger lands. Longer input is truncated to this length and saved; it is not rejected. Leading and trailing whitespace is stripped before validation, so a value that is only whitespace counts as empty.

Required string length: 1 - 12000
Pattern: \S
id
string

Stable skill id. Generated when omitted during creation.

Minimum string length: 1
whenToUse
string
default:""

Plain-English trigger: when the agent should reach for this. Longer input is truncated to 300 characters and saved, not rejected.

Maximum string length: 300
enabled
boolean
default:true

Whether the skill is active on the agent. A disabled skill is kept but its tool is not installed.

expectedVersion
integer

Version from the latest skills read. When supplied, a stale write returns 409.

Required range: x >= 0
{key}
any

Response

Skill created.

success
boolean
required
version
integer
required
Required range: x >= 0
skill
Custom instruction skill · object
required

A plain-English playbook that teaches the agent when and how to handle a use case.

partialFailures
string[]

Background synchronization work that did not finish. The skill change was still saved.