---
title: "Get User Body"
method: GET
path: "/v2/summary/body/{user_id}"
tags: ["summary"]
---

# Get User Body

`GET /v2/summary/body/{user_id}`

Get Body summary for user_id

## Path parameters

- `user_id` string, uuid, required

## Query parameters

- `provider` string — Provider oura/strava etc
- `start_date` string, required — Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be set to 00:00:00
- `end_date` string, nullable — Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be set to 23:59:59

## Response `200`

Successful Response

- ClientBodyResponse
  - `body` ClientFacingBody[], required
    - `id` string, uuid, required
    - `user_id` string, uuid, required — User id returned by vital create user request. This id should be stored in your database against the user and used for all interactions with the vital api.
    - `date` string, date-time, required — Date of the specified record, formatted as ISO8601 datetime string in UTC 00:00. Deprecated in favour of calendar_date.
    - `calendar_date` string, date, required — Date of the summary in the YYYY-mm-dd format.
    - `weight` number, nullable — Weight in kg::kg
    - `fat` number, nullable — Total body fat percentage::perc
    - `water_percentage` number, nullable — Water percentage in the body::perc
    - `muscle_mass_percentage` number, nullable — Muscle mass percentage in the body::perc
    - `visceral_fat_index` number, nullable — Visceral fat index::scalar
    - `bone_mass_percentage` number, nullable — Bone mass percentage in the body::perc
    - `body_mass_index` number, nullable
    - `lean_body_mass_kilogram` number, nullable
    - `waist_circumference_centimeter` number, nullable
    - `source` ClientFacingSource, required — Source summarizes where a sample or a summary is sourced from. At minimum, the source provider is always included.
      - `provider` string, required — Provider slug. e.g., `oura`, `fitbit`, `garmin`.
      - `type` string — The type of the data source (app or device) by which the summary or the timeseries data were recorded. This defaults to `unknown` when Vital cannot extract or infer that information
      - `app_id` string, nullable — The identifier of the app which recorded this summary. This is only applicable to multi-source providers like Apple Health and Android Health Connect.
      - `device_id` string, uuid, nullable — The identifier of the device which recorded this summary.
      - `sport` string, nullable — For workout stream timeseries, this is the standard sport slug of the workout with which the timeseries data are associated. For the `distance` timeseries, this is `wheelchair_pushing` if the user is a wheelchair user, or `null` otherwise. For all summary types and non-workout timeseries, this is always `null`.
      - `workout_id` string, uuid, nullable — For workout stream timeseries, this is the workout ID with which the timeseries data are associated. For all other types, this is always `null`.
      - `name` string — Deprecated. Subject to removal after 1 Jan 2024.
      - `slug` string — Deprecated. Use `provider` instead. Subject to removal after 1 Jan 2024.
      - `logo` string — Deprecated. Subject to removal after 1 Jan 2024.
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/tryvital/apis/junction-api.md) · [All operations](https://skmtc.net/tryvital/apis/junction-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tryvital/junction-api/versions/d28f5cec7d79/schema)
