Skip to content
Rigel docs
Open Rigel

What changed in a week's plan, and who changed it

meals.week.changes

GET/api/v1/households/{household_id}/queries/meals.week.changes

  • Query
  • Rigel runs it

The commands that changed the week's meals, newest first, from the command log: when, who (a person, Rigel, or an outside account), what was done in words, and the affected meals as they were before and after. Use it to see what Rigel or someone else changed, and to put meals back with meals.meal.plan and meals.meal.update. A meal that moved in or out of the week shows its whole history.

Parameters#

What changed in a week's plan, and who changed it: parameters
FieldDescription
household_idpathstringrequired

The household's ID.

week_startquerystring (date)required

The first day of the plan week, YYYY-MM-DD. The week is the 7 days starting on it; screens use the household's week_starts_on day.

limitqueryintegeroptional

How many changes to return, 1 to 100.

1 to 100Default 30

Response#

200 The answer.

What changed in a week's plan, and who changed it: response fields
FieldDescription
changesarray of objectsrequired

The changes, newest first.

changes[].command_idstringrequired

The command that made the change.

changes[].atstring (date-time)required

When the household received it.

changes[].whoobjectrequired
changes[].who.kindone of: person, rigel, outsiderequired

A household member, Rigel, or an outside account.

changes[].who.person_idstring or nullrequired

The person, when known.

changes[].who.namestringrequired

Who, for showing: "Ada", "Rigel", "Someone".

changes[].summarystringrequired

What happened, such as "Moved Tue dinner to Wed dinner".

changes[].beforearray of objectsrequired

The meals the change touched, as they were before it.

changes[].before[].meal_idstringrequired

A meal ID, such as mel_01JC0000000000000000000000.

changes[].before[].labelstringrequired

The meal, such as "Tue dinner".

changes[].before[].datestring (date)required

The day of the meal, YYYY-MM-DD.

changes[].before[].slotone of: breakfast, lunch, dinner, snackrequired

Which meal of the day: breakfast, lunch, dinner or snack.

changes[].before[].peoplearray of stringsrequired

Names of the people it was for.

changes[].before[].dishesarray of stringsrequired

Names of the dishes, in order.

changes[].before[].notestring or nullrequired

The kitchen note, or null.

changes[].afterarray of objectsrequired

The same meals after it.

changes[].after[].meal_idstringrequired

A meal ID, such as mel_01JC0000000000000000000000.

changes[].after[].labelstringrequired

The meal, such as "Tue dinner".

changes[].after[].datestring (date)required

The day of the meal, YYYY-MM-DD.

changes[].after[].slotone of: breakfast, lunch, dinner, snackrequired

Which meal of the day: breakfast, lunch, dinner or snack.

changes[].after[].peoplearray of stringsrequired

Names of the people it was for.

changes[].after[].dishesarray of stringsrequired

Names of the dishes, in order.

changes[].after[].notestring or nullrequired

The kitchen note, or null.

Errors#

Every error has the same envelope: error.code, error.message, error.details, error.recovery and error.request_id.

What changed in a week's plan, and who changed it: errors
StatusCodeWhen
400validation_failedA field is missing, misspelled or out of range. details.fields lists each problem.
401unauthenticatedThe request has no valid session.
404not_foundThe household doesn't exist, or you aren't a member of it.

Examples#

These are real. Each was recorded from a sample household, the Okafors, running through the whole API when this site was built.

What changed in the plan

Each change says who made it, what it did, and what the meals were before and after.

Request, curl
curl 'https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/meals.week.changes?week_start=2026-11-09' \
  -H "Cookie: rigel_session=$RIGEL_SESSION"
Request, TypeScript
const response = await fetch("https://rigel.house/api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/meals.week.changes?week_start=2026-11-09", {
  headers: {
    Cookie: `rigel_session=${process.env.RIGEL_SESSION}`,
  },
});
const data = await response.json();
Request, HTTP
GET /api/v1/households/hh_01M6V9CS6GGVFCY7NAS8ZTQV95/queries/meals.week.changes?week_start=2026-11-09 HTTP/1.1
Host: rigel.house
Cookie: rigel_session=<your session>
Response, 200
HTTP/1.1 200 OK
Content-Type: application/json
X-Request-Id: req_01M6V9CSGT088ZT8PGX6KA3C7N

{
  "changes": [
    {
      "command_id": "cmd_01M6V9CSGQG63ZYEK8BH96W7H6",
      "at": "2026-11-07T15:17:52.279Z",
      "who": {
        "kind": "person",
        "person_id": "per_01M6V9CS6RX26JK5KVYGRN22D2",
        "name": "Ada Okafor"
      },
      "summary": "Removed Tue snack",
      "before": [
        {
          "meal_id": "mel_01M6V9CSGPM55HPSDSNY45G67K",
          "label": "Tue snack",
          "date": "2026-11-10",
          "slot": "snack",
          "people": [
            "Nia"
          ],
          "dishes": [
            "Apple slices"
          ],
          "note": null
        }
      ],
      "after": []
    },
    {
      "command_id": "cmd_01M6V9CSGP039EKRR6FQYHN1MY",
      "at": "2026-11-07T15:17:52.278Z",
      "who": {
        "kind": "person",
        "person_id": "per_01M6V9CS6RX26JK5KVYGRN22D2",
        "name": "Ada Okafor"
      },
      "summary": "Planned Tue snack: Apple slices",
      "before": [],
      "after": [
        {
          "meal_id": "mel_01M6V9CSGPM55HPSDSNY45G67K",
          "label": "Tue snack",
          "date": "2026-11-10",
          "slot": "snack",
          "people": [
            "Nia"
          ],
          "dishes": [
            "Apple slices"
          ],
          "note": null
        }
      ]
    },
    {
      "command_id": "cmd_01M6V9CSGM36VDKBREGFJFBRYV",
      "at": "2026-11-07T15:17:52.276Z",
      "who": {
        "kind": "person",
        "person_id": "per_01M6V9CS6RX26JK5KVYGRN22D2",
        "name": "Ada Okafor"
      },
      "summary": "Took Theo out of Sun dinner",
      "before": [
        {
          "meal_id": "mel_01M6V9CSFXE8ZNK29NR2EPTDDZ",
          "label": "Sun dinner",
          "date": "2026-11-15",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Turkey chili"
          ],
          "note": "Keep Theo's mild."
        }
      ],
      "after": [
        {
          "meal_id": "mel_01M6V9CSFXE8ZNK29NR2EPTDDZ",
          "label": "Sun dinner",
          "date": "2026-11-15",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia"
          ],
          "dishes": [
            "Turkey chili"
          ],
          "note": "Keep Theo's mild."
        }
      ]
    },
    {
      "command_id": "cmd_01M6V9CSGJ57GSEKVPX8ZAHGYP",
      "at": "2026-11-07T15:17:52.274Z",
      "who": {
        "kind": "person",
        "person_id": "per_01M6V9CS6RX26JK5KVYGRN22D2",
        "name": "Ada Okafor"
      },
      "summary": "Moved Fri dinner to Thu dinner, swapping with Sheet pan sausage and potatoes",
      "before": [
        {
          "meal_id": "mel_01M6V9CSFX452XJRFQ0A5WTYPH",
          "label": "Thu dinner",
          "date": "2026-11-12",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Sheet pan sausage and potatoes"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFXM0D756CP5KY4HP4Q",
          "label": "Fri dinner",
          "date": "2026-11-13",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Pizza night"
          ],
          "note": null
        }
      ],
      "after": [
        {
          "meal_id": "mel_01M6V9CSFXM0D756CP5KY4HP4Q",
          "label": "Thu dinner",
          "date": "2026-11-12",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Pizza night"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFX452XJRFQ0A5WTYPH",
          "label": "Fri dinner",
          "date": "2026-11-13",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Sheet pan sausage and potatoes"
          ],
          "note": null
        }
      ]
    },
    {
      "command_id": "cmd_01M6V9CSGGJATEYHMFGW3FSNZ2",
      "at": "2026-11-07T15:17:52.272Z",
      "who": {
        "kind": "person",
        "person_id": "per_01M6V9CS6RX26JK5KVYGRN22D2",
        "name": "Ada Okafor"
      },
      "summary": "Changed Tue dinner",
      "before": [
        {
          "meal_id": "mel_01M6V9CSFXHKGZVJ1H2H384CNQ",
          "label": "Tue dinner",
          "date": "2026-11-10",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Chicken thigh tacos"
          ],
          "note": null
        }
      ],
      "after": [
        {
          "meal_id": "mel_01M6V9CSFXHKGZVJ1H2H384CNQ",
          "label": "Tue dinner",
          "date": "2026-11-10",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Chicken thigh tacos",
            "Corn on the cob"
          ],
          "note": "Use the thawed chicken."
        }
      ]
    },
    {
      "command_id": "cmd_01M6V9CSFXC8P32P49VP9YJQCE",
      "at": "2026-11-07T15:17:52.253Z",
      "who": {
        "kind": "person",
        "person_id": "per_01M6V9CS6RX26JK5KVYGRN22D2",
        "name": "Ada Okafor"
      },
      "summary": "Planned 7 meals",
      "before": [],
      "after": [
        {
          "meal_id": "mel_01M6V9CSFXHKGZVJ1H2H384CNQ",
          "label": "Tue dinner",
          "date": "2026-11-10",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Chicken thigh tacos"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFX06M0A2GQC611XCQA",
          "label": "Wed dinner",
          "date": "2026-11-11",
          "slot": "dinner",
          "people": [
            "Ben Okafor"
          ],
          "dishes": [
            "Team dinner out"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFXGQ25SM1HSAWPM40J",
          "label": "Wed dinner",
          "date": "2026-11-11",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Veggie quesadillas"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFX452XJRFQ0A5WTYPH",
          "label": "Thu dinner",
          "date": "2026-11-12",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Sheet pan sausage and potatoes"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFXM0D756CP5KY4HP4Q",
          "label": "Fri dinner",
          "date": "2026-11-13",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Pizza night"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFXTVMCRYCPZFGJP37A",
          "label": "Sat breakfast",
          "date": "2026-11-14",
          "slot": "breakfast",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Saturday pancakes"
          ],
          "note": null
        },
        {
          "meal_id": "mel_01M6V9CSFXE8ZNK29NR2EPTDDZ",
          "label": "Sun dinner",
          "date": "2026-11-15",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Turkey chili"
          ],
          "note": "Keep Theo's mild."
        }
      ]
    },
    {
      "command_id": "cmd_01M6V9CSFSW5B74VDM47A34KTT",
      "at": "2026-11-07T15:17:52.249Z",
      "who": {
        "kind": "person",
        "person_id": "per_01M6V9CS6RX26JK5KVYGRN22D2",
        "name": "Ada Okafor"
      },
      "summary": "Planned Mon dinner: Tomato and white bean orzo",
      "before": [],
      "after": [
        {
          "meal_id": "mel_01M6V9CSFSFH4859KG4NM47HF2",
          "label": "Mon dinner",
          "date": "2026-11-09",
          "slot": "dinner",
          "people": [
            "Ada Okafor",
            "Ben Okafor",
            "Nia",
            "Theo"
          ],
          "dishes": [
            "Tomato and white bean orzo"
          ],
          "note": "Make extra for lunches."
        }
      ]
    }
  ]
}

For Rigel#

Rigel's tool for this query is meals_week_changes. Rigel runs this on its own, then says what it did. The agent guide has the rest.

Rigel is in early access, and sign-up is by invitation. Open Rigel