Skip to content
Skip to Content
Docs
Studio

Get Recipe Added Sugars Report

Returns the recipe's Added Sugars report, row by row, and whether a person has confirmed it. The report is null when the recipe has none. confirmation is one of confirmed, stale, unconfirmed, ungated or unreadable. Nothing is computed or saved by reading.

report.engine.suggester_allowed says whether suggested answers can be requested now: the feature is switched on and the organization's allowance covers at least one row. It is worked out for each read and is not part of the report's fingerprint.

The top-level version_id is the version read. Pass ?version_id= to read an earlier version; its confirmation state is judged against that version's report.

GET
/studio/recipes/{recipe_id}/added-sugars-report

Path Parameters

recipe_id*Recipe Id

Query Parameters

version_id?|

Leave out for the current recipe. To read an earlier version, pass a version_id from the recipe's version list.

Response Body

Successful Response

application/json
  1. response

GET Added Sugars report response envelope.

This is the shared envelope for reading, patching and confirming the report.

data*

The report of one recipe version and its confirmation state.

meta*

Response metadata.

version_id?|

The version the report was read at; pass it as If-Match on the next change to this report. Null only for a recipe that was never versioned. The ETag is derived from it and does not change when confirmation changes, so do not use the ETag to detect that.

Example Request
curl -X GET 'https://api.bettermenu.live/studio/recipes/string/added-sugars-report'
Example Response
{  "data": {    "report": {      "market": "US",      "engine": {        "regulatory_package_version": "string",        "suggester_allowed": true,        "suggester_used": true,        "suggester_prompt_version": "string"      },      "determination": {        "basis": "batch",        "reference_weight_grams": "string",        "rows": [          {            "ingredient_row_id": "stringstringstringstringst",            "ingredient": {              "ingredient_id": "string",              "custom_ingredient_id": "stringstringstringstringst",              "custom_ingredient_version_id": "string",              "name": "string",              "quantity_grams": "string",              "total_sugars_per_100g": "string",              "total_sugars_grams": "string"            },            "derived": {              "resolution": "settled",              "path": [                {                  "question": "string",                  "answer": "yes",                  "docs_url": "string"                }              ],              "contributes": true,              "factor": "string",              "added_sugars_grams": "string",              "settled_by": "data_check",              "open_reasons": [                "sugars_missing"              ],              "citation": {                "authority": "regulation",                "cite": "string",                "quote": "string"              },              "added_sugars_per_100g": "string"            },            "suggested": {              "by": "suggester",              "confidence": "confident",              "added_sugars_grams": "string",              "quantity_grams_when_entered": "string",              "reason": "string",              "citation": {                "authority": "regulation",                "cite": "string",                "quote": "string"              },              "provenance": {                "model": "string",                "fallback_model_used": true,                "prompt_version": "string",                "config_version": 0,                "settled_by_stage": "string"              },              "question": "string",              "added_sugars_per_100g": "string"            },            "caller": {              "action": "accept_suggestion",              "added_sugars_grams": "string",              "quantity_grams_when_entered": "string",              "entered_added_sugars_per_100g": "string",              "reason": "string",              "supplier_reference": "string",              "actor": {                "type": "member",                "id": "string"              },              "channel": "studio",              "at": "2019-08-24T14:15:22Z"            },            "effective": {              "added_sugars_grams": "string",              "source": "data_check",              "added_sugars_per_100g": "string"            },            "checks": [              {                "id": "sugar_data",                "status": "ok",                "summary": "string",                "why_it_matters": "string",                "citation": {                  "authority": "regulation",                  "cite": "string",                  "quote": "string"                },                "docs_url": "string"              }            ]          }        ],        "totals": {          "added_sugars_grams": "string",          "total_sugars_grams": "string"        },        "declarations": [          {            "serving_id": "stringstringstringstrings",            "serving_description": "string",            "servings_per_container": "string",            "added_sugars_grams_per_serving": "string",            "total_sugars_grams_per_serving": "string",            "declared_grams": {              "outcome": "zero",              "value": "string"            },            "total_sugars_declared_grams": {              "outcome": "zero",              "value": "string"            },            "population": "adults_and_children_over_4",            "drv_grams": "string",            "percent_dv": "string",            "dv_basis": "unrounded_amount"          }        ],        "findings": [          {            "code": "row_added_sugar_invalid",            "row_id": "string",            "serving_id": "string"          }        ]      },      "presentation": {        "readiness": {          "total_rows": 0,          "settled_rows": 0,          "suggested_rows": 0,          "open_rows": 0,          "ready_to_confirm": true        },        "unresolved_rows": [          "stringstringstringstringst"        ],        "total_sugars_complete": true,        "rows_without_total_sugars": [          "stringstringstringstringst"        ]      },      "checks": [        {          "id": "sugar_data",          "status": "ok",          "summary": "string",          "why_it_matters": "string",          "citation": {            "authority": "regulation",            "cite": "string",            "quote": "string"          },          "docs_url": "string"        }      ]    },    "report_hash": "string",    "confirmation": "confirmed"  },  "meta": {    "version": "string",    "request_id": "string",    "timestamp": "string"  },  "version_id": "string"}

Recipe in, FDA-format Nutrition Facts out, with every version kept.

Start freeNo card needed.