---
title: "Import a Skill"
method: POST
path: "/skills/v1/import"
tags: ["Skills"]
---

# Import a Skill

`POST /skills/v1/import`

Creates or updates a Skill from a SKILL.md file or zip archive.

## Response `200`

Existing Skill updated successfully

- ImportSkillResponse
  - `skill` Skill, required
    - `id` string, uuid, required — Unique identifier for the Skill.
    - `name` string, required — Skill name.
    - `slug` string, required — Stable Skill slug.
    - `description` string, required — Description used to explain when the Skill should apply.
    - `instructions` string, required — Skill instructions.
    - `integrationIds` string[], required — Integration IDs attached to the Skill. Each integration must be enabled in your workspace.
    - `createdAt` string, date-time, required — ISO 8601 timestamp for Skill creation.
    - `updatedAt` string, date-time, required — ISO 8601 timestamp for the latest Skill update.
  - `files` ImportedSkillFile[], required
    - `path` string, required — File path inside the imported Skill.
    - `sizeBytes` integer, required — File size in bytes.
    - `extension` string, required — File extension.
    - `hasScript` boolean, required — Whether the file is a script file.

## Other responses

- `201` — Skill created successfully
- `400` — Invalid form data or zip archive
- `401` — Invalid or missing API key
- `403` — Missing required scope or Skill permission
- `409` — Existing slug conflict or ambiguous upsert slug
- `413` — Uploaded file is too large
- `429` — Rate limit exceeded
- `500` — Internal server error

---

[API](https://skmtc.dev/langdock/apis/langdock-api.md) · [All operations](https://skmtc.dev/langdock/apis/langdock-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/langdock/langdock-api/revisions/2520b65f6f2e/schema)
