---
title: "POST /v1/skills"
method: POST
path: "/v1/skills"
tags: ["v1"]
---

# POST /v1/skills

`POST /v1/skills`

## Response `200`

Success

- Skill — A hosted skill.
  - `created_at` integer, required — Unix timestamp (seconds) for when the skill was created.
  - `default_version` string, required — Default version for the skill. Currently always `"1"`.
  - `description` string, required — Description extracted from `SKILL.md` frontmatter.
  - `id` string, required — Unique identifier for the skill.
  - `latest_version` string, required — Latest version for the skill. Currently always `"1"`.
  - `name` string, required — Skill name extracted from `SKILL.md` frontmatter.
  - `object` string, required — The object type, which is always `"skill"`.

## Other responses

- `400` — Invalid skill upload.
- `413` — Payload too large.

---

[API](https://skmtc.net/x/apis/xai-s-rest-api.md) · [All operations](https://skmtc.net/x/apis/xai-s-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/x/xai-s-rest-api/versions/8f6014272113/schema)
