goals

Schedule Goal Phone Text

Put the athlete's text on the books: tonight or tomorrow, their clock.

The send target is never in the request. It is the phone this session proved through the code, read from the verification record server-side — which also bounds the flow in time: the record lives ten minutes from its mint, so scheduling happens in the same sitting as the verify, the way the page flows. Without a verified phone the answer is 409: the client called out of order, and the fix is running the verify first.

Scheduling again replaces the session's open schedule (slot, deadline and all) — changing your mind is the same request. The timezone arrives from the athlete's own device and was validated at the schema; nothing here ever guesses one. The phone never lands in telemetry.

post/goals/phone/schedule

Request body

slot'tonight' | 'tomorrow' required

When the athlete asked for their Goals text — both resolve to their evening.

timezonestring required
localestring nullable

Response

Successful Response

status'scheduled'
slot'tonight' | 'tomorrow' required

When the athlete asked for their Goals text — both resolve to their evening.

due_atstring date-time required

Changes

Changed in 1 of the 3 revisions of this API.1