Moving from api-exports

The pre-v1 endpoints on api-exports.vitruve.fit stop on 2027-01-31. How GET /users and GET /vbt-workouts map to the /v1 endpoints.

The pre-v1 endpoints, GET /users and GET /vbt-workouts on https://api-exports.vitruve.fit, keep answering exactly as they do today until 2027-01-31. On that date they stop, and the api-exports host goes away with them. Move every integration that still calls them to /v1, at https://api-next.vitruve.fit/v1, before then.

/v1 is only served at https://api-next.vitruve.fit and, from 2027-01-31, also at https://api.vitruve.fit. api-exports never serves /v1.

Before you switch

  1. Create a key in Settings → API Access if you don't have one yet. See Authentication.
  2. Send it in the X-API-Key header on every /v1 request, as before.
  3. Point your base URL at https://api-next.vitruve.fit/v1.

Endpoint mapping

Before, on api-exports/v1
GET /vbt-workouts?date=last-7daysGET /v1/workouts?trainingType=vbt&from=…&to=…. ISO 8601 dates (YYYY-MM-DD or a datetime) instead of presets; epoch milliseconds answer 400. Completed workouts are dated by completedAt, newest first.
Workout trees in the listThe list returns workouts without their content. Fetch each one with GET /v1/workouts/{id}. See Export all workouts.
cursor (last id) or offsetThe opaque meta.nextCursor, passed as cursor while meta.hasMore is true. See Pagination.
Metric and exercise names in the payloadIds. Resolve and cache /v1/metrics, /v1/units and /v1/exercises. See IDs and relations.
GET /usersGET /v1/athletes and GET /v1/coaches, paginated, active members only.

What else differs on /v1

  • Field names are Vitruve's own and match the reference. Remap your parsers against the workout data model.
  • Unknown query parameters answer 400 instead of being ignored. Remove parameters the previous endpoints accepted.
  • Plan changes apply immediately. An organization whose plan stops including the API answers 403 from the next request.
  • Rate limit: 30 requests per minute per key, reported in RateLimit-* headers. See Rate limits.
  • More than workouts. /v1 also reads programs, templates, measurements and analytics, and accepts the writes that keep Vitruve in sync with your systems.

On this page