---
title: "Get a single meal plan by id"
method: GET
path: "/compat/v2/mealPlans/getMealPlan"
tags: ["mealPlans"]
---

# Get a single meal plan by id

`GET /compat/v2/mealPlans/getMealPlan`

## Request

- Base URL: `https://api.recipesage.com`
- URL: `https://api.recipesage.com/compat/v2/mealPlans/getMealPlan`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/recipesage/apis/recipesage-api/docs/compat/v2/mealPlans/getMealPlan/get.ts> (a function with typed inputs; its response is checked against the schema)

## Query parameters

- `id` string, uuid, required

## Response `200`

Successful response

- object
  - `id` string, uuid, required
  - `userId` string, uuid, required
  - `user` object, required
    - `id` string, uuid, required
    - `name` string, required
    - `handle` string, nullable, required
    - `enableProfile` boolean, required
    - `profileImages` object[], required
      - `order` integer, required
      - `imageId` string, uuid, required
      - `image` object, required
        - `id` string, uuid, required
        - `location` string, required
  - `collaboratorUsers` object[], required
    - `user` object, required
      - `id` string, uuid, required
      - `name` string, required
      - `handle` string, nullable, required
      - `enableProfile` boolean, required
      - `profileImages` object[], required
        - `order` integer, required
        - `imageId` string, uuid, required
        - `image` object, required
          - `id` string, uuid, required
          - `location` string, required
  - `title` string, required
  - `customMealOptions` string, nullable, required
  - `createdAt` string, required
  - `updatedAt` string, required
  - `_count` object, required
    - `items` integer, required

## Other responses

- `400`: Invalid input data
- `401`: Authorization not provided
- `403`: Insufficient access
- `404`: Not found
- `500`: Internal server error

## Changes

- **2026-10-25** `7c9d96f4aeff`: 3 breaking, 3 info
  - the response property `collaboratorUsers/items/user/handle` became nullable for the status `200`
  - the response property `customMealOptions` became nullable for the status `200`
  - the response property `user/handle` became nullable for the status `200`
  - response property `collaboratorUsers/items/user/handle` list-of-types was narrowed by removing types `null` from media type `application/json` of response `200`
  - …2 more

[Operation history](https://skmtc.dev/recipesage/apis/recipesage-api/changes/compat/v2/mealPlans/getMealPlan/get.md)

---

[API](https://skmtc.dev/recipesage/apis/recipesage-api.md) - [All operations](https://skmtc.dev/recipesage/apis/recipesage-api/llms.txt) - [OpenAPI document](https://skmtc.dev/recipesage/apis/recipesage-api/revisions/48bb065aef70?raw)
