---
title: "Licensed GymVisual thumb, or 410 for the retired wrkout path proxy"
method: GET
path: "/exerciseImage"
tags: ["Exercise Database"]
---

# Licensed GymVisual thumb, or 410 for the retired wrkout path proxy

`GET /exerciseImage`

## Request

- Base URL: `https://api.anatome.dev`
- URL: `https://api.anatome.dev/exerciseImage`
- Auth: none declared

GET /exerciseImage?id=<ext_id> serves a licensed thumb (same gate as /exerciseGif). GET /exerciseImage?path=… without id is the retired wrkout photography proxy and always returns 410 — that path is unread (no traversal). Do not pass caller-supplied paths.

## Query parameters

- `id` string
- `path` string

## Response `200`

image/jpeg (when id= is gated and present in R2)

## Other responses

- `403`: Caller is not allowlisted
- `404`: Unknown id, no asset of this kind for the row, or no object in R2
- `410`: Retired wrkout ?path= proxy

---

[API](https://skmtc.dev/anatome/apis/anatome-muscle-group-image-generator-api.md) · [All operations](https://skmtc.dev/anatome/apis/anatome-muscle-group-image-generator-api/llms.txt) · [OpenAPI document](https://skmtc.dev/anatome/apis/anatome-muscle-group-image-generator-api/revisions/87cc81795f65?raw)
