Best for
- Implementing an already-designed endpoint (use api-endpoint skill)
- Writing tests for APIs (use api-testing skill)
event4u-app/agent-config/src/skills/api-design/SKILL.md
Use when designing APIs, planning endpoints, REST conventions, versioning, or deprecation — even when the user just says 'expose this as an endpoint' without naming API design.
Decision brief
Grounded corpus (Tier-1 consultation): pagination, versioning, error shape (RFC 9457), idempotency, async ops, rate limiting, bulk, naming, expansion, webhooks — query ./scripts-run /corpus-grounding/scripts/ground search --manifest /api-design/data/manifest.json "" and propose…
Compatibility matrix
| Platform | Status | Evidence | What to check |
|---|---|---|---|
| Codex | Not declared | No explicit evidence | Portability before use |
| Claude Code | Not declared | No explicit evidence | Portability before use |
| Cursor | Not declared | No explicit evidence | Portability before use |
| Gemini CLI | Not declared | No explicit evidence | Portability before use |
Installation
The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/api-design"Inspect the Agent Skill "api-design" from https://github.com/event4u-app/agent-config/blob/0adf49a8ae84b0ff6e2de8759eea43257e020eff/src/skills/api-design/SKILL.md at commit 0adf49a8ae84b0ff6e2de8759eea43257e020eff. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.
Workflow
1. Gather context — read agents/settings/contexts/api-versioning.md, agents/reference/docs/api-resources.md, agents/reference/docs/query-filter.md, agents/reference/docs/controller.md, and guideline php/api-design.md. 2. Identify the resource — determine the domain entity, its a…
1. Mark as deprecated — add headers: Deprecation: true, Sunset: YYYY-MM-DD, Link: 2. Document — add to API changelog with sunset date 3. Monitor usage — track clients still using deprecated endpoints 4. Remove — after sunset date, remove route + controller + docs
Before presenting an API design, run the adversarial-review skill. Focus on: Breaking changes? Consistency? Error responses?
Use this skill when designing new API endpoints, restructuring existing APIs, or deciding about versioning and deprecation.
Routes versioned via URL prefix: /api/v1/..., /api/v2/...
Permission review
No configured static risk pattern was detected
This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.
Evidence record
| Signal | Value | Evidence type | Meaning |
|---|---|---|---|
| Quality score | 95/100 | Computed | Documentation, specificity, maintenance, and trust rules |
| Repository stars | 7 | Source | Repository attention, not individual Skill quality |
| Compatibility | 0 platforms | Source | Declared in the catalog source record |
| Usage guide | automated source guide | Editorial | Generated or reviewed according to the visible evidence level |
Pinned source
Grounded corpus (Tier-1 consultation): pagination, versioning, error shape (RFC 9457), idempotency, async ops, rate limiting, bulk, naming, expansion, webhooks — query
./scripts-run <skills-root>/corpus-grounding/scripts/ground search --manifest <skills-root>/api-design/data/manifest.json "<concern>"and propose the grounded pattern (+ hardening + anti-patterns + RFC link) before designing from memory. Corpus:data/api-patterns.csv.
Use this skill when designing new API endpoints, restructuring existing APIs, or deciding about versioning and deprecation.
Do NOT use when:
api-endpoint skill)api-testing skill)agents/settings/contexts/api-versioning.md, agents/reference/docs/api-resources.md, agents/reference/docs/query-filter.md, agents/reference/docs/controller.md, and guideline php/api-design.md.adversarial-review skill to check for breaking changes, consistency issues, and missing error cases.Routes versioned via URL prefix: /api/v1/..., /api/v2/...
routes/api/v1/projects.php → /api/v1/projects (Laravel)
app/api/v1/projects/route.ts → /api/v1/projects (Next.js)
routes/api/v2/projects.php → /api/v2/projects
If a route doesn't exist in the requested version, the system falls back to the next older version. Configured in the framework's app config (config/app.php in Laravel):
'api_versioning' => [
'versions' => 'v2,v1', // newest first
],
| Change type | Action |
|---|---|
| Add optional field | Extend current version |
| Add new endpoint | Add to current version |
| Remove/rename field | New version |
| Change field type | New version |
| Change validation rules | New version |
If an existing client would break without code changes → new version required.
Deprecation: true, Sunset: YYYY-MM-DD, Link: <successor>Minimum 3 months between deprecation and removal.
Before presenting an API design, run the adversarial-review skill.
Focus on: Breaking changes? Consistency? Error responses?
/users/{id}/orders/{id}).Alternatives
affaan-m/ECC
REST API design patterns including resource naming, status codes, pagination, filtering, error responses, versioning, and rate limiting for production APIs.
affaan-m/ECC
Use it for engineering and design tasks; the detail page covers purpose, installation, and practical steps.
affaan-m/ECC
Patrones de diseño REST API incluyendo nomenclatura de recursos, códigos de estado, paginación, filtrado, respuestas de error, versionado y rate limiting para APIs de producción.
affaan-m/ECC
REST API tasarım kalıpları; kaynak isimlendirme, durum kodları, sayfalama, filtreleme, hata yanıtları, versiyonlama ve üretim API'leri için hız sınırlama içerir.