Back to Skills

api-architecture

verified

Production-grade API architecture skill for REST, gRPC, GraphQL design, versioning, and security patterns

View on GitHub

Marketplace

pluginagentmarketplace-system-design

pluginagentmarketplace/custom-plugin-system-design

Plugin

custom-plugin-system-design

Repository

pluginagentmarketplace/custom-plugin-system-design
1stars

skills/api-architecture/SKILL.md

Last Verified

January 21, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/pluginagentmarketplace/custom-plugin-system-design/blob/main/skills/api-architecture/SKILL.md -a claude-code --skill api-architecture

Installation paths:

Claude
.claude/skills/api-architecture/
Powered by add-skill CLI

Instructions

# API Architecture Skill

> **Purpose**: Atomic skill for API design with comprehensive validation, error handling, and security patterns.

## Skill Identity

| Attribute | Value |
|-----------|-------|
| **Scope** | REST, gRPC, GraphQL Design |
| **Responsibility** | Single: API contract and protocol design |
| **Invocation** | `Skill("api-architecture")` |

## Parameter Schema

### Input Validation
```yaml
parameters:
  api_context:
    type: object
    required: true
    properties:
      protocol:
        type: string
        enum: [REST, gRPC, GraphQL, hybrid]
        required: true
      resources:
        type: array
        items:
          type: object
          properties:
            name: { type: string, pattern: "^[a-z][a-z0-9-]*$" }
            operations: { type: array, items: { type: string } }
        minItems: 1
      consumers:
        type: array
        items:
          type: string
          enum: [web, mobile, third_party, internal, iot]
      security:
        type: object
        properties:
          auth_method: { type: string, enum: [oauth2, api_key, jwt, mtls] }
          rate_limiting: { type: boolean, default: true }
      constraints:
        type: object
        properties:
          max_latency_ms: { type: integer, minimum: 1 }
          backward_compatible: { type: boolean, default: true }

validation_rules:
  - name: "resource_naming"
    rule: "resources[*].name matches /^[a-z][a-z0-9-]*$/"
    error: "Resource names must be lowercase with hyphens"
  - name: "public_api_security"
    rule: "consumers includes 'third_party' implies auth_method is set"
    error: "Public APIs require authentication"
```

### Output Schema
```yaml
output:
  type: object
  properties:
    endpoints:
      type: array
      items:
        type: object
        properties:
          method: { type: string }
          path: { type: string }
          request_schema: { type: object }
          response_schema: { type: object }
          status_codes: { ty

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
8228 chars