본문으로 건너뛰기
cccskills
무료GitHub에 공개

team-api-conventions

API design conventions for this codebase. Use whenever writing or reviewing API endpoints, route handlers, or HTTP clients.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md2.8 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Team API conventions

Apply these conventions whenever you write, review, or modify API endpoints, route handlers, request validation, or HTTP client code in this codebase.

REST naming

  • Use lowercase, hyphen-separated resource names in URLs: /user-profiles, not /userProfiles or /user_profiles.
  • Resources are plural nouns: /invoices, /line-items, not /invoice, /lineItem.
  • Nested resources express ownership: /invoices/{id}/line-items.
  • Actions that do not map cleanly to CRUD use a verb suffix on the resource: /invoices/{id}/send, /invoices/{id}/void.
  • Query parameters are camelCase: ?pageSize=20&startAfter=abc.

Response format

All API responses use a consistent envelope:

{
  "data": {},
  "meta": {
    "requestId": "uuid",
    "timestamp": "ISO-8601"
  }
}

List responses add pagination to meta:

{
  "data": [],
  "meta": {
    "requestId": "uuid",
    "timestamp": "ISO-8601",
    "pagination": {
      "total": 142,
      "pageSize": 20,
      "nextCursor": "opaque-string-or-null"
    }
  }
}

Do not return bare arrays or bare objects at the top level.

Error format

{
  "error": {
    "code": "INVOICE_NOT_FOUND",
    "message": "No invoice with id 'xyz' exists.",
    "requestId": "uuid"
  }
}
  • code is SCREAMING_SNAKE_CASE and stable across releases. Client code switches on this value.
  • message is human-readable and may change between releases.
  • HTTP status codes: 400 for client errors, 401 for unauthenticated, 403 for unauthorized, 404 for not found, 409 for conflicts, 422 for validation failures, 500 for server errors. Do not use 200 with an error body.

Versioning

  • Version in the URL path: /v1/invoices, /v2/invoices.
  • Never version individual endpoints separately. When a breaking change is needed, version the entire API surface together.
  • Maintain at least one prior major version for six months after a new version is released.

Authentication

  • All authenticated requests use the header Authorization: Bearer <token>.
  • Never accept tokens as query parameters. Log warnings if a query parameter token is detected (it may have been sent by an older client).
  • Service-to-service calls use X-Service-Token instead of Authorization and are validated differently at the gateway.

When reviewing API code

Flag any of the following as review comments:

  • Bare array or bare object response bodies
  • Missing requestId in responses
  • Error bodies that return 200 OK
  • Tokens accepted via query parameters
  • Inconsistent resource naming (mixed plural/singular, mixed casing)

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Write an Architecture Decision Record (ADR) document for a technical decision. Use when documenting a technical choice, architectural decision, or design decision.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

davila7/claude-with-skills132026년 5월 15일 업데이트

REST API design conventions for this codebase. Use when writing or reviewing API endpoints, route definitions, response formatting, or client code that calls the API.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

davila7/claude-with-skills132026년 5월 15일 업데이트

Automatically format code files after every edit using Prettier and ESLint. Active in the background whenever Claude edits a file. Formatting is silent — no prompts, no output unless a formatter fails. Use when you want consistent formatting enforced automatically during a coding session.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

davila7/claude-with-skills132026년 5월 15일 업데이트

Create a git branch named after a GitHub issue.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

davila7/claude-with-skills132026년 5월 15일 업데이트

Draft the changelog entry for all unreleased commits in Keep a Changelog format. Groups commits into Added, Changed, Fixed, Removed, and Security. Use before releasing a new version or when updating CHANGELOG.md.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

davila7/claude-with-skills132026년 5월 15일 업데이트

Draft a CHANGELOG.md entry for the current changes in Keep a Changelog format. Use when releasing, tagging a version, or updating CHANGELOG.md.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

davila7/claude-with-skills132026년 5월 15일 업데이트

davila7의 스킬 모두 보기

이 스킬의 문제 신고