---
title: "Get Meals"
method: GET
path: "/v2/summary/meal/{user_id}"
tags: ["summary"]
---

# Get Meals

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

Get user's meals

## 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

- ClientFacingMealResponse
  - `meals` MealInDBBaseClientFacingSource[], required
    - `id` string, uuid, required
    - `user_id` string, uuid, required
    - `priority_id` integer, required — This value has no meaning.
    - `source_id` integer, required — This value has no meaning.
    - `provider_id` string, required — This value is identical to `id`.
    - `timestamp` string, date-time, required
    - `calendar_date` string, date, required — Date of the meal in the YYYY-mm-dd format. For providers that only expose a date, this is the calendar date as recorded by the user.
    - `name` string, required
    - `energy` Energy, required
      - `unit` 'kcal', required
      - `value` number, required
    - `macros` Macros, required
      - `carbs` number, nullable — Amount of carbohydrates in grams (g)
      - `protein` number, nullable — Amount of protein in grams (g)
      - `fats` Fats
        - `saturated` number, nullable — Amount of saturated fats in grams (g)
        - `monounsaturated` number, nullable — Amount of monounsaturated fats in grams (g)
        - `polyunsaturated` number, nullable — Amount of polyunsaturated fats in grams (g)
        - `omega3` number, nullable — Amount of Omega-3 fatty acids in grams (g)
        - `omega6` number, nullable — Amount of Omega-6 fatty acids in grams (g)
        - `total` number, nullable — Total amount of fats in grams (g)
      - `alcohol` number, nullable — Amount of alcohol in grams (g)
      - `water` number, nullable — Amount of water in grams (g)
      - `fibre` number, nullable — Amount of dietary fiber in grams (g)
      - `sugar` number, nullable — Amount of sugar in grams (g)
      - `cholesterol` number, nullable — Amount of cholesterol in grams (g)
    - `micros` Micros, required
      - `minerals` object, nullable — Amount of each mineral in milligrams (mg).
      - `trace_elements` object, nullable — Amount of each trace element in their respective units, most measured in μg (micrograms), while copper and manganese are in mg (milligrams).
      - `vitamins` object, nullable — Amount of each vitamin in their respective units. A, B12, D, K, biotin and folic acid are in μg (micrograms), while B1, B2, B3, B5, B6, C and E are in mg (milligrams).
    - `data` object
    - `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
    - `source_app_id` string, nullable
    - `source_device_id` string, uuid, nullable

## 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)
