Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/Lokhy87/gymApp/llms.txt

Use this file to discover all available pages before exploring further.

A workout entry in GymFlow captures a single set of an exercise: how many reps you performed, how many sets you completed, how much weight you lifted, and any free-text notes you want to keep. You can create an entry in two places — from the exercise library card modal or from the history view — and edit or delete it any time afterward.

Logging a new workout

1

Open an exercise

From the home screen, choose a muscle group and click any exercise card. The quick-log modal opens with default values of 3 sets, 10 reps, and 0 kg.
2

Fill in your numbers

Adjust the Weight (kg), Repetitions, and Sets fields to match what you actually did. All three are required; weight must be zero or greater.
3

Add an optional note

Use the Notes field to record anything useful — form cues, fatigue level, equipment used. This field is optional and accepts free text.
4

Save

Click Save workout. The app posts your entry to the API and closes the modal. The server records the current date and time automatically; you do not need to enter a date.

POST /api/workouts

curl -X POST https://api.gymflow.example/api/workouts \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "exercise_id": 12,
    "sets": 4,
    "reps": 8,
    "weight": 80.0,
    "comments": "Paused at the bottom on every rep"
  }'
Request fields
FieldTypeRequiredDescription
exercise_idintegerYesID of the exercise being logged
setsintegerYesNumber of sets performed
repsintegerYesNumber of repetitions per set
weightfloatNoLoad in kilograms (defaults to 0)
commentsstringNoFree-text notes
Response — 201 Created
{
  "message": "Workout created successfully",
  "workout_id": 347
}
The date field is always set by the server to the current UTC timestamp at the moment the request is received. There is no way to supply a custom date when creating a workout.

Editing a workout

Open the history view, click the date on the calendar that contains the entry, and click Edit next to the workout you want to change. You can update sets, reps, weight, and comments. The exercise and date cannot be changed after creation.

PUT /api/workouts/

curl -X PUT https://api.gymflow.example/api/workouts/347 \
  -H "Authorization: Bearer <token>" \
  -H "Content-Type: application/json" \
  -d '{
    "sets": 5,
    "reps": 6,
    "weight": 85.0,
    "comments": "Felt strong today"
  }'
All four fields are optional in the request body. Any field you omit keeps its existing value. Response — 200 OK
{ "message": "Workout updated" }

Deleting a workout

In the history view, click the entry’s date, find the exercise you want to remove, and click Delete. A confirmation prompt appears before the entry is permanently removed.

DELETE /api/workouts/

curl -X DELETE https://api.gymflow.example/api/workouts/347 \
  -H "Authorization: Bearer <token>"
Response — 200 OK
{ "message": "Workout deleted" }
Workout entries are user-scoped. You can only edit or delete entries that belong to your own account. Attempting to modify another user’s entry returns 403 Forbidden. This is enforced server-side on every PUT and DELETE request regardless of how the request is made.

Exercise library

Browse exercises by muscle group and open the quick-log modal.

Workout history

Review all your past entries in a monthly calendar view.

Workouts API

Full endpoint reference for creating, updating, and deleting workouts.

Authentication

Learn how to obtain a JWT and authenticate API requests.

Build docs developers (and LLMs) love