api-design

Design REST API patterns for endpoint contracts, status codes, pagination, and versioning.

Updated Mar 20, 2026
One-click install
npx skills add https://github.com/KanakMalpani/General-Private-Skills --skill api-design-kanakmalpani
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: api-design
Source: https://github.com/KanakMalpani/General-Private-Skills/tree/main/skills/api-design
Command: npx skills add https://github.com/KanakMalpani/General-Private-Skills --skill api-design-kanakmalpani

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Designing consistent, developer-friendly REST APIs is challenging when teams diverge on naming, error handling, pagination, and versioning. This skill documents a cohesive set of patterns to standardize API contracts, responses, and evolution across services.

Core Features & Use Cases

  • Resource naming rules: kebab-case plural endpoints, intuitive paths, and clear sub-resources.
  • HTTP semantics: consistent usage of GET/POST/PUT/PATCH/DELETE with appropriate status codes and error formats.
  • Pagination, filtering, and sorting: standardized query parameters and response metadata for scalable data access.
  • Versioning & security: recommended versioning strategies, deprecation plans, and rate-limiting guidance.
  • Use Case: Designing a new user-management API with predictable endpoints and robust error handling.

Quick Start

Design a new REST API endpoint following the naming, status codes, pagination, and versioning guidelines outlined here.

Frequently Asked Questions about api-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is the best way to design REST API endpoint naming and resource paths?

REST API design should use kebab-case plural endpoints with intuitive paths and clear sub-resources to ensure predictable endpoint contracts. This standardizes resource naming rules across new API projects and existing API reviews.

How do I handle pagination, filtering, and sorting in a REST API?

Handle pagination, filtering, and sorting in a REST API by using standardized query parameters and response metadata for scalable data access. This ensures consistent data retrieval patterns across large resource collections.

What HTTP status codes and error formats should I use for REST API responses?

Use consistent HTTP semantics with appropriate status codes and structured error formats for GET, POST, PUT, PATCH, and DELETE methods. This ensures developer-friendly responses and clear error handling across API endpoints.

Does this REST API design approach work with TypeScript, Python, and Go?

Yes, this REST API design approach provides cross-language implementation examples in TypeScript, Python, and Go. The patterns for endpoint contracts, versioning, and authentication apply universally across these languages.

What versioning strategy and deprecation plan should I use for REST APIs?

Use recommended versioning strategies and deprecation plans to standardize API evolution across services. This ensures backward compatibility while allowing secure API updates and clear rate-limiting guidance for clients.

When do I need rate limiting and authentication in my REST API design?

You need rate limiting and authentication in REST API design to secure endpoints and manage traffic for production deployments. These patterns ensure robust access control and prevent API abuse across services.