搜索

PythonReactSEOPDF
GitHub Skill

api-design

REST APIを設計する際に使用。RESTful原則とエラーハンドリングをカバー。

TakumiOkayasu☆ 0 仓库 Stars0 仓库 Forks

安装与使用

请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。

查看来源 ↗使用指南

技能说明

API Design

📋 実行前チェック(必須)

このスキルを使うべきか?
  • REST APIを設計する?
  • エンドポイントを新規作成する?
  • エラーレスポンス形式を検討する?
  • APIバージョニングを検討する?
前提条件
  • 対象リソースを明確に定義したか?
  • クライアントの利用シナリオを理解しているか?
  • 認証・認可の要件を把握しているか?
  • 既存APIとの一貫性を確認したか?
禁止事項の確認
  • 動詞をエンドポイントに含めようとしていないか?(/getUsers → /users)
  • 500エラーで内部詳細を露出しようとしていないか?
  • 破壊的変更をバージョンアップなしで行おうとしていないか?
  • 一貫性のないレスポンス形式を使おうとしていないか?

トリガー

  • REST API設計時
  • エンドポイント新規作成時
  • エラーレスポンス形式検討時
  • APIバージョニング検討時

🚨 鉄則

APIは契約。公開後の変更は困難。


RESTful設計

GET    /users          # 一覧
GET    /users/123      # 取得
POST   /users          # 作成
PUT    /users/123      # 全更新
PATCH  /users/123      # 部分更新
DELETE /users/123      # 削除

ステータスコード

200 OK           - 成功
201 Created      - 作成成功
400 Bad Request  - ⚠️ バリデーションエラー
401 Unauthorized - 認証必要
403 Forbidden    - 権限なし
404 Not Found    - リソースなし
500 Internal     - 🚫 詳細を隠す

エラーレスポンス

{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Validation failed",
    "details": [
      { "field": "email", "message": "Invalid format" }
    ]
  }
}

⚠️ バージョニング

/v1/users
/v2/users

破壊的変更はメジャーバージョンアップ。


レート制限

X-RateLimit-Limit: 100
X-RateLimit-Remaining: 95

429 Too Many Requests
Retry-After: 60

🚫 禁止事項まとめ

  • 動詞をエンドポイントに含める(/getUsers, /createUser)
  • 500エラーで内部スタックトレースを露出
  • バージョンアップなしの破壊的変更
  • 一貫性のないレスポンス形式

使用示例

查看来源仓库中的使用示例与配置说明。

查看来源 ↗

来源历史

收录时间
2026-01-20
索引更新时间
2026-01-26
Branch
main

收录与同步日期属于本站记录。源码修改历史请查看来源仓库。

GitHub ↗

chat Comments (0)

chat_bubble_outline

No comments yet. Be the first to share your thoughts!