Claude Platform Docs

Create Skill Version

SkillVersion skills().versions().create(params, requestOptions = RequestOptions.none())
POST/v1/skills/{skill_id}/versions

Create Skill Version

Parameters
VersionCreateParams params
Optional<String> skillId⁠Path parameter

Unique identifier for the skill.

The format and length of IDs may change over time.

Optional<String> workspaceId⁠Header parameter

Optional header to select the Workspace for this request. The value is a Workspace ID (for example, wrkspc_011CZkZaBF1tNoB5wlCeusgy).

Only needed for credentials that can act on more than one Workspace. A credential that belongs to a specific Workspace may omit it; if sent, it must match that Workspace.

List<String> files

Files to upload for the skill.

All files must be in the same top-level directory and must include a SKILL.md file at the root of that directory.

Returns
class SkillVersion { type = "skill_version"; id; createdAt; /* 3 more */ }
JsonValue type = "skill_version"

Object type.

For Skill Versions, this is always "skill_version".

String id

Unique identifier for this Skill Version. The id addresses the version in paths and pins it in references.

LocalDateTime createdAt

ISO 8601 timestamp of when the skill was created.

formatdate-time
String description

Description of the skill version.

This is extracted from the SKILL.md file in the skill upload.

String name

The Skill's immutable kebab-case slug, set at creation from the first upload's SKILL.md frontmatter name (or its enclosing directory). Every later upload must resolve to the same value. Also the top-level directory of the Skill's mounted files and the base name of a downloaded archive.

String skillId

Unique identifier for the skill.

The format and length of IDs may change over time.

Create Skill Version
package com.anthropic.example;

import com.anthropic.client.AnthropicClient;
import com.anthropic.client.okhttp.AnthropicOkHttpClient;
import com.anthropic.models.skills.versions.SkillVersion;
import com.anthropic.models.skills.versions.VersionCreateParams;
import java.io.ByteArrayInputStream;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        AnthropicClient client = AnthropicOkHttpClient.fromEnv();

        VersionCreateParams params = VersionCreateParams.builder()
            .skillId("skill_id")
            .addFile(new ByteArrayInputStream("Example data".getBytes()))
            .build();
        SkillVersion skillVersion = client.skills().versions().create(params);
    }
}
Returns Examples
Response 200
{
  "id": "id",
  "created_at": "2024-10-30T23:58:27.427722Z",
  "description": "description",
  "name": "name",
  "skill_id": "skill_01JAbcdefghijklmnopqrstuvw",
  "type": "skill_version"
}