Skip to main content
POST
Upload skill

Restrictions

Usage

  • Send as multipart/form-data with a file part; accepted archive types are .skill, .zip, .tar.gz, .tgz, capped at 100MB (oversized files are rejected before the body is read).
  • skill_id + replace=true targets and overwrites that specific skill, skipping the team-authorship check since the caller already owns the row.
  • replace=true without skill_id upserts by matching skill name; omitting replace always creates a new skill — both paths require the caller to be allowed to author into the target team_id.
  • The response always stamps can_edit: true.
  • Every call is recorded in the account audit log.

Authorizations

app_key
string
query
required

App key issued from the Flashduty console. Required on every public API call. Keep it secret — it grants the same access as the owning account.

Body

multipart/form-data

Multipart form for uploading a skill archive.

file
file
required

Skill archive (.skill / .zip / .tar.gz / .tgz). Max 100MB; oversized files are rejected before the body is read.

team_id
integer<int64>

Team scope for the created/upserted skill: 0 = account-wide. Ignored when replacing a specific skill via skill_id.

replace
boolean

When true, overwrite an existing skill instead of failing on a name collision — matched by skill_id if provided, otherwise by skill name.

skill_id
string

Existing skill ID to target when replacing a specific skill (requires replace=true).

Response

Success

Standard response envelope used by every Flashduty public API. On success data contains the endpoint-specific payload and error is absent. On failure error is present and data is absent. request_id is always present and is also mirrored in the Flashcat-Request-Id response header.

request_id
string
required

Unique ID for this request. Mirrored in the Flashcat-Request-Id header. Include it when reporting issues.

Example:

"01HK8XQE3Z7JM2NTFQ5YJ8P9R4"

error
object

Error payload inside the response envelope. Present only on non-2xx responses.

data
object

An AI SRE skill — a packaged SKILL.md bundle the agent can load.