rest-api-design · aj-geddes — скилл для Claude Code: проектирование REST API
Скилл задаёт правила именования ресурсов, HTTP-методов, кодов ответа и версионирования, когда вы проектируете новые эндпоинты или переделываете старые.
npx skills add aj-geddes/useful-ai-prompts --skill rest-api-design -a claude-codeЧто делает rest-api-design
Скилл подключается к агенту и подсказывает структуру REST API: ресурсы называются существительными во множественном числе, методы и статус-коды подбираются по операции, коллекции получают пагинацию, фильтры и сортировку. Внутри — краткий старт с примерами хороших и плохих имён эндпоинтов и справочники в каталоге references/: именование ресурсов, примеры запросов, query-параметры, форматы ответов, статус-коды, версионирование, аутентификация, заголовки rate limiting и документация OpenAPI. Отдельный файл разбирает полный пример на Express.js.
Полезно, когда API уже разросся и в нём смешаны единственное и множественное число, а ошибки отдаются с кодом 200. Скилл перечисляет, чего избегать: глаголов в путях, лишней вложенности глубже двух уровней, внутренних идентификаторов в ответах. Даты советует писать в ISO 8601.
Учтите: справочники лежат отдельными файлами, и без чтения references/ агент выдаст только общие рекомендации из основного файла. Установка идёт через npx skills add, для GitHub Copilot — через gh skill install.
Какие задачи решает
- спроектировать структуру эндпоинтов для нового сервиса
- переименовать ресурсы и убрать глаголы из путей
- подобрать статус-коды вместо 200 на любую ошибку
- добавить пагинацию, фильтры и сортировку в коллекции
- описать API в OpenAPI и заложить версионирование
Примеры запросов агенту
- Спроектируй REST API для заказов: ресурсы, методы, коды ответов
- Проверь мои эндпоинты в
routes/и скажи, где нарушены правила именования - Напиши OpenAPI-спеку для текущих ручек и добавь пагинацию
Как установить rest-api-design
1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill rest-api-design -a claude-code2Вручную: положить файлы
~/.claude/skills/rest-api-design/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/rest-api-design/
1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill rest-api-design -a codex2Вручную: положить файлы
.agents/skills/rest-api-design/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill rest-api-design -a cursor2Вручную: положить файлы
.cursor/skills/rest-api-design/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install aj-geddes/useful-ai-prompts rest-api-design2Вручную: положить файлы
.github/skills/rest-api-design/SKILL.md1Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill rest-api-design -a gemini-cli2Командой платформы
gemini skills install https://github.com/aj-geddes/useful-ai-prompts --path skills/rest-api-designВручную: положить файлы
.devin/skills/rest-api-design/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill rest-api-design -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора118
Другие версии rest-api-design
Похожие
Рядом в теме «Бэкенд и API»
Всё по теме «Бэкенд и API» →Вопросы о rest-api-design
Как установить rest-api-design в Claude?
Выполните npx skills add aj-geddes/useful-ai-prompts --skill rest-api-design -a claude-code. Скилл окажется в ~/.claude/skills/rest-api-design/SKILL.md.
Что делает rest-api-design?
Помогает агенту проектировать REST API: именование ресурсов, HTTP-методы, статус-коды, версионирование, аутентификация и документация OpenAPI.
Чем этот скилл отличается от обычного запроса к агенту?
Он опирается на справочники в каталоге references/ — от примеров запросов до полного примера на Express.js, поэтому ответы конкретнее, чем общие советы.
Исходный текст
SKILL.md · MIT
---
name: rest-api-design
description: >
Design RESTful APIs following best practices for resource modeling, HTTP
methods, status codes, versioning, and documentation. Use when creating new
APIs, designing endpoints, or improving existing API architecture.
---
# REST API Design
## Table of Contents
- [Overview](#overview)
- [When to Use](#when-to-use)
- [Quick Start](#quick-start)
- [Reference Guides](#reference-guides)
- [Best Practices](#best-practices)
## Overview
Design REST APIs that are intuitive, consistent, and follow industry best practices for resource-oriented architecture.
## When to Use
- Designing new RESTful APIs
- Creating endpoint structures
- Defining request/response formats
- Implementing API versioning
- Documenting API specifications
- Refactoring existing APIs
## Quick Start
Minimal working example:
```
✅ Good Resource Names (Nouns, Plural)
GET /api/users
GET /api/users/123
GET /api/users/123/orders
POST /api/products
DELETE /api/products/456
❌ Bad Resource Names (Verbs, Inconsistent)
GET /api/getUsers
POST /api/createProduct
GET /api/user/123 (inconsistent singular/plural)
```
## Reference Guides
Detailed implementations in the `references/` directory:
| Guide | Contents |
|---|---|
| [Resource Naming](references/resource-naming.md) | Resource Naming, HTTP Methods & Operations |
| [Request Examples](references/request-examples.md) | Request Examples |
| [Query Parameters](references/query-parameters.md) | Query Parameters |
| [Response Formats](references/response-formats.md) | Response Formats |
| [HTTP Status Codes](references/http-status-codes.md) | HTTP Status Codes, API Versioning, Authentication & Security, Rate Limiting Headers |
| [OpenAPI Documentation](references/openapi-documentation.md) | OpenAPI Documentation |
| [Complete Example: Express.js](references/complete-example-expressjs.md) | const express = require("express"); |
## Best Practices
### ✅ DO
- Use nouns for resources, not verbs
- Use plural names for collections
- Be consistent with naming conventions
- Return appropriate HTTP status codes
- Include pagination for collections
- Provide filtering and sorting options
- Version your API
- Document thoroughly with OpenAPI
- Use HTTPS
- Implement rate limiting
- Provide clear error messages
- Use ISO 8601 for dates
### ❌ DON'T
- Use verbs in endpoint names
- Return 200 for errors
- Expose internal IDs unnecessarily
- Over-nest resources (max 2 levels)
- Use inconsistent naming
- Forget authentication
- Return sensitive data
- Break backward compatibility without versioning
© aj-geddes · MIT · aj-geddes/useful-ai-prompts