Skip to main content
TroopyDocs
Open Troopy
Troopy

API reference / Skills

Turn a skill on or off

Off, no teammate sees the skill or opens it. Needs an owner or admin.

patch/api/v1/skills/{name}

Authorization

HeaderAuthorization: Bearer <API key>
Or the headerX-API-Key: <API key>
API keyMake one in Troopy under Settings > API keys. It acts as you, in its workspace.

Other ways to call it

CLItroopy skills update
MCP toolNone. Call it over REST or with the CLI.
Rate limit30 calls in 60 seconds, for each key
RetriesSend an Idempotency-Key header. A retry with the same key gets the first answer back, and the operation runs one time.

Path parameters

name*string

The skill's name, like cold-email: a message that starts with /cold-email asks a teammate to use it

At most 64 characters

Body

application/json
enabled*boolean

Response

200 · application/json
data*object
12 properties
name*string

The skill's name, like cold-email: a message that starts with /cold-email asks a teammate to use it

At most 64 characters

description*string

When to use it: what every teammate's list of skills shows

enabled*boolean

Off: no teammate sees it or opens it

source*enum<string>

person: a person wrote it. teammate: a teammate proposed it, and a person approved it. taught: a person taught it by doing the task once

personteammatetaught

author*object

Who made it: a person, an API key, or the teammate whose proposal a person approved

3 properties
type*enum<string>

personagentapi

id*string
name*string
teammate*string | null

A taught skill: the handle of the teammate whose browser showed it

uses*integer

How many runs used it: a person asked for it with /name, or a teammate opened it

lastUsedAt*string | null

When a run last used it. null when no run did

createdAt*string

ISO 8601 date and time

updatedAt*string

ISO 8601 date and time

text*string

The steps, in markdown

updatedBy*object

Who changed it last

3 properties
type*enum<string>

personagentapi

id*string
name*string

Errors

400 invalid_inputFix the field named in detail. Each operation's schema is in /api/v1/openapi.json.
401 unauthorizedSend an API key as `Authorization: Bearer tr_live_...`. Create one in Troopy under Settings.
403 forbiddenThe key lacks a scope this operation needs, or its owner lacks the role. detail says which; create a key with the scope, or ask an organization owner or admin.
404 not_foundCheck the path and any id in it. Every operation is listed in /api/v1/openapi.json.
409 conflictThis Idempotency-Key was used for a different request, or that request is still running. Use a new key for a new request.
429 rate_limitedWait the number of seconds in Retry-After, then retry.