goals

Read Goal Detail

One goal in full, for the browser that settled it.

The owner's read, and the only one that carries the why, the checkpoints and the fallbacks — the share page withholds all three on purpose and still does. Owning it means holding the goals cookie, exactly as it does for publishing: this surface has no Firebase and an athlete settles goals before they have an account, so the browser session IS the identity here (#1851).

Safe, so the cookie alone is enough — no CSRF token and no Origin, like the conversation read. A goal owned by someone else 404s rather than 403s, so the status code cannot be used to tell a real goal id from an invented one.

get/goals/{goal_id}

Path parameters

goal_idstring required

Response

Successful Response

goal_idstring required
namestring required
kind'destination' | 'practice' required
status'exploring' | 'proposing' | 'settled' required
sportstring nullable
set_atstring date-time required
factorsobject[]
share_idstring nullable
slugstring nullable
published_atstring date-time nullable

Changes

No recorded changes to this endpoint across all 1 revision of this API.