api-patterns について
api-patternsは、APIの設計方針を選ぶ開発者向けスキルです。テーマ別のリファレンス、判断チェックリスト、エンドポイント検証スクリプトで構成されています。
主な機能
- 01REST、GraphQL、tRPCの選択ガイド
- 02RESTのリソース名とHTTPメソッドの指針
- 03レスポンス、エラー、ページネーションのパターン
- 04バージョニング、認証、レート制限
- 05OpenAPI文書化とセキュリティテスト
- 06エンドポイント検証スクリプト
活用シーン
- 01プロジェクトに適したAPI形式の選択
- 02一貫したレスポンス形式とAPIバージョンの計画
- 03認証とレート制限方式の選定
- 04APIエンドポイントの検証
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ davila7/ claude-code-templates --skill api-patternsインストール後、Claude Code で/api-patternsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
api-style.mdauth.mddocumentation.mdgraphql.mdrate-limiting.mdresponse.mdrest.mdsecurity-testing.mdtrpc.mdversioning.mdscripts/api_validator.py詳細
API パターン
2025年の API 設計の原則と意思決定。 固定パターンをコピーするのではなく、考え方を学ぶ。
🎯 選択的読み取りルール
リクエストに関連するファイルのみを読んでください! コンテンツマップを確認し、必要なものを見つけてください。
📑 コンテンツマップ
| ファイル | 説明 | 読むタイミング |
|---|---|---|
api-style.md | REST と GraphQL と tRPC の判断ツリー | API の種類を選ぶとき |
rest.md | リソース命名、HTTP メソッド、ステータスコード | REST API を設計するとき |
response.md | エンベロープパターン、エラー形式、ページネーション | レスポンス構造 |
graphql.md | スキーマ設計、使用場面、セキュリティ | GraphQL を検討するとき |
trpc.md | TypeScript モノレポ、型安全性 | TS フルスタックプロジェクト |
versioning.md | URI/ヘッダー/クエリによるバージョニング | API の進化計画 |
auth.md | JWT、OAuth、Passkey、API キー | 認証パターンの選択 |
rate-limiting.md | トークンバケット、スライディングウィンドウ | API の保護 |
documentation.md | OpenAPI/Swagger のベストプラクティス | ドキュメント |
security-testing.md | OWASP API Top 10、認証/認可のテスト | セキュリティ監査 |
🔗 関連スキル
| 必要なもの | スキル |
|---|---|
| API の実装 | @[skills/backend-development] |
| データ構造 | @[skills/database-design] |
| セキュリティの詳細 | @[skills/security-hardening] |
✅ 意思決定チェックリスト
API を設計する前に:
- API の利用者についてユーザーに確認したか?
- 今回の状況に合った API スタイルを選んだか? (REST/GraphQL/tRPC)
- 一貫したレスポンス形式を定義したか?
- バージョニング戦略を計画したか?
- 認証の必要性を検討したか?
- レート制限を計画したか?
- ドキュメントのアプローチを定義したか?
❌ アンチパターン
やってはいけないこと:
- 何にでも REST をデフォルトで使う
- REST のエンドポイントに動詞を使う (/getUsers)
- 一貫性のないレスポンス形式を返す
- 内部エラーをクライアントに公開する
- レート制限を省略する
推奨:
- 状況に基づいて API スタイルを選ぶ
- クライアントの要件を確認する
- ドキュメントを十分に整備する
- 適切なステータスコードを使用する
スクリプト
| スクリプト | 目的 | コマンド |
|---|---|---|
scripts/api_validator.py | API エンドポイントの検証 | python scripts/api_validator.py <project_path> |
コメント
Markdown 対応