Skip to main content
POST
Create skill

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
name
string
required

Display name of the skill.

Maximum string length: 255
slash_key
string
required

The slash command key (e.g. budget-check). Must be unique within the scope.

Maximum string length: 255
instructions
string
required

The full instructions / system prompt for this skill.

category
enum<string>
required

Category bucket.

Available options:
document_analysis,
construction_project_management,
financial_analysis,
estimation,
quality_and_safety,
scheduling,
contracts_and_legal,
data_and_reporting,
research,
communication,
general_productivity
description
string | null

Short description. When omitted, an AI-generated description is produced from the instructions.

Maximum string length: 1000
required_tools
string[] | null

Tool identifiers required by this skill.

preferred_tools
string[] | null

Tool identifiers preferred by this skill.

enabled
boolean | null
default:true

Whether the skill is active. Defaults to true.

scope
enum<string> | null
default:account

Ownership of the new skill. Defaults to account (company-owned). Pass user for a private skill that can later be promoted.

Available options:
user,
account

Response

Created skill

object
enum<string>
required

The object type, always 'skill'.

Available options:
skill
id
string
required

Unique identifier for the skill.

scope
enum<string>
required

Ownership scope. user = private (author only), account = company-owned, builtin = global default.

Available options:
user,
account,
builtin
category
enum<string>
required

Category bucket for grouping in the skill picker.

Available options:
document_analysis,
construction_project_management,
financial_analysis,
estimation,
quality_and_safety,
scheduling,
contracts_and_legal,
data_and_reporting,
research,
communication,
general_productivity
slash_key
string
required

The slash command key used to invoke this skill (e.g. budget-check).

name
string
required

Display name of the skill.

description
string
required

Short description shown in the skill picker.

instructions
string
required

The full instructions / system prompt for this skill.

required_tools
string[]
required

Tool identifiers that this skill requires to function.

preferred_tools
string[]
required

Tool identifiers that this skill works best with.

enabled
boolean
required

Whether the skill is active and available for selection.

account_id
string | null
required

The account (company) that owns this skill. null for user-scope and builtin skills.

builtin_key
string | null
required

For company overrides of built-in skills: the identifier of the underlying built-in. null for user-authored skills.

promoted_at
string<date-time> | null
required

ISO timestamp when this skill was promoted to company scope. null for user-scope skills.

creator_id
string | null
required

ID of the user who created this skill. null for built-in skills that have never been edited.

created_at
string<date-time>
required

ISO timestamp when this skill was created.

updated_at
string<date-time>
required

ISO timestamp when this skill was last updated.