Facebook Pixel
Fit'DistanceDocumentation
Open the app

Check-ins

2 routes

GET /bilans

Bilans with their measurements. Never the medical block nor the photos.

  • Scope bilans:read
  • 1 credit
  • Read
  • Stable

Parameters

NameTypeDescription
limitqueryinteger1–200, default 50
cursorquerystringOpaque cursor: next_cursor of the previous page.
sincequerydate-timeISO 8601. Returns the objects with updated_at >= since.
include_deletedquerybooleandefault false
student_idqueryinteger≥ 1
tagquerystring
statusquerystringone of PENDING, DONEOnly this status: PENDING or DONE.
curl "https://api.fitdistance.io/api/partner/v1/bilans?limit=50" \
  -H "Authorization: Bearer fd_live_xxxxxxxx"
200 · a page of Bilan
{
  "data": [
    {
      "id": 4821,
      "student_id": 4821,
      "coach_id": 4821,
      "status": "PENDING",
      "is_initial": true,
      "created_by": "student",
      "submitted_at": "2026-10-24T09:12:00Z",
      "treated_at": "2026-10-24T09:12:00Z",
      "goal": "performance",
      "measurements": {
        "bodyweight_kg": 72.5,
        "bodyfat_percent": 72.5,
        "waist_cm": 72.5,
        "chest_cm": 72.5,
        "hips_cm": 72.5,
        "neck_cm": 72.5,
        "shoulders_cm": 72.5,
        "glutes_cm": 72.5,
        "arms_left_cm": 72.5,
        "arms_right_cm": 72.5,
        "forearms_left_cm": 72.5,
        "forearms_right_cm": 72.5,
        "thighs_left_cm": 72.5,
        "thighs_right_cm": 72.5,
        "calfs_left_cm": 72.5,
        "calfs_right_cm": 72.5
      },
      "comments_count": 3,
      "updated_at": "2026-10-24T09:12:00Z"
    }
  ],
  "next_cursor": null,
  "has_more": false
}
403 · SCOPE_MISSING
{
  "error": {
    "name": "PARTNER_API",
    "message": "SCOPE_MISSING"
  }
}

200 · a page of Bilan

NameTypeDescription
id requiredinteger
student_id requiredinteger
coach_id requiredinteger
status requiredstringone of PENDING, DONEPENDING: submitted by the student, waiting for the coach. DONE: the coach has treated it.
is_initial requiredbooleanThe first bilan of the student.
created_by requiredstringone of student, coach
submitted_at requireddate-timeCreation of the bilan.
treated_at requireddate-time | nullWhen the coach marked the bilan DONE. Null when PENDING, and for bilans treated before this field existed.
goal requiredstring | nullone of performance, loose_fat, bulk, health, maintain, other
measurements requiredobjectNull when the bilan has no value for a measurement.
comments_count requiredintegerComments on the bilan, replies included, deleted ones excluded.
updated_at requireddate-timeThe latest change of the bilan, its deletion, or a change of its comments (added, edited, deleted).
deleted_atdate-time | nullPresent when include_deleted is true.

Errors

StatusCodeWhen
400VALIDATIONInvalid parameters or body.billed
401UNAUTHORIZEDKey missing, unknown or revoked.not billed
402CREDITS_EXHAUSTEDNo credits left this month and no reserve.not billed
403SCOPE_MISSINGThe key doesn't have the required scope.not billed
403PLAN_NOT_ELIGIBLEYour plan doesn't include the API.not billed
429RATE_LIMITEDToo many calls: 10 per second, 300 per minute, 60 writes and 20 deletes per minute.not billed

GET /bilans/{id}

One bilan. The medical block needs the bilans.medical:read scope.

  • Scope bilans:read
  • Scope bilans.medical:read
  • 1 credit
  • Read
  • Stable

Parameters

NameTypeDescription
id requiredpathinteger≥ 1The numeric id of the resource.
curl "https://api.fitdistance.io/api/partner/v1/bilans/4821" \
  -H "Authorization: Bearer fd_live_xxxxxxxx"
200 · BilanDetail
{
  "id": 4821,
  "student_id": 4821,
  "coach_id": 4821,
  "status": "PENDING",
  "is_initial": true,
  "created_by": "student",
  "submitted_at": "2026-10-24T09:12:00Z",
  "treated_at": "2026-10-24T09:12:00Z",
  "goal": "performance",
  "measurements": {
    "bodyweight_kg": 72.5,
    "bodyfat_percent": 72.5,
    "waist_cm": 72.5,
    "chest_cm": 72.5,
    "hips_cm": 72.5,
    "neck_cm": 72.5,
    "shoulders_cm": 72.5,
    "glutes_cm": 72.5,
    "arms_left_cm": 72.5,
    "arms_right_cm": 72.5,
    "forearms_left_cm": 72.5,
    "forearms_right_cm": 72.5,
    "thighs_left_cm": 72.5,
    "thighs_right_cm": 72.5,
    "calfs_left_cm": 72.5,
    "calfs_right_cm": 72.5
  },
  "comments_count": 3,
  "updated_at": "2026-10-24T09:12:00Z",
  "medical": {
    "height": 4821,
    "medical_antecedent": "string",
    "sport_antecedent": "string",
    "allergies": "string",
    "job": "string",
    "reason": "string",
    "body_type": "ectomorph",
    "empty_stomach": true,
    "notes": "string"
  }
}
403 · SCOPE_MISSING
{
  "error": {
    "name": "PARTNER_API",
    "message": "SCOPE_MISSING"
  }
}

200 · BilanDetail

NameTypeDescription
id requiredinteger
student_id requiredinteger
coach_id requiredinteger
status requiredstringone of PENDING, DONEPENDING: submitted by the student, waiting for the coach. DONE: the coach has treated it.
is_initial requiredbooleanThe first bilan of the student.
created_by requiredstringone of student, coach
submitted_at requireddate-timeCreation of the bilan.
treated_at requireddate-time | nullWhen the coach marked the bilan DONE. Null when PENDING, and for bilans treated before this field existed.
goal requiredstring | nullone of performance, loose_fat, bulk, health, maintain, other
measurements requiredobjectNull when the bilan has no value for a measurement.
comments_count requiredintegerComments on the bilan, replies included, deleted ones excluded.
updated_at requireddate-timeThe latest change of the bilan, its deletion, or a change of its comments (added, edited, deleted).
medicalobjectPresent only with the bilans.medical:read scope. Absent from the list.

Errors

StatusCodeWhen
400VALIDATIONInvalid parameters or body.billed
401UNAUTHORIZEDKey missing, unknown or revoked.not billed
402CREDITS_EXHAUSTEDNo credits left this month and no reserve.not billed
403SCOPE_MISSINGThe key doesn't have the required scope.not billed
403PLAN_NOT_ELIGIBLEYour plan doesn't include the API.not billed
404NOT_FOUNDNothing at this address.billed
429RATE_LIMITEDToo many calls: 10 per second, 300 per minute, 60 writes and 20 deletes per minute.not billed