Skip to main content
POST
Create a skill
Adds a skill at the workspace level, or for one hosted agent when you set an agent ID. Choose the name carefully, since it becomes the directory the agent sees and cannot change. Related guide: Coding agents: route agents through the gateway. Creates a workspace-tier skill, or an agent-tier one when agentId is set (hosted agents only). name becomes the directory the agent sees and cannot change afterwards.
Availability: Cloud · Community (self-hosted) · Enterprise (self-hosted)

Authorizations

Authorization
string
header
required

A workspace API key (oc_…) or organization API key (oc_org_…). Workspace-scoped endpoints called with an organization key also need X-Workspace-Id.

Body

application/json

The body and every file together are limited to 32,000 characters. A workspace holds at most 20 skills, an agent 10, an organization 20.

name
string
required
Maximum string length: 64
Pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
Example:

"release-checklist"

description
string
required

One line. The agent reads it to decide when to load the skill.

Maximum string length: 500
content
string
required
Maximum string length: 24000
enabled
boolean
default:true
agentId
string

Create the skill at the agent tier instead of the workspace tier. Hosted agents only.

files
object[]
Maximum array length: 5

Response

Created

id
string
scope
enum<string>
Available options:
agent,
workspace,
organization
agentId
string | null
workspaceId
string | null
organizationId
string | null
name
string
description
string
content
string

The SKILL.md body.

enabled
boolean
createdByEmail
string | null
createdAt
string<date-time>
updatedAt
string<date-time>
files
object[]