BETTERMENU
Studio

List Recipes

List recipes the caller can access in their organization.

Each list item carries latest_version_id — the HEAD ULID for the recipe on the main branch — so callers can pin follow-up reads or diff against a known commit without a per-row round-trip. Each item also carries status (active / archived / deleted) — the recipe lifecycle state.

Pagination is cursor-based: omit cursor on the first page, then pass meta.cursor from each response back as cursor on the next call. The cursor is self-contained — it carries forward the sort_by/order/status it was issued under, so subsequent pages don't need to resend them. Passing a param that conflicts with what the cursor was issued under starts a fresh query at page 1 under the new param rather than erroring. meta echoes the effective sort_by/order/status actually applied. Server caps limit at 100.

Sort defaults to updated_at desc (most recently updated first). status filters to active or archived; omit to return all non-deleted recipes.

Available only on API versions declaring the recipe_versioning capability. Requests without this capability receive a 404.

GET
/studio/recipes

Query Parameters

limit?Limit

Maximum number of recipes to return per page (1-100).

Default10
Range1 <= value <= 100
cursor?|

Opaque pagination cursor returned in meta.cursor from a previous response. Omit on the first page; pass back verbatim on each subsequent page. Self-contained — carries forward the sort/filter it was issued under, so subsequent pages don't need to resend sort_by/order/status.

sort_by?|

Field to sort by. Defaults to updated_at.

order?|

Sort direction. Defaults to desc (most recently updated first).

status?|

Filter to recipes in this lifecycle state. Omit to return all non-deleted recipes.

Response Body

application/json

application/json

curl -X GET "https://api.bettermenu.live/studio/recipes"
{
  "data": [
    {
      "id": "string",
      "name": "string",
      "status": "active",
      "country": "US",
      "regulatory_authority": "US_FDA",
      "demographic": "adults_and_children_over_4",
      "created_at": "string",
      "updated_at": "string",
      "latest_version_id": "string"
    }
  ],
  "meta": {
    "version": "string",
    "request_id": "string",
    "timestamp": "string",
    "cursor": "string",
    "has_more": true,
    "sort_by": "updated_at",
    "order": "asc",
    "status": "active"
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
BETTERMENU

FDA-compliant nutrition labels from a recipe, in minutes.

Visit bettermenu.live