BETTERMENU
Studio

Export Label Artifact

Generate (or return cached) label artifact(s) for one serving.

On the first request for a given (recipe version, serving, format, resolution) combination the label HTML is assembled, rendered by the label-renderer Lambda, and the result is permanently cached in S3. Subsequent requests return the cached artifact without re-rendering.

Concurrent first-download requests are safe — only one PUT lands; all others receive a pre-signed URL for the same artifact.

Organizations in their trial period always receive a DRAFT-watermarked artifact, regardless of the draft_watermark parameter — as do organizations whose billing status cannot currently be confirmed. Otherwise the watermark is controlled via that parameter.

Organizations on a non-subscription plan (past_due/expired/ cancelled) may still re-fetch an already-cached artifact, but a request that would require a fresh render (bm-be#2296) is denied with a 402.

Available only on API versions declaring the recipe_versioning capability.

GET
/studio/recipes/{recipe_id}/servings/{serving_id}/label-export

Path Parameters

serving_id*Serving Id

Serving identifier

recipe_id*Recipe Id

Query Parameters

formats?array<string>|

Output file formats. Valid values: pdf, png, jpeg. Specify once per format, e.g. ?formats=pdf&formats=png.

resolution?LabelResolution

Output resolution tier.

Default"print"
Value in"print" | "digital"
label_format?LabelFormat

Panel layout.

Default"standard_vertical"
Value in"standard_vertical"
version_id?|

Optional version ULID to pin the response to a historical snapshot. Omit to read the live HEAD on the main branch. 26-character Crockford Base32 (no I, L, O, U).

draft_watermark?Draft Watermark

When true (default), overlay a DRAFT watermark on all output formats. Set to false to export the final, watermark-free artifact. Ignored (forced to true) while the organization is in its trial period, or whenever its billing status cannot be confirmed.

Defaulttrue

Response Body

application/json

application/json

curl -X GET "https://api.bettermenu.live/studio/recipes/string/servings/string/label-export"
{
  "label_format": "standard_vertical",
  "resolution": "print",
  "version_id": "string",
  "artifacts": [
    {
      "format": "string",
      "artifact_url": "string",
      "expires_at": "2019-08-24T14:15:22Z"
    }
  ],
  "meta": {
    "version": "string",
    "request_id": "string",
    "timestamp": "string"
  }
}
{
  "detail": [
    {
      "loc": [
        "string"
      ],
      "msg": "string",
      "type": "string",
      "input": null,
      "ctx": {}
    }
  ]
}
BETTERMENU

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

Visit bettermenu.live