from line 1
1---
2title: Skills
3url: https://platform.claude.com/docs/en/api/skills
4---
5
61# Skills
72
83## Create Skill
94
10**post** `/v1/skills`
5**POST** `/v1/skills`
116
127Create Skill
138
9### Body parameters (form-data)
10
11- `files: array of string`
12
13 Files to upload for the skill.
14
15 All files must be in the same top-level directory and must include a SKILL.md file at the root of that directory.
16
17- `display_name: optional string or null`
18
19 Human-readable, single-line label for the Skill. Maximum 255 characters.
20 Always set: derived from the SKILL.md frontmatter `name` when omitted at
21 creation. Not unique.
22
1423### Returns
1524
16- `Skill object { id, created_at, display_name, 4 more }`
25- `Skill object`
1726
1827 - `id: string`
1928
from line 34
2534
2635 ISO 8601 timestamp of when the skill was created.
2736
37 format: date-time
38
2839 - `display_name: string`
2940
3041 Human-readable, single-line label for the Skill. Maximum 255 characters.
from line 82
7182
7283 For Skills, this is always `"skill"`.
7384
74 - `"skill"`
85 default: skill
7586
7687 - `updated_at: string`
7788
7889 ISO 8601 timestamp of when the skill was last updated.
7990
91 format: date-time
92
8093### Example
8194
82```http
95```bash
8396curl https://api.anthropic.com/v1/skills \
8497 -H 'Content-Type: multipart/form-data' \
8598 -H 'anthropic-version: 2023-06-01' \
from line 100
87100 -F files='["Example data"]'
88101```
89102
90#### Response
103#### Response (200)
91104
92105```json
93106{
from line 118
105118
106119## List Skills
107120
108**get** `/v1/skills`
121**GET** `/v1/skills`
109122
110123List Skills
111124
112### Query Parameters
125### Query parameters
113126
114127- `limit: optional number`
115128
from line 130
117130
118131 Ranges from `1` to `1000`. Defaults to `20`.
119132
133 default: 20, minimum: 1, maximum: 1000
134
120135- `page: optional string`
121136
122137 Pagination token for fetching a specific page of results.
from line 163
148163
149164 ISO 8601 timestamp of when the skill was created.
150165
166 format: date-time
167
151168 - `display_name: string`
152169
153170 Human-readable, single-line label for the Skill. Maximum 255 characters.
from line 211
194211
195212 For Skills, this is always `"skill"`.
196213
197 - `"skill"`
214 default: skill
198215
199216 - `updated_at: string`
200217
201218 ISO 8601 timestamp of when the skill was last updated.
202219
220 format: date-time
221
203222- `next_page: string or null`
204223
205224 Token for fetching the next page of results.
from line 227
208227
209228### Example
210229
211```http
230```bash
212231curl https://api.anthropic.com/v1/skills \
213232 -H 'anthropic-version: 2023-06-01' \
214233 -H "X-Api-Key: $ANTHROPIC_API_KEY"
215234```
216235
217#### Response
236#### Response (200)
218237
219238```json
220239{
from line 256
237256
238257## Get Skill
239258
240**get** `/v1/skills/{skill_id}`
259**GET** `/v1/skills/{skill_id}`
241260
242261Get Skill
243262
244### Path Parameters
263### Path parameters
245264
246265- `skill_id: string`
247266
from line 270
251270
252271### Returns
253272
254- `Skill object { id, created_at, display_name, 4 more }`
273- `Skill object`
255274
256275 - `id: string`
257276
from line 282
263282
264283 ISO 8601 timestamp of when the skill was created.
265284
285 format: date-time
286
266287 - `display_name: string`
267288
268289 Human-readable, single-line label for the Skill. Maximum 255 characters.
from line 330
309330
310331 For Skills, this is always `"skill"`.
311332
312 - `"skill"`
333 default: skill
313334
314335 - `updated_at: string`
315336
316337 ISO 8601 timestamp of when the skill was last updated.
317338
339 format: date-time
340
318341### Example
319342
320```http
343```bash
321344curl https://api.anthropic.com/v1/skills/$SKILL_ID \
322345 -H 'anthropic-version: 2023-06-01' \
323346 -H "X-Api-Key: $ANTHROPIC_API_KEY"
324347```
325348
326#### Response
349#### Response (200)
327350
328351```json
329352{
from line 364
341364
342365## Delete Skill
343366
344**delete** `/v1/skills/{skill_id}`
367**DELETE** `/v1/skills/{skill_id}`
345368
346369Delete Skill
347370
348### Path Parameters
371### Path parameters
349372
350373- `skill_id: string`
351374
from line 378
355378
356379### Returns
357380
358- `DeletedSkill object { id, type }`
381- `DeletedSkill object`
359382
360383 - `id: string`
361384
from line 392
369392
370393 For Skills, this is always `"skill_deleted"`.
371394
372 - `"skill_deleted"`
395 default: skill_deleted
373396
374397### Example
375398
376```http
399```bash
377400curl https://api.anthropic.com/v1/skills/$SKILL_ID \
378401 -X DELETE \
379402 -H 'anthropic-version: 2023-06-01' \
from line 403
380403 -H "X-Api-Key: $ANTHROPIC_API_KEY"
381404```
382405
383#### Response
406#### Response (200)
384407
385408```json
386409{
from line 412
389412}
390413```
391414
392## Domain Types
415## Domain types
393416
394417### Deleted Skill
395418
396- `DeletedSkill object { id, type }`
419- `DeletedSkill object`
397420
398421 - `id: string`
399422
from line 430
407430
408431 For Skills, this is always `"skill_deleted"`.
409432
410 - `"skill_deleted"`
433 default: skill_deleted
411434
412435### Skill
413436
414- `Skill object { id, created_at, display_name, 4 more }`
437- `Skill object`
415438
416439 - `id: string`
417440
from line 446
423446
424447 ISO 8601 timestamp of when the skill was created.
425448
449 format: date-time
450
426451 - `display_name: string`
427452
428453 Human-readable, single-line label for the Skill. Maximum 255 characters.
from line 494
469494
470495 For Skills, this is always `"skill"`.
471496
472 - `"skill"`
497 default: skill
473498
474499 - `updated_at: string`
475500
476501 ISO 8601 timestamp of when the skill was last updated.
477502
503 format: date-time
504
478505### Skill Source
479506
480- `SkillSource object { type }`
507- `SkillSource object`
481508
482509 - `type: "custom" or "anthropic" or "anthropic_example" or "plugin"`
483510
from line 525
498525
499526 - `"plugin"`
500527
501# Versions
528## Skills › Versions
502529
503## Create Skill Version
530### Create Skill Version
504531
505**post** `/v1/skills/{skill_id}/versions`
532**POST** `/v1/skills/{skill_id}/versions`
506533
507534Create Skill Version
508535
509### Path Parameters
536#### Path parameters
510537
511538- `skill_id: string`
512539
from line 541
514541
515542 The format and length of IDs may change over time.
516543
517### Returns
544#### Body parameters (form-data)
518545
519- `SkillVersion object { id, created_at, description, 3 more }`
546- `files: array of string`
520547
548 Files to upload for the skill.
549
550 All files must be in the same top-level directory and must include a SKILL.md file at the root of that directory.
551
552#### Returns
553
554- `SkillVersion object`
555
521556 - `id: string`
522557
523558 Unique identifier for this Skill Version. The id addresses the version in
from line 562
527562
528563 ISO 8601 timestamp of when the skill was created.
529564
565 format: date-time
566
530567 - `description: string`
531568
532569 Description of the skill version.
from line 589
552589
553590 For Skill Versions, this is always `"skill_version"`.
554591
555 - `"skill_version"`
592 default: skill_version
556593
557### Example
594#### Example
558595
559```http
596```bash
560597curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions \
561598 -H 'Content-Type: multipart/form-data' \
562599 -H 'anthropic-version: 2023-06-01' \
from line 601
564601 -F files='["Example data"]'
565602```
566603
567#### Response
604##### Response (200)
568605
569606```json
570607{
from line 614
577614}
578615```
579616
580## List Skill Versions
617### List Skill Versions
581618
582**get** `/v1/skills/{skill_id}/versions`
619**GET** `/v1/skills/{skill_id}/versions`
583620
584621List Skill Versions
585622
586### Path Parameters
623#### Path parameters
587624
588625- `skill_id: string`
589626
from line 628
591628
592629 The format and length of IDs may change over time.
593630
594### Query Parameters
631#### Query parameters
595632
596633- `limit: optional number`
597634
from line 636
599636
600637 Ranges from `1` to `1000`. Defaults to `20`.
601638
639 default: 20, minimum: 1, maximum: 1000
640
602641- `page: optional string`
603642
604643 Optionally set to the `next_page` token from the previous response.
605644
606### Returns
645#### Returns
607646
608647- `data: array of SkillVersion`
609648
from line 657
618657
619658 ISO 8601 timestamp of when the skill was created.
620659
660 format: date-time
661
621662 - `description: string`
622663
623664 Description of the skill version.
from line 684
643684
644685 For Skill Versions, this is always `"skill_version"`.
645686
646 - `"skill_version"`
687 default: skill_version
647688
648689- `next_page: string or null`
649690
from line 692
651692
652693 If `null`, there are no more results available. Pass this value to the `page` parameter in the next request to get the next page.
653694
654### Example
695#### Example
655696
656```http
697```bash
657698curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions \
658699 -H 'anthropic-version: 2023-06-01' \
659700 -H "X-Api-Key: $ANTHROPIC_API_KEY"
660701```
661702
662#### Response
703##### Response (200)
663704
664705```json
665706{
from line 718
677718}
678719```
679720
680## Get Skill Version
721### Get Skill Version
681722
682**get** `/v1/skills/{skill_id}/versions/{version}`
723**GET** `/v1/skills/{skill_id}/versions/{version}`
683724
684725Get Skill Version
685726
686### Path Parameters
727#### Path parameters
687728
688729- `skill_id: string`
689730
from line 738
697738
698739 Requests carrying the `skills-2025-10-02` beta header address versions by their Unix epoch timestamp instead (e.g., "1759178010641129").
699740
700### Returns
741#### Returns
701742
702- `SkillVersion object { id, created_at, description, 3 more }`
743- `SkillVersion object`
703744
704745 - `id: string`
705746
from line 751
710751
711752 ISO 8601 timestamp of when the skill was created.
712753
754 format: date-time
755
713756 - `description: string`
714757
715758 Description of the skill version.
from line 778
735778
736779 For Skill Versions, this is always `"skill_version"`.
737780
738 - `"skill_version"`
781 default: skill_version
739782
740### Example
783#### Example
741784
742```http
785```bash
743786curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions/$VERSION \
744787 -H 'anthropic-version: 2023-06-01' \
745788 -H "X-Api-Key: $ANTHROPIC_API_KEY"
746789```
747790
748#### Response
791##### Response (200)
749792
750793```json
751794{
from line 801
758801}
759802```
760803
761## Delete Skill Version
804### Delete Skill Version
762805
763**delete** `/v1/skills/{skill_id}/versions/{version}`
806**DELETE** `/v1/skills/{skill_id}/versions/{version}`
764807
765808Delete Skill Version
766809
767### Path Parameters
810#### Path parameters
768811
769812- `skill_id: string`
770813
from line 821
778821
779822 Requests carrying the `skills-2025-10-02` beta header address versions by their Unix epoch timestamp instead (e.g., "1759178010641129").
780823
781### Returns
824#### Returns
782825
783- `DeletedSkillVersion object { id, type }`
826- `DeletedSkillVersion object`
784827
785828 - `id: string`
786829
from line 836
793836
794837 For Skill Versions, this is always `"skill_version_deleted"`.
795838
796 - `"skill_version_deleted"`
839 default: skill_version_deleted
797840
798### Example
841#### Example
799842
800```http
843```bash
801844curl https://api.anthropic.com/v1/skills/$SKILL_ID/versions/$VERSION \
802845 -X DELETE \
803846 -H 'anthropic-version: 2023-06-01' \
from line 847
804847 -H "X-Api-Key: $ANTHROPIC_API_KEY"
805848```
806849
807#### Response
850##### Response (200)
808851
809852```json
810853{
from line 855
812855 "type": "skill_version_deleted"
813856}
814857```
815
816## Domain Types
817
818### Deleted Skill Version
819
820- `DeletedSkillVersion object { id, type }`
821
822 - `id: string`
823
824 Unique identifier for this Skill Version. The id addresses the version in
825 paths and pins it in references.
826
827 - `type: "skill_version_deleted"`
828
829 Deleted object type.
830
831 For Skill Versions, this is always `"skill_version_deleted"`.
832
833 - `"skill_version_deleted"`
834
835### Skill Version
836
837- `SkillVersion object { id, created_at, description, 3 more }`
838
839 - `id: string`
840
841 Unique identifier for this Skill Version. The id addresses the version in
842 paths and pins it in references.
843
844 - `created_at: string`
845
846 ISO 8601 timestamp of when the skill was created.
847
848 - `description: string`
849
850 Description of the skill version.
851
852 This is extracted from the SKILL.md file in the skill upload.
853
854 - `name: string`
855
856 The Skill's immutable kebab-case slug, set at creation from the first
857 upload's SKILL.md frontmatter `name` (or its enclosing directory). Every
858 later upload must resolve to the same value. Also the top-level directory
859 of the Skill's mounted files and the base name of a downloaded archive.
860
861 - `skill_id: string`
862
863 Unique identifier for the skill.
864
865 The format and length of IDs may change over time.
866
867 - `type: "skill_version"`
868
869 Object type.
870
871 For Skill Versions, this is always `"skill_version"`.
872
873 - `"skill_version"`
874858
No line in this hunk matches that.