from line 1
1---
2title: Skills
3url: https://platform.claude.com/docs/en/api/beta/skills
4---
5
61# Skills
72
83## Create Skill
94
10**post** `/v1/skills`
5**POST** `/v1/skills`
116
127Create Skill
138
14### Header Parameters
9### Headers
1510
1611- `"anthropic-beta": optional array of AnthropicBeta`
1712
from line 84
8984
9085 - `"mid-conversation-tool-changes-2026-07-01"`
9186
87### Body parameters (form-data)
88
89- `files: array of string`
90
91 Files to upload for the skill.
92
93 All files must be in the same top-level directory and must include a SKILL.md file at the root of that directory.
94
95- `display_title: optional string or null`
96
97 Display title for the skill.
98
99 This is a human-readable label that is not included in the prompt sent to the model.
100
92101### Returns
93102
94103- `id: string`
from line 137
128137
129138 For Skills, this is always `"skill"`.
130139
140 default: skill
141
131142- `updated_at: string`
132143
133144 ISO 8601 timestamp of when the skill was last updated.
from line 145
134145
135146### Example
136147
137```http
148```bash
138149curl https://api.anthropic.com/v1/skills \
139150 -H 'Content-Type: multipart/form-data' \
140151 -H 'anthropic-version: 2023-06-01' \
from line 154
143154 -F files='["Example data"]'
144155```
145156
146#### Response
157#### Response (200)
147158
148159```json
149160{
from line 170
159170
160171## List Skills
161172
162**get** `/v1/skills`
173**GET** `/v1/skills`
163174
164175List Skills
165176
166### Query Parameters
177### Query parameters
167178
168179- `limit: optional number`
169180
from line 182
171182
172183 Maximum value is 100. Defaults to 20.
173184
185 default: 20
186
174187- `page: optional string`
175188
176189 Pagination token for fetching a specific page of results.
from line 199
186199 * `"custom"`: only return user-created skills
187200 * `"anthropic"`: only return Anthropic-created skills
188201
189### Header Parameters
202### Headers
190203
191204- `"anthropic-beta": optional array of AnthropicBeta`
192205
from line 279
266279
267280### Returns
268281
269- `data: array of object { id, created_at, display_title, 4 more }`
282- `data: array of object`
270283
271284 List of skills.
272285
from line 320
307320
308321 For Skills, this is always `"skill"`.
309322
323 default: skill
324
310325 - `updated_at: string`
311326
312327 ISO 8601 timestamp of when the skill was last updated.
from line 340
325340
326341### Example
327342
328```http
343```bash
329344curl https://api.anthropic.com/v1/skills \
330345 -H 'anthropic-version: 2023-06-01' \
331346 -H 'anthropic-beta: skills-2025-10-02' \
from line 347
332347 -H "X-Api-Key: $ANTHROPIC_API_KEY"
333348```
334349
335#### Response
350#### Response (200)
336351
337352```json
338353{
from line 369
354369
355370## Get Skill
356371
357**get** `/v1/skills/{skill_id}`
372**GET** `/v1/skills/{skill_id}`
358373
359374Get Skill
360375
361### Path Parameters
376### Path parameters
362377
363378- `skill_id: string`
364379
from line 381
366381
367382 The format and length of IDs may change over time.
368383
369### Header Parameters
384### Headers
370385
371386- `"anthropic-beta": optional array of AnthropicBeta`
372387
from line 498
483498
484499 For Skills, this is always `"skill"`.
485500
501 default: skill
502
486503- `updated_at: string`
487504
488505 ISO 8601 timestamp of when the skill was last updated.
from line 506
489506
490507### Example
491508
492```http
509```bash
493510curl https://api.anthropic.com/v1/skills/$SKILL_ID \
494511 -H 'anthropic-version: 2023-06-01' \
495512 -H 'anthropic-beta: skills-2025-10-02' \
from line 513
496513 -H "X-Api-Key: $ANTHROPIC_API_KEY"
497514```
498515
499#### Response
516#### Response (200)
500517
501518```json
502519{
from line 529
512529
513530## Delete Skill
514531
515**delete** `/v1/skills/{skill_id}`
532**DELETE** `/v1/skills/{skill_id}`
516533
517534Delete Skill
518535
519### Path Parameters
536### Path parameters
520537
521538- `skill_id: string`
522539
from line 541
524541
525542 The format and length of IDs may change over time.
526543
527### Header Parameters
544### Headers
528545
529546- `"anthropic-beta": optional array of AnthropicBeta`
530547
from line 633
616633
617634 For Skills, this is always `"skill_deleted"`.
618635
636 default: skill_deleted
637
619638### Example
620639
621```http
640```bash
622641curl https://api.anthropic.com/v1/skills/$SKILL_ID \
623642 -X DELETE \
624643 -H 'anthropic-version: 2023-06-01' \
from line 645
626645 -H "X-Api-Key: $ANTHROPIC_API_KEY"
627646```
628647
629#### Response
648#### Response (200)
630649
631650```json
632651{
from line 654
635654}
636655```
637656
638## Domain Types
657## Domain types
639658
640659### Skill Create Response
641660
642- `SkillCreateResponse object { id, created_at, display_title, 4 more }`
661- `SkillCreateResponse object`
643662
644663 - `id: string`
645664
from line 697
678697
679698 For Skills, this is always `"skill"`.
680699
700 default: skill
701
681702 - `updated_at: string`
682703
683704 ISO 8601 timestamp of when the skill was last updated.
from line 705
684705
685706### Skill List Response
686707
687- `SkillListResponse object { id, created_at, display_title, 4 more }`
708- `SkillListResponse object`
688709
689710 - `id: string`
690711
from line 744
723744
724745 For Skills, this is always `"skill"`.
725746
747 default: skill
748
726749 - `updated_at: string`
727750
728751 ISO 8601 timestamp of when the skill was last updated.
from line 752
729752
730753### Skill Retrieve Response
731754
732- `SkillRetrieveResponse object { id, created_at, display_title, 4 more }`
755- `SkillRetrieveResponse object`
733756
734757 - `id: string`
735758
from line 791
768791
769792 For Skills, this is always `"skill"`.
770793
794 default: skill
795
771796 - `updated_at: string`
772797
773798 ISO 8601 timestamp of when the skill was last updated.
from line 799
774799
775800### Skill Delete Response
776801
777- `SkillDeleteResponse object { id, type }`
802- `SkillDeleteResponse object`
778803
779804 - `id: string`
780805
from line 813
788813
789814 For Skills, this is always `"skill_deleted"`.
790815
791# Versions
816 default: skill_deleted
792817
793## Create Skill Version
818## Skills › Versions
794819
795**post** `/v1/skills/{skill_id}/versions`
820### Create Skill Version
796821
822**POST** `/v1/skills/{skill_id}/versions`
823
797824Create Skill Version
798825
799### Path Parameters
826#### Path parameters
800827
801828- `skill_id: string`
802829
from line 831
804831
805832 The format and length of IDs may change over time.
806833
807### Header Parameters
834#### Headers
808835
809836- `"anthropic-beta": optional array of AnthropicBeta`
810837
from line 909
882909
883910 - `"mid-conversation-tool-changes-2026-07-01"`
884911
885### Returns
912#### Body parameters (form-data)
886913
914- `files: array of string`
915
916 Files to upload for the skill.
917
918 All files must be in the same top-level directory and must include a SKILL.md file at the root of that directory.
919
920#### Returns
921
887922- `id: string`
888923
889924 Unique identifier for the skill version.
from line 957
922957
923958 For Skill Versions, this is always `"skill_version"`.
924959
960 default: skill_version
961
925962- `version: string`
926963
927964 Version identifier for the skill.
from line 965
928965
929966 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
930967
931### Example
968#### Example
932969
933```http
970```bash
934971curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions \
935972 -H 'Content-Type: multipart/form-data' \
936973 -H 'anthropic-version: 2023-06-01' \
from line 976
939976 -F files='["Example data"]'
940977```
941978
942#### Response
979##### Response (200)
943980
944981```json
945982{
from line 991
954991}
955992```
956993
957## List Skill Versions
994### List Skill Versions
958995
959**get** `/v1/skills/{skill_id}/versions`
996**GET** `/v1/skills/{skill_id}/versions`
960997
961998List Skill Versions
962999
963### Path Parameters
1000#### Path parameters
9641001
9651002- `skill_id: string`
9661003
from line 1005
9681005
9691006 The format and length of IDs may change over time.
9701007
971### Query Parameters
1008#### Query parameters
9721009
9731010- `limit: optional number`
9741011
from line 1017
9801017
9811018 Optionally set to the `next_page` token from the previous response.
9821019
983### Header Parameters
1020#### Headers
9841021
9851022- `"anthropic-beta": optional array of AnthropicBeta`
9861023
from line 1095
10581095
10591096 - `"mid-conversation-tool-changes-2026-07-01"`
10601097
1061### Returns
1098#### Returns
10621099
1063- `data: array of object { id, created_at, description, 5 more }`
1100- `data: array of object`
10641101
10651102 List of skill versions.
10661103
from line 1139
11021139
11031140 For Skill Versions, this is always `"skill_version"`.
11041141
1142 default: skill_version
1143
11051144 - `version: string`
11061145
11071146 Version identifier for the skill.
from line 1155
11161155
11171156 Token to provide in as `page` in the subsequent request to retrieve the next page of data.
11181157
1119### Example
1158#### Example
11201159
1121```http
1160```bash
11221161curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions \
11231162 -H 'anthropic-version: 2023-06-01' \
11241163 -H 'anthropic-beta: skills-2025-10-02' \
from line 1164
11251164 -H "X-Api-Key: $ANTHROPIC_API_KEY"
11261165```
11271166
1128#### Response
1167##### Response (200)
11291168
11301169```json
11311170{
from line 1185
11461185}
11471186```
11481187
1149## Download Skill Version Content
1188### Download Skill Version Content
11501189
1151**get** `/v1/skills/{skill_id}/versions/{version}/content`
1190**GET** `/v1/skills/{skill_id}/versions/{version}/content`
11521191
11531192Download a skill version's content as a zip archive.
11541193
1155### Path Parameters
1194#### Path parameters
11561195
11571196- `skill_id: string`
11581197
from line 1205
11661205
11671206 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
11681207
1169### Header Parameters
1208#### Headers
11701209
11711210- `"anthropic-beta": optional array of AnthropicBeta`
11721211
from line 1283
12441283
12451284 - `"mid-conversation-tool-changes-2026-07-01"`
12461285
1247### Example
1286#### Example
12481287
1249```http
1288```bash
12501289curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions/$VERSION/content \
12511290 -H 'anthropic-version: 2023-06-01' \
12521291 -H 'anthropic-beta: skills-2025-10-02' \
from line 1292
12531292 -H "X-Api-Key: $ANTHROPIC_API_KEY"
12541293```
12551294
1256## Get Skill Version
1295### Get Skill Version
12571296
1258**get** `/v1/skills/{skill_id}/versions/{version}`
1297**GET** `/v1/skills/{skill_id}/versions/{version}`
12591298
12601299Get Skill Version
12611300
1262### Path Parameters
1301#### Path parameters
12631302
12641303- `skill_id: string`
12651304
from line 1312
12731312
12741313 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
12751314
1276### Header Parameters
1315#### Headers
12771316
12781317- `"anthropic-beta": optional array of AnthropicBeta`
12791318
from line 1390
13511390
13521391 - `"mid-conversation-tool-changes-2026-07-01"`
13531392
1354### Returns
1393#### Returns
13551394
13561395- `id: string`
13571396
from line 1430
13911430
13921431 For Skill Versions, this is always `"skill_version"`.
13931432
1433 default: skill_version
1434
13941435- `version: string`
13951436
13961437 Version identifier for the skill.
from line 1438
13971438
13981439 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
13991440
1400### Example
1441#### Example
14011442
1402```http
1443```bash
14031444curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions/$VERSION \
14041445 -H 'anthropic-version: 2023-06-01' \
14051446 -H 'anthropic-beta: skills-2025-10-02' \
from line 1447
14061447 -H "X-Api-Key: $ANTHROPIC_API_KEY"
14071448```
14081449
1409#### Response
1450##### Response (200)
14101451
14111452```json
14121453{
from line 1462
14211462}
14221463```
14231464
1424## Delete Skill Version
1465### Delete Skill Version
14251466
1426**delete** `/v1/skills/{skill_id}/versions/{version}`
1467**DELETE** `/v1/skills/{skill_id}/versions/{version}`
14271468
14281469Delete Skill Version
14291470
1430### Path Parameters
1471#### Path parameters
14311472
14321473- `skill_id: string`
14331474
from line 1482
14411482
14421483 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
14431484
1444### Header Parameters
1485#### Headers
14451486
14461487- `"anthropic-beta": optional array of AnthropicBeta`
14471488
from line 1560
15191560
15201561 - `"mid-conversation-tool-changes-2026-07-01"`
15211562
1522### Returns
1563#### Returns
15231564
15241565- `id: string`
15251566
from line 1574
15331574
15341575 For Skill Versions, this is always `"skill_version_deleted"`.
15351576
1536### Example
1577 default: skill_version_deleted
15371578
1538```http
1579#### Example
1580
1581```bash
15391582curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions/$VERSION \
15401583 -X DELETE \
15411584 -H 'anthropic-version: 2023-06-01' \
from line 1586
15431586 -H "X-Api-Key: $ANTHROPIC_API_KEY"
15441587```
15451588
1546#### Response
1589##### Response (200)
15471590
15481591```json
15491592{
from line 1594
15511594 "type": "type"
15521595}
15531596```
1554
1555## Domain Types
1556
1557### Version Create Response
1558
1559- `VersionCreateResponse object { id, created_at, description, 5 more }`
1560
1561 - `id: string`
1562
1563 Unique identifier for the skill version.
1564
1565 The format and length of IDs may change over time.
1566
1567 - `created_at: string`
1568
1569 ISO 8601 timestamp of when the skill version was created.
1570
1571 - `description: string`
1572
1573 Description of the skill version.
1574
1575 This is extracted from the SKILL.md file in the skill upload.
1576
1577 - `directory: string`
1578
1579 Directory name of the skill version.
1580
1581 This is the top-level directory name that was extracted from the uploaded files.
1582
1583 - `name: string`
1584
1585 Human-readable name of the skill version.
1586
1587 This is extracted from the SKILL.md file in the skill upload.
1588
1589 - `skill_id: string`
1590
1591 Identifier for the skill that this version belongs to.
1592
1593 - `type: string`
1594
1595 Object type.
1596
1597 For Skill Versions, this is always `"skill_version"`.
1598
1599 - `version: string`
1600
1601 Version identifier for the skill.
1602
1603 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
1604
1605### Version List Response
1606
1607- `VersionListResponse object { id, created_at, description, 5 more }`
1608
1609 - `id: string`
1610
1611 Unique identifier for the skill version.
1612
1613 The format and length of IDs may change over time.
1614
1615 - `created_at: string`
1616
1617 ISO 8601 timestamp of when the skill version was created.
1618
1619 - `description: string`
1620
1621 Description of the skill version.
1622
1623 This is extracted from the SKILL.md file in the skill upload.
1624
1625 - `directory: string`
1626
1627 Directory name of the skill version.
1628
1629 This is the top-level directory name that was extracted from the uploaded files.
1630
1631 - `name: string`
1632
1633 Human-readable name of the skill version.
1634
1635 This is extracted from the SKILL.md file in the skill upload.
1636
1637 - `skill_id: string`
1638
1639 Identifier for the skill that this version belongs to.
1640
1641 - `type: string`
1642
1643 Object type.
1644
1645 For Skill Versions, this is always `"skill_version"`.
1646
1647 - `version: string`
1648
1649 Version identifier for the skill.
1650
1651 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
1652
1653### Version Retrieve Response
1654
1655- `VersionRetrieveResponse object { id, created_at, description, 5 more }`
1656
1657 - `id: string`
1658
1659 Unique identifier for the skill version.
1660
1661 The format and length of IDs may change over time.
1662
1663 - `created_at: string`
1664
1665 ISO 8601 timestamp of when the skill version was created.
1666
1667 - `description: string`
1668
1669 Description of the skill version.
1670
1671 This is extracted from the SKILL.md file in the skill upload.
1672
1673 - `directory: string`
1674
1675 Directory name of the skill version.
1676
1677 This is the top-level directory name that was extracted from the uploaded files.
1678
1679 - `name: string`
1680
1681 Human-readable name of the skill version.
1682
1683 This is extracted from the SKILL.md file in the skill upload.
1684
1685 - `skill_id: string`
1686
1687 Identifier for the skill that this version belongs to.
1688
1689 - `type: string`
1690
1691 Object type.
1692
1693 For Skill Versions, this is always `"skill_version"`.
1694
1695 - `version: string`
1696
1697 Version identifier for the skill.
1698
1699 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
1700
1701### Version Delete Response
1702
1703- `VersionDeleteResponse object { id, type }`
1704
1705 - `id: string`
1706
1707 Version identifier for the skill.
1708
1709 Each version is identified by a Unix epoch timestamp (e.g., "1759178010641129").
1710
1711 - `type: string`
1712
1713 Deleted object type.
1714
1715 For Skill Versions, this is always `"skill_version_deleted"`.
17161597
No line in this hunk matches that.