---
title: "List recipes for one or more users with filters and paging"
method: POST
path: "/compat/v2/recipes/getRecipes"
tags: ["recipes"]
---

# List recipes for one or more users with filters and paging

`POST /compat/v2/recipes/getRecipes`

Callable without authentication when userIds is provided. Responds 401 if neither userIds nor a session token is supplied.

## Request body

- object
  - `userIds` string[]
  - `folder` 'main' | 'inbox', required
  - `orderBy` 'title' | 'createdAt' | 'updatedAt' | 'lastMadeAt', required
  - `orderDirection` 'asc' | 'desc', required
  - `offset` number, required
  - `limit` number, required
  - `recipeIds` string[]
  - `labels` string[]
  - `labelIntersection` boolean
  - `includeAllFriends` boolean
  - `ratings` integer[]
  - `nutritionFilter` object
    - `calories` object
      - `min` number
      - `max` number
      - `matchMissing` boolean
    - `protein` object
      - `min` number
      - `max` number
      - `matchMissing` boolean
    - `totalCarbs` object
      - `min` number
      - `max` number
      - `matchMissing` boolean
    - `totalFat` object
      - `min` number
      - `max` number
      - `matchMissing` boolean
    - `sodium` object
      - `min` number
      - `max` number
      - `matchMissing` boolean

## Response `200`

Successful response

- object
  - `recipes` object[], required
    - `id` string, uuid, required
    - `userId` string, uuid, required
    - `fromUserId` string, uuid, nullable, required
    - `title` string, required
    - `description` string, required
    - `yield` string, required
    - `activeTime` string, required
    - `totalTime` string, required
    - `source` string, required
    - `url` string, required
    - `folder` string, required
    - `createdAt` string, required
    - `updatedAt` string, required
    - `lastMadeAt` string, nullable, required
    - `rating` integer, nullable, required
    - `recipeLabels` object[], required
      - `label` object, required
        - `title` string, required
    - `recipeImages` object[], required
      - `order` integer, required
      - `image` object, required
        - `location` string, required
    - `fromUser` object, nullable, 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
    - `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
  - `totalCount` integer, required

## Other responses

- `400` — Invalid input data
- `401` — Authorization not provided
- `500` — Internal server error

---

[API](https://skmtc.dev/recipesage/apis/recipesage-api.md) · [All operations](https://skmtc.dev/recipesage/apis/recipesage-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/recipesage/recipesage-api/revisions/08ef517bf108/schema)
