Merran documentation API & integrations
Repeat last week
const url = 'http://localhost:3000/api/plan/repeat';const options = { method: 'POST', headers: { cookie: 'merran.session_token=<merran.session_token>', 'Content-Type': 'application/json' }, body: '{"week":"2026-10-11"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url http://localhost:3000/api/plan/repeat \ --header 'Content-Type: application/json' \ --cookie merran.session_token=<merran.session_token> \ --data '{ "week": "2026-10-11" }'The week before’s meals, again: each on the same weekday and meal where that slot is still empty, and its pool into this week’s pool. Skipped meals stay behind; the copies start as planned. The answer is what was added, for Undo (take them off in bulk). With an API key, it needs the plan: write permission.
Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”object
The week’s first day.
Example
2026-10-15Example
{ "week": "2026-10-11"}Responses
Section titled “Responses”What was added.
object
object
Its day, or for the week’s pool, the week’s first day.
In the week’s pool: for any day of the week.
Its place among the meal’s dishes.
Null for a note.
object
In a serving, when its nutrition is known.
What it’s made with: “with peanut sauce”.
object
A meal that isn’t a recipe: “leftovers”.
Null for the recipe’s own servings.
Why it was picked, when Fill the week picked it: none otherwise.
object
object
object
object
One is the lowest it’s been in a while.
object
object
object
object
object
object
Example
{ "entries": [ { "id": "0199e8b0-5a10-7a01-8b00-00000000001b", "date": "2026-10-15", "anyDay": false, "meal": "dinner", "position": 0, "status": "planned", "recipe": { "id": "0199e8b0-5a10-7a01-8b00-000000000006", "slug": "lemon-chicken", "name": "Lemon Chicken", "photo": null, "servings": 4, "totalMinutes": 50, "calories": 412 }, "withRecipe": { "id": "0199e8b0-5a10-7a01-8b00-000000000007", "slug": "garlic-rice", "name": "Garlic Rice", "calories": 210 }, "note": null, "servings": null, "why": [ { "kind": "theme", "label": "Taco night" } ], "createdAt": "2026-10-15T18:30:00.000Z" } ]}Not signed in.
object
object
object
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}Not allowed.
object
object
object
Example
{ "error": { "code": "not_found", "message": "There's nothing here.", "fields": { "name": "Give it a name." } }}© 2026 Kyle Johnson. Documentation: CC BY 4.0. Merran: AGPL-3.0-or-later.