jpskill.com
✍️ ライティング コミュニティ

apidog

Apidogは、APIの設計からテスト、モック作成、ドキュメント作成までを支援するAPI開発プラットフォームであり、API開発に関わる一連の作業を効率化するSkill。

📜 元の英語説明(参考)

Apidog API development platform documentation - API design, testing, mocking, and documentation

🇯🇵 日本人クリエイター向け解説

一言でいうと

Apidogは、APIの設計からテスト、モック作成、ドキュメント作成までを支援するAPI開発プラットフォームであり、API開発に関わる一連の作業を効率化するSkill。

※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o apidog.zip https://jpskill.com/download/9203.zip && unzip -o apidog.zip && rm apidog.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/9203.zip -OutFile "$d\apidog.zip"; Expand-Archive "$d\apidog.zip" -DestinationPath $d -Force; ri "$d\apidog.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して apidog.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → apidog フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

Apidog Skill

Apidog は、API の設計、テスト、モック、ドキュメント作成を行うためのオールインワン API 開発プラットフォームです。このプラットフォームに関する包括的な支援を行います。

この Skill を使用するタイミング

この Skill は、以下の場合にトリガーされるべきです。

  • RESTful API の設計またはエンドポイントの定義 (OpenAPI/Swagger specs)
  • API テストシナリオと自動テストワークフローの作成
  • フロントエンド開発またはテストのための API モックの設定
  • Postman、Insomnia、またはその他の API ツールからの移行
  • API ドキュメントの生成と共有の操作
  • API リクエストとレスポンスのデバッグ
  • API ワークフローにおける環境と変数の管理
  • pre/post プロセッサまたはテストスクリプトの記述
  • API セキュリティスキームの実装 (OAuth, API keys, JWT)
  • API 仕様からのコード生成
  • スキーマとデータモデルの操作 (JSON Schema)
  • API テストにおけるデータベース操作 (MySQL, MongoDB, Redis)

クイックリファレンス

基本的な API エンドポイント設計

{
  "method": "POST",
  "path": "/api/users",
  "parameters": {
    "body": {
      "type": "object",
      "properties": {
        "name": { "type": "string" },
        "email": { "type": "string", "format": "email" }
      },
      "required": ["name", "email"]
    }
  },
  "responses": {
    "201": {
      "description": "User created",
      "body": {
        "type": "object",
        "properties": {
          "id": { "type": "integer" },
          "name": { "type": "string" },
          "email": { "type": "string" }
        }
      }
    }
  }
}

リクエストでの変数の使用

// Environment variables
{{base_url}}/api/users/{{user_id}}

// Dynamic values
{
  "timestamp": "{{$timestamp}}",
  "uuid": "{{$guid}}",
  "random_email": "{{$randomEmail}}",
  "random_int": "{{$randomInt}}"
}

データを抽出するための Post-Processor スクリプト

// Extract token from response
const response = pm.response.json();
pm.environment.set("auth_token", response.data.token);

// Extract user ID
pm.environment.set("user_id", response.data.user.id);

// Assert response status
pm.test("Status is 200", function() {
  pm.response.to.have.status(200);
});

基本的なアサーションの例

// Status code assertion
pm.test("Status code is 200", function() {
  pm.response.to.have.status(200);
});

// Response body validation
pm.test("Response has user data", function() {
  const jsonData = pm.response.json();
  pm.expect(jsonData).to.have.property('user');
  pm.expect(jsonData.user).to.have.property('email');
});

// Response time check
pm.test("Response time is less than 500ms", function() {
  pm.expect(pm.response.responseTime).to.be.below(500);
});

モックデータの設定

// Smart Mock - Automatically generates data based on field names
{
  "id": "@integer(1, 1000)",
  "name": "@name",
  "email": "@email",
  "avatar": "@image('200x200')",
  "created_at": "@datetime"
}

// Custom Mock with conditions
{
  "status": "@pick(['active', 'pending', 'disabled'])",
  "age": "@integer(18, 65)",
  "balance": "@float(0, 10000, 2, 2)"
}

動的なヘッダーのための Pre-Processor スクリプト

// Generate timestamp-based signature
const timestamp = Date.now();
const signature = CryptoJS.MD5(timestamp + "secret_key").toString();

pm.request.headers.add({
  key: "X-Timestamp",
  value: timestamp.toString()
});

pm.request.headers.add({
  key: "X-Signature",
  value: signature
});

データ受け渡しを伴うテストシナリオ

// Step 1: Login and save token
// POST /api/login
pm.test("Login successful", function() {
  const response = pm.response.json();
  pm.environment.set("token", response.access_token);
});

// Step 2: Use token in next request
// GET /api/profile
// Headers: Authorization: Bearer {{token}}

// Step 3: Extract and use profile data
pm.test("Profile fetched", function() {
  const profile = pm.response.json();
  pm.environment.set("user_name", profile.name);
});

テストにおけるデータベース操作

// MySQL query in pre-processor
const db = require('db');
const result = db.query('SELECT * FROM users WHERE email = ?', [pm.environment.get('email')]);
pm.environment.set('user_id', result[0].id);

スキーマ合成 (oneOf, allOf, anyOf)

{
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "type": { "const": "credit_card" },
        "card_number": { "type": "string" }
      }
    },
    {
      "type": "object",
      "properties": {
        "type": { "const": "bank_account" },
        "account_number": { "type": "string" }
      }
    }
  ]
}

セキュリティスキームの設定

{
  "securitySchemes": {
    "BearerAuth": {
      "type": "http",
      "scheme": "bearer",
      "bearerFormat": "JWT"
    },
    "ApiKeyAuth": {
      "type": "apiKey",
      "in": "header",
      "name": "X-API-Key"
    }
  }
}

主要な概念

Design-First vs Request-First モード

  • Design-First: 最初に API 仕様を定義し、次に実装とテストを行います。
  • Request-First: リクエストを直接送信し、必要に応じてエンドポイントとして保存します。
  • Apidog は両方のワークフローをシームレスにサポートします。

スキーマとコンポーネント

  • Schemas: 再利用可能なデータモデル (JSON Schema 形式)
  • Components: エンドポイント間で共有されるパラメータ、ヘッダー、レスポンス
  • API 設計における DRY 原則を可能にします。

Smart Mock

以下に基づいて、現実的なモックデータを自動的に生成します。

  • フィールド名 (email, phone, address など)
  • データ型 (string, number, boolean)
  • フォーマット (date-time, uuid, url)
  • カスタムモックルールと優先度

Pre/Post Processors

  • Pre-processors: リクエストの前に実行されます (セットアップ、認証、動的データ)。
  • Post-processors: レスポンスの後に実行されます (アサーション、データ抽出、検証)。
  • スクリプト、データベース操作、変数抽出、アサーションをサポートします。

テストシナリオ

  • 複数の API リクエストを連鎖させます。
  • 変数を使用してリクエスト間でデータを渡します。
  • 条件付きロジックとループを追加します。
  • 包括的なテストレポートを生成します。

環境と変数

  • 環境変数
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

Apidog Skill

Comprehensive assistance with Apidog - an all-in-one API development platform for designing, testing, mocking, and documenting APIs.

When to Use This Skill

This skill should be triggered when:

  • Designing RESTful APIs or defining endpoints (OpenAPI/Swagger specs)
  • Creating API test scenarios and automated testing workflows
  • Setting up API mocking for frontend development or testing
  • Migrating from Postman, Insomnia, or other API tools
  • Working with API documentation generation and sharing
  • Debugging API requests and responses
  • Managing environments and variables in API workflows
  • Writing pre/post processors or test scripts
  • Implementing API security schemes (OAuth, API keys, JWT)
  • Generating code from API specifications
  • Working with schemas and data models (JSON Schema)
  • Database operations in API testing (MySQL, MongoDB, Redis)

Quick Reference

Basic API Endpoint Design

{
  "method": "POST",
  "path": "/api/users",
  "parameters": {
    "body": {
      "type": "object",
      "properties": {
        "name": { "type": "string" },
        "email": { "type": "string", "format": "email" }
      },
      "required": ["name", "email"]
    }
  },
  "responses": {
    "201": {
      "description": "User created",
      "body": {
        "type": "object",
        "properties": {
          "id": { "type": "integer" },
          "name": { "type": "string" },
          "email": { "type": "string" }
        }
      }
    }
  }
}

Using Variables in Requests

// Environment variables
{{base_url}}/api/users/{{user_id}}

// Dynamic values
{
  "timestamp": "{{$timestamp}}",
  "uuid": "{{$guid}}",
  "random_email": "{{$randomEmail}}",
  "random_int": "{{$randomInt}}"
}

Post-Processor Script for Extracting Data

// Extract token from response
const response = pm.response.json();
pm.environment.set("auth_token", response.data.token);

// Extract user ID
pm.environment.set("user_id", response.data.user.id);

// Assert response status
pm.test("Status is 200", function() {
  pm.response.to.have.status(200);
});

Basic Assertion Examples

// Status code assertion
pm.test("Status code is 200", function() {
  pm.response.to.have.status(200);
});

// Response body validation
pm.test("Response has user data", function() {
  const jsonData = pm.response.json();
  pm.expect(jsonData).to.have.property('user');
  pm.expect(jsonData.user).to.have.property('email');
});

// Response time check
pm.test("Response time is less than 500ms", function() {
  pm.expect(pm.response.responseTime).to.be.below(500);
});

Setting Up Mock Data

// Smart Mock - Automatically generates data based on field names
{
  "id": "@integer(1, 1000)",
  "name": "@name",
  "email": "@email",
  "avatar": "@image('200x200')",
  "created_at": "@datetime"
}

// Custom Mock with conditions
{
  "status": "@pick(['active', 'pending', 'disabled'])",
  "age": "@integer(18, 65)",
  "balance": "@float(0, 10000, 2, 2)"
}

Pre-Processor Script for Dynamic Headers

// Generate timestamp-based signature
const timestamp = Date.now();
const signature = CryptoJS.MD5(timestamp + "secret_key").toString();

pm.request.headers.add({
  key: "X-Timestamp",
  value: timestamp.toString()
});

pm.request.headers.add({
  key: "X-Signature",
  value: signature
});

Test Scenario with Data Passing

// Step 1: Login and save token
// POST /api/login
pm.test("Login successful", function() {
  const response = pm.response.json();
  pm.environment.set("token", response.access_token);
});

// Step 2: Use token in next request
// GET /api/profile
// Headers: Authorization: Bearer {{token}}

// Step 3: Extract and use profile data
pm.test("Profile fetched", function() {
  const profile = pm.response.json();
  pm.environment.set("user_name", profile.name);
});

Database Operation in Tests

// MySQL query in pre-processor
const db = require('db');
const result = db.query('SELECT * FROM users WHERE email = ?', [pm.environment.get('email')]);
pm.environment.set('user_id', result[0].id);

Schema Composition (oneOf, allOf, anyOf)

{
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "type": { "const": "credit_card" },
        "card_number": { "type": "string" }
      }
    },
    {
      "type": "object",
      "properties": {
        "type": { "const": "bank_account" },
        "account_number": { "type": "string" }
      }
    }
  ]
}

Security Scheme Configuration

{
  "securitySchemes": {
    "BearerAuth": {
      "type": "http",
      "scheme": "bearer",
      "bearerFormat": "JWT"
    },
    "ApiKeyAuth": {
      "type": "apiKey",
      "in": "header",
      "name": "X-API-Key"
    }
  }
}

Key Concepts

Design-First vs Request-First Mode

  • Design-First: Define API specifications first, then implement and test
  • Request-First: Send requests directly, then optionally save as endpoints
  • Apidog supports both workflows seamlessly

Schemas and Components

  • Schemas: Reusable data models (JSON Schema format)
  • Components: Shared parameters, headers, responses across endpoints
  • Enables DRY principles in API design

Smart Mock

Automatically generates realistic mock data based on:

  • Field names (email, phone, address, etc.)
  • Data types (string, number, boolean)
  • Formats (date-time, uuid, url)
  • Custom mock rules and priorities

Pre/Post Processors

  • Pre-processors: Run before request (setup, auth, dynamic data)
  • Post-processors: Run after response (assertions, data extraction, validation)
  • Support scripts, database operations, variable extraction, assertions

Test Scenarios

  • Chain multiple API requests together
  • Pass data between requests using variables
  • Add conditional logic and loops
  • Generate comprehensive test reports

Environments & Variables

  • Environment variables: Configuration per environment (dev, staging, prod)
  • Global variables: Shared across all environments
  • Temporary variables: Exist only during test scenario execution
  • Vault secrets: Secure storage (HashiCorp, Azure, AWS integration)

Reference Files

This skill includes comprehensive documentation in references/:

  • api.md - Complete Apidog documentation including:
    • Getting Started: Introduction, navigation, basic concepts, quick start guides
    • Migration: Import from Postman, Insomnia, Swagger/OpenAPI, cURL, HAR files
    • API Design: Endpoint specifications, schemas, components, security schemes, modules
    • Development & Debugging: Requests, responses, environments, variables, code generation
    • Pre/Post Processors: Assertions, scripts, database operations, variable extraction
    • Mock Data: Smart mock, custom mock, mock scripts, cloud vs self-hosted
    • Testing: Test scenarios, automation, reports, data passing between requests
    • Dynamic Values Modules: Faker.js integration for realistic test data (50+ modules)
    • Collaboration: Team management, permissions, version control
    • Documentation: Auto-generation, sharing, customization
    • Integration: CI/CD, webhooks, CLI, API

Use the reference file when you need:

  • Detailed feature explanations
  • Advanced configuration options
  • Migration guides and import procedures
  • Comprehensive scripting examples
  • Database integration patterns
  • Complete dynamic values reference

Working with This Skill

For Beginners

Start with these core concepts:

  1. Creating your first endpoint: Define method, path, parameters, and responses
  2. Making requests: Use the request panel to test endpoints
  3. Basic assertions: Validate status codes and response bodies
  4. Environments: Set up dev/staging/prod configurations
  5. Mock data: Enable mock server for frontend development

Refer to the Quick Start section in references/api.md for step-by-step tutorials.

For Intermediate Users

Focus on:

  1. Schema design: Create reusable data models with JSON Schema
  2. Test scenarios: Chain requests and pass data between them
  3. Pre/Post processors: Add custom logic with scripts
  4. Dynamic values: Use Faker.js modules for realistic test data
  5. Security schemes: Implement OAuth, JWT, API key authentication

For Advanced Users

Explore:

  1. Database operations: Query MySQL/MongoDB/Redis in tests
  2. Custom scripts: Use JavaScript libraries and external languages
  3. Schema composition: Leverage oneOf, allOf, anyOf for complex models
  4. CI/CD integration: Automate testing in pipelines
  5. Team collaboration: Version control, branches, merge conflicts
  6. API documentation: Customize and publish interactive docs

For Migration

If coming from other tools:

  • Postman users: Import collections, environments, and globals
  • Insomnia users: Import workspaces and requests
  • Swagger users: Import OpenAPI 2.0/3.0 specifications
  • cURL users: Paste cURL commands directly
  • Check references/api.md Migration section for detailed guides

Navigation Tips

  • Use Ctrl/Cmd+K for quick search across documentation
  • Check the Table of Contents in api.md for specific topics
  • Dynamic Values Modules section lists all available Faker.js functions
  • Script examples section shows common patterns for assertions and data manipulation

Common Workflows

Workflow 1: Design → Mock → Test → Document

  1. Design API endpoints with schemas
  2. Enable smart mock for realistic data
  3. Write test scenarios with assertions
  4. Auto-generate and share documentation

Workflow 2: Import → Enhance → Automate

  1. Import from Postman/Swagger
  2. Add schemas and components for reusability
  3. Create test scenarios with data passing
  4. Integrate with CI/CD pipeline

Workflow 3: Request-First Development

  1. Send ad-hoc requests to explore APIs
  2. Save successful requests as endpoints
  3. Add schemas from response bodies
  4. Build test scenarios from saved requests

Resources

Official Documentation

All content is sourced from https://docs.apidog.com/

Dynamic Values Reference

Apidog includes 50+ Faker.js modules for test data:

  • Person (names, emails, phones)
  • Internet (URLs, IPs, domains)
  • Commerce (products, prices)
  • Date/Time (timestamps, future/past dates)
  • Location (addresses, coordinates)
  • Finance (credit cards, transactions)
  • And many more - see Dynamic Values Modules in api.md

Database Support

  • MySQL / PostgreSQL
  • MongoDB
  • Redis
  • Oracle

Scripting Languages

  • JavaScript (primary)
  • Python, PHP, Go, Java (via external execution)

Import/Export Formats

  • OpenAPI 2.0 / 3.0
  • Postman Collection v1/v2
  • Insomnia v4
  • HAR (HTTP Archive)
  • cURL
  • WSDL
  • Markdown

Notes

  • This skill was automatically generated from official Apidog documentation
  • Code examples preserve syntax from source docs with proper language detection
  • Quick reference examples are extracted from real-world usage patterns
  • Reference file maintains hierarchical structure of official documentation

Updating

To refresh this skill with updated documentation:

  1. Re-run the scraper with the same configuration
  2. The skill will be rebuilt with the latest information from docs.apidog.com