| slug | Yes | The cook's recipe or version to change | |
| tags | No | | |
| photo | No | A photo the cook took of this dish: the cover, or a step with step. Pass image_url or image_base64. Never a generated, stock or found-online picture. Asking for it isn't the yes: first tell the cook which recipe and where ("I'll set this photo as the cover of <title>. OK?") and call only after they say yes. It goes through Strega's photo check (a cover needs daylight and at least 1200 px on the long side); a refusal says what to fix and nothing changes. It replaces the current cover, a placeholder illustration included. If you can't pass the file, the cook can use "Add a photo" on the recipe page. Change publication status (unpublished) in a separate call, never together with a photo. | |
| steps | No | | |
| title | No | | |
| author | No | Name to credit (the cook) | |
| tested | No | Mark the recipe tested: the cook says they cooked it themselves and timed it. Ask the cook ("Have you cooked this? About how long did it take, start to finish?") and pass only what they say; never assume it, never estimate the minutes, and never mark a recipe tested because you drafted, imported or adapted it. null clears the mark. Shown as "Tested by the cook · 45 min" and counted as one timed cook. | |
| seasons | No | Explicit recipe labels only: spring, summer, fall, winter. [] means unknown. Do not infer from ingredients, dates, location or weather. | |
| summary | No | One or two sentences on what makes it good | |
| servings | No | | |
| chef_note | No | The chef's note, up to 500 characters: a sentence or two in the cook's words on what makes the recipe theirs. Only what the cook said; never write one for them. | |
| visibility | No | | |
| ingredients | No | | |
| show_counts | No | Whether the page shows "cooked N times · shared N times" once there are enough cooks (#46); default on. false hides them | |
| unpublished | No | true takes the recipe off Strega for everyone but the cook (the link stays theirs, nothing is lost, their lists and plans still open it); false puts it back. Not an edit: no revision. Confirm first, like any change | |
| yield_label | No | servings, cookies, loaves, jars… | |
| cook_minutes | No | | |
| prep_minutes | No | | |
| recover_photo | No | Recover an uploaded cover without another intake. Use only with slug; no other edits, uploads, restoration or publication. First discover with get_my_kitchen section pending_photos, show the selected preview, target and replacement consequence, and wait for the cook's explicit confirmation. | |
| attached_photo | No | A JPG, PNG or WebP photo the cook attached in the chat, for the cover (or a step with photo.step). Convert HEIC/HEIF to one of those formats first. Change publication status (unpublished) in a separate call, never together with a photo. ChatGPT fills in this file object when the cook attaches a picture; don't type a link here (a link goes in photo.image_url). The same rules as photo: only a photo the cook took of this dish; name the recipe and where it goes and get the cook's yes first; it goes through the photo check and replaces the current cover. | |
| restore_revision | No | Undo: put the recipe back to how it was before edit n (see get_recipe's revisions). Other fields you pass apply on top. | |