api-design

Design consistent REST and GraphQL APIs with OpenAPI documentation.

8|1|Updated Dec 29, 2025
One-click install
npx skills add https://github.com/mjohnson518/claude_superpowers --skill api-design-mjohnson518
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: api-design
Source: https://github.com/mjohnson518/claude_superpowers/tree/main/skills/api-design
Command: npx skills add https://github.com/mjohnson518/claude_superpowers --skill api-design-mjohnson518

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill guides teams to design consistent, intuitive, and maintainable APIs across REST and GraphQL, ensuring contracts are clear and scalable.

Core Features & Use Cases

  • REST API design best practices (resource modeling, URL structure, HTTP methods, status codes)
  • GraphQL schema and query design with pagination and connections
  • OpenAPI/Swagger-driven documentation and contract testing

Quick Start

Start by drafting a REST resource map, design a GraphQL schema, and generate an OpenAPI specification to align stakeholders and enable automatic testing.

Frequently Asked Questions about api-design

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

FAQPage Schema
What are the best practices for REST API resource modeling and URL structure?

REST API design best practices for resource modeling involve structuring URLs around nouns, using standard HTTP methods, and applying correct status codes to ensure consistent, scalable, and intuitive endpoints.

How do I design a GraphQL schema with pagination and connections?

Designing a GraphQL schema with pagination involves applying connection patterns to manage large result sets, enforcing clear schema guidelines, and structuring queries to ensure maintainable and scalable data fetching.

How do I generate OpenAPI specifications to align stakeholders and enable contract testing?

Generating OpenAPI specifications involves drafting a REST resource map and schema guidelines to produce Swagger-driven documentation, which aligns stakeholders and enables automated contract testing.

What is the best way to enforce consistent API versioning and error formats across REST and GraphQL?

Enforcing consistent API versioning and error formats requires applying standardized conventions across REST and GraphQL architectures during the design phase to ensure clear contracts and maintainable interfaces.

Can I use this approach for both REST and GraphQL architecture discussions?

Yes, this approach applies to API design projects, contract reviews, and architecture discussions, enforcing resource modeling, versioning, and schema guidelines across both REST and GraphQL.

Why does my API design lack clear contracts and scalability across different protocols?

Your API design lacks clear contracts and scalability due to inconsistent conventions across REST and GraphQL, which can be resolved by enforcing standardized resource modeling, error formats, and OpenAPI documentation.