Skip to main content
POST
Upload skill

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.