← ClaudeAtlas

api-contractslisted

Design and change REST, GraphQL, RPC, and webhook contracts and the backend services and jobs behind them: validation, authorization scope, error semantics, pagination, idempotency, rate limits, retries, timeouts, versioning, and contract tests. Use for any endpoint, external integration, worker, or queue consumer.
AL-JANEF/janef-forge · ★ 1 · API & Backend · score 75
Install: claude install-skill AL-JANEF/janef-forge
# API Contracts & Backend Services Every external request and every upstream response is untrusted. A contract is a promise to callers you may never see; change it deliberately or not at all. ## Contract - Specify input validation, authentication, authorization scope (object and tenant), response shape, status and error semantics, timeouts, and observability for every endpoint. - Bound request bodies, pagination, retries, concurrency, and external response sizes. Explicit pagination for every unbounded collection. - Idempotency for retriable side effects. Rate limits and retry/backoff where abuse or downstream saturation is plausible. - Keep transport parsing separate from domain decisions and infrastructure adapters. - Never break a contract silently: version or stage the change, then update callers, docs, and tests together. - Error responses are useful to the caller without leaking stack traces, internal identifiers, or sensitive implementation detail. ## Webhooks and external integrations Verify authenticity (signature, timestamp window), resist replay or make processing idempotent, bound processing time, and retry safely. Set timeouts and cancellation on all outbound calls; retry only transient, idempotent operations with jitter and limits. ## Reliability - Make transaction boundaries and side-effect ordering explicit. When atomicity ends, use an outbox or a compensating action. - Design jobs and queue consumers for at-least-once delivery unless the platform prove