Vine API Docs

API Versioning

Understanding Vine Public API versions and the current contract

Overview

The Vine public content API is versioned so future breaking changes can ship without silently changing existing integrations.

Current Version

v1 is the current stable version.

All public content endpoints live under:

https://vinecms.tech/api/public/v1

URL Format

https://vinecms.tech/api/public/{VERSION}/{API_KEY}/{ENDPOINT}

Example

curl "https://vinecms.tech/api/public/v1/{API_KEY}/posts"

Current Contract

The currently shipped v1 endpoints are:

  • GET /api/public/v1/{API_KEY}/posts
  • GET /api/public/v1/{API_KEY}/posts/{postSlug}
  • GET /api/public/v1/{API_KEY}/authors
  • GET /api/public/v1/{API_KEY}/categories
  • GET /api/public/v1/{API_KEY}/tags
  • GET /api/public/v1/{API_KEY}/stats

Compatibility Rules

The practical versioning rule for the current product is:

  • additive fields can be introduced in v1
  • new endpoints can be introduced in v1
  • breaking response or route changes should trigger a new version

Examples of changes that should require a new version:

  • removing a field
  • renaming a field
  • changing the route structure
  • changing visibility rules in a breaking way
  • requiring new parameters for existing routes

Important Notes

  • the current shipped API does not include a non-versioned fallback route
  • deprecation headers are not implemented today
  • only document new endpoints in v1 after the route exists in production code

Best Practices

  1. Always use the explicit /v1/ path.
  2. Treat unknown extra fields as additive and safe.
  3. Avoid depending on undocumented fields.
  4. Check Response Shapes when wiring strict types.

On this page