Skills: Update

Description

Update the skill with this name on the team. The skill must already exist — updating a name that does not exist returns a 404 status code. Use the create endpoint to add a new skill.

Renaming a skill also rewrites its name in every AI action that references it, so a rename never breaks an existing attachment.

Only the fields you send are changed; any field you omit keeps its current value.

Request

HTTP Method: PUT

Path Parameter Description
skill_name The skill name.
Body Parameter Description
team_id ID of the team that owns the skill.
name Optional Renames the skill.
description Optional What the skill does and when to use it. AI agents are shown only the name and description, and match a task against them to decide whether to load the skill.
body Optional The full skill instructions, in markdown. Loaded only after the description matches the task at hand.
license Optional License the skill is distributed under.
compatibility Optional Free-text note on what the skill is compatible with.
metadata Optional Flat map of string keys to string values. Replaces the whole map, so send every key you want to keep.

Sample request

curl --proto '=https' --tlsv1.2 -X PUT \
  https://<tenant-domain>/api/v1/skills/<<skill_name>> \
  -H 'content-type: application/json' \
  -H 'Authorization: Bearer <<CREDENTIAL.tines_api_key>>' \
  -d '{
        "team_id": 42,
        "description": "Triage inbound security alerts. Use when a new alert needs a severity assessment or an on-call page.",
        "body": "# Triage alerts\n\nStart by checking the alert severity."
      }'

Response

A successful request will return a JSON object describing the updated skill.

Field description

Parameter Description
name Skill name.
description What the skill does and when to use it. AI agents are shown only the name and description, and match a task against them to decide whether to load the skill.
body The full skill instructions, in markdown. Loaded only after the description matches the task at hand.
license License the skill is distributed under. Null when it was never set.
compatibility Free-text note on what the skill is compatible with. Null when it was never set.
metadata Flat map of string keys to string values, empty when none are set.
team_id ID of the team that owns the skill.
created_at ISO 8601 timestamp describing when the skill was created.
updated_at ISO 8601 timestamp describing when the skill was last updated.

Sample response

{
  "name": "triage-alerts",
  "description": "Triage inbound security alerts. Use when a new alert needs a severity assessment or an on-call page.",
  "body": "# Triage alerts\n\nStart by checking the alert severity.",
  "license": "Apache-2.0",
  "compatibility": null,
  "metadata": { "source_repo": "runbooks" },
  "team_id": 42,
  "created_at": "2026-08-26T09:00:00.000Z",
  "updated_at": "2026-08-26T11:04:03.772Z"
}
Was this helpful?