---
title: "Create Skill"
method: POST
path: "/skills/create"
tags: ["Skills"]
---

# Create Skill

`POST /skills/create`

## Request

- Base URL: `https://backend.ressl.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://backend.ressl.ai/skills/create`
- Auth: none declared

Create a new skill from uploaded files or ZIP archive.

Either provide multiple files (including SKILL.md) or a single ZIP file.
Optionally provide organization_id to associate the skill with an organization.

## Request body `multipart/form-data`

- BodyCreateSkillSkillsCreatePost
  - `display_title` string, required: Display title for the skill
  - `files` string[], nullable: Skill files (must include SKILL.md)
  - `zip_file` string, binary, nullable: ZIP file containing skill files
  - `organization_id` string, nullable: Organization ID (optional)

## Response `200`

Successful Response

- SkillResponse: Response model for skill details
  - `id` string, required
  - `display_title` string, required
  - `source` 'custom' | 'anthropic', required
  - `latest_version` string, required
  - `created_at` string, required
  - `updated_at` string, required
  - `organization_id` string, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/ressl/apis/ressl-api.md) - [All operations](https://skmtc.dev/ressl/apis/ressl-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ressl/apis/ressl-api/revisions/51e8b599d597?raw)
