api

A set of guidelines for designing web APIs, which are interfaces that let software exchange data. It covers stable endpoints, versioning, requests, responses, authentication, and documentation.

In plain words
What is it for?
Use it when planning or reviewing a Rails API. It helps with endpoint design, version management, JSON formats, request validation, error messages, authentication, and documentation.
Why use it?
It helps prevent changes from breaking programs that already use the API. It also gives developers consistent rules for handling data, errors, and access.

Cursor rule for Cursor

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add rules/levifig/rails-instructions/api
Clone the repo
git clone --depth 1 https://github.com/levifig/rails-instructions

Made for: Cursor.

Per session 0 Nothing until a file matches its globs; then the whole rule loads.
When invoked 1,055 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00000 $0.01055
Opus 5 $0.00000 $0.00528
Sonnet 5 $0.00000 $0.00211
Haiku 4.5 $0.00000 $0.00105

Measured yesterday against content hash d4cc57ccb790, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

api scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.cursor/rules/rails/api.mdc · 213 lines

How it starts

The opening of the file, as written. The whole thing — 213 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Rails API Guide

Core Philosophy

  • Design APIs for longevity and stability
  • Version from the very beginning
  • Keep responses consistent and predictable
  • Document thoroughly and accurately
  • Build APIs that developers love to use

API Design Principles

  • Follow RESTful conventions strictly
  • Use standard HTTP methods appropriately
  • Return meaningful status codes
  • Keep endpoints focused and simple
  • Design for future extensibility

Versioning Strategy

  • Version APIs from day one
  • Use URL path versioning (/api/v1)
  • Never break backward compatibility
  • Deprecate gracefully with notices
  • Document version differences clearly

Request Handling

  • Accept JSON by default
  • Support content negotiation
  • Validate request formats
  • Handle malformed requests gracefully
  • Provide clear error messages

Response Format

  • Use consistent JSON structure
  • Include metadata when helpful
  • Implement sparse fieldsets
  • Support response filtering
  • Keep payloads minimal

Authentication Methods

  • Use token-based authentication
  • Implement OAuth when appropriate
  • Support API keys for simple cases
  • Never use session cookies for APIs
  • Document authentication clearly

Authorization Patterns

  • Check permissions for every endpoint
  • Use consistent authorization logic
  • Return proper 401/403 status codes
  • Implement role-based access
  • Audit API access patterns

Error Handling

  • Return consistent error format
  • Include error codes and messages
  • Provide debugging information in development
  • Log errors appropriately
  • Handle exceptions gracefully

Status Codes

  • Use standard HTTP status codes correctly
  • 200 OK for successful GET/PUT
  • 201 Created for successful POST
  • 204 No Content for successful DELETE
  • 422 Unprocessable Entity for validation errors

Pagination

  • Always paginate list endpoints
  • Use consistent pagination format
  • Include total count and page info
  • Support customizable page sizes
  • Consider cursor-based pagination

Rate Limiting

  • Implement rate limiting from start
  • Return rate limit headers
  • Use progressive throttling
  • Provide higher limits for authenticated users
  • Document rate limits clearly

Read the full file on GitHub · 213 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 213 lines · 0 tokens per session scan A d4cc57ccb790

Subscribe to this mod's changes

api is a cursor rule published in the GitHub repository levifig/rails-instructions (54 stars, last pushed 1y ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,055 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.