---
title: "Import a portable skill"
method: POST
path: "/api/spreadsheets/skills/import"
tags: ["Spreadsheets"]
---

# Import a portable skill

`POST /api/spreadsheets/skills/import`

## Request

- Base URL: `https://api.shortcut.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.shortcut.ai/api/spreadsheets/skills/import`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer
  - API key in cookie `shortcut_access_token`
  - HTTP bearer

Create a new personal skill from a shortcut-skill-v1 bundle. Never overwrites: duplicate names receive fresh personal:imported-{uuid} IDs. Only name, description, license and compatibility string frontmatter is supported. Maximum 100 files, 1 MiB per file, 5 MiB decoded total and 8 MiB request body. Requires root UTF-8 SKILL.md. No archive extraction, symlinks, hidden paths, team writes or official writes. External tools, credentials and platform dependencies are not installed.

## Request body

- object
  - `format` 'shortcut-skill-v1', required
  - `files` object[], required
    - `path` string, required
    - `data` string, required: Canonical padded base64 file bytes

## Response `201`

Default Response

- object
  - `id` string, required
  - `folderName` string, required
  - `name` string, required

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response
- `409`: Default Response
- `413`: Default Response
- `503`: Default Response

## Changes

- **2026-10-08** `3a1235362dbf`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/shortcut/apis/shortcut-api/changes/api/spreadsheets/skills/import/post.md)

---

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