recipes
Draft a recipe from a description, for a curator to finish
Bounded AI assistance. The model writes a first draft; the ingredients it names go through the same catalogue matching as a photo scan or a CSV import, so they arrive unresolved and have to be reviewed before the recipe can be published. The draft is always private and unpublished, and the model never supplies nutrition, CC values or filter tags -- those come from the roll-up over matched foods. A failed draft returns 503 and persists nothing, so manual creation is never blocked by it. A request the model declines returns 400 with its reason, so the author can rewrite the description instead of guessing.
post/chefs/recipes/draft
Request body
Response
a private draft recipe with ingredients awaiting review
Example response
{
"author": "Jane Doe",
"image_url": "https://example.com",
"ingredient_groups": [
{
"ingredients": [
{
"description": "1 cup of milk",
"food_name": "milk",
"food_name_alias": "milk",
"nutrient_overrides": {
"aa_patient": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"bb_reviewer": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"cc_external": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"dd_estimate": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"ee_validation": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
}
},
"serving_unit_label": "cup"
}
]
}
],
"ingredient_responses": [
{
"description": "1 cup of milk",
"food_name": "milk",
"food_name_alias": "milk",
"nutrient_overrides": {
"aa_patient": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"bb_reviewer": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"cc_external": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"dd_estimate": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"ee_validation": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
}
},
"serving_unit_label": "cup"
}
],
"ingredients": [
"1 cup milk"
],
"instructions_str": "Some instructions",
"label": "Quinoa Salad",
"nutrient_overrides": {
"aa_patient": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"bb_reviewer": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"cc_external": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"dd_estimate": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
},
"ee_validation": {
"ontology": {
"id": 42,
"levels": [
"food"
]
}
}
},
"organization": "Diabetes Canada",
"url": "https://example.com"
}