api-versioning_skill

This skill helps you design and evolve APIs safely by enforcing versioning, deprecation, and non-breaking changes across clients.
  • TypeScript

6

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill yanko-belov/code-craft --skill api-versioning

  • SKILL.md8.3 KB

Overview

This skill guides designing and evolving APIs with explicit versioning and strict rules to avoid breaking clients. It emphasizes starting with versioning from day one, supporting multiple versions concurrently, and using clear deprecation and sunset procedures. Followable patterns and protocols reduce risk and preserve client trust.

How this skill works

The skill inspects API change plans and flags any breaking changes that require a new version. It recommends concrete versioning strategies (URL path, header, query param), outlines migration patterns for evolving data shapes, and prescribes a deprecation protocol including headers, logging, and sunset behavior. It also provides pressure-resistance responses for common stakeholder objections.

When to use it

  • Designing new APIs or endpoints
  • Modifying endpoints in ways that could affect clients
  • Planning an API evolution or migration strategy
  • Reviewing PRs for interface or schema changes
  • Creating deprecation or sunset plans for older versions

Best practices

  • Version from day one (start with /v1/ in the path)
  • Never make breaking changes to a released version—create vN+1 instead
  • Support old versions by adapting new data models for legacy responses
  • Announce deprecation via headers, docs, and logs; provide a minimum migration period (6+ months)
  • Log usage of deprecated endpoints to track client migration progress

Example use cases

  • Splitting a combined name field into firstName/lastName while still serving v1 clients
  • Adding a required field: introduce it in v2 and keep v1 unchanged
  • Removing an endpoint: deprecate with sunset headers and maintain behavior during the deprecation window
  • Fixing a behavior that changes semantics: implement the fix in a new version and document migration steps
  • Accepting a new optional field or adding a non-breaking endpoint extension

FAQ

Any change that removes/renames fields, changes types or response structure, removes endpoints, or adds a required parameter is breaking and needs a new version.

Which versioning strategy is best?

URL path versioning is recommended for clarity and cacheability; header or query versioning are acceptable depending on preferences and tooling.

How long should I keep deprecated versions?

Provide a clear deprecation period—minimum six months for public APIs—announce with Deprecation and Sunset headers, and log usage for migration tracking.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
api-versioning skill by yanko-belov/code-craft | VeilStrat