Table of Contents
Menu Endpoints
GET Health
Path
GET: /api/menu/health
Description
Used to check if the container and or application is running correctly.
Parameters
None.
Returns
- 200 OK: Returns the string
"MenuService is running".
GET Categories
Path
GET: /api/menu/categories
Description
Retrieves a list of all available food categories cached from the restaurant menu.
Parameters
None.
Returns
- 200 OK: Returns a JSON array of strings, where each entry is a unique category found from the restaurant menu. No duplicates will occur.
GET Today
Path
GET: /api/menu/today
Description
Fetches the full menu offerings for the current day.
Parameters
None.
Returns
- 200 OK: Returns a JSON array containing the day's menu. If no schedule data is found for today in the cache, an empty JSON array
[]is returned.
The menu object contains:
- Date: Datetime string (in CET/CEST, Swedish time) for the day the menu is offered.
- Vegetarian: A string value of the vegetarian alternative.
- Meat: A string value of the meat alternative.
- FastFood: A string value of the "snabbt och gott" alternative (often called "Dagens Pasta").
- Salad: A string value of today's salad.
- MiscOptions: A JSON object containing any additional categories not covered by the standard four above.
Example successful return:
[
{
"Date": "2026-05-25T02:00:00+02:00",
"Vegetarian": "koreansk vegobiff serveras med jasminris, picklad kål, vårlök och sesamfrö",
"Meat": "Vitlöksmarinerad kycklingfilé serveras med fransk potatissallad, örtcrème och citron",
"FastFood": "Varje dag serveras - Dagens Pasta-",
"Salad": "Götasalens Caesarsallad",
"MiscOptions": {}
}
]
GET Today/{category}
Path
GET: /api/menu/today/{category}
Description
Fetches today's menu offering, filtered on a specific category.
Parameters
category(Path Parameter, String): The name of a cached category. To find all valid category names, use the /api/menu/categories endpoint.
Returns
- 200 OK: Returns a JSON array with a single object containing the requested category's meal. If no schedule data is found, or if the requested category does not exist, an empty JSON array
[]is returned.
The object contains:
- Date: Datetime string (YYYY-MM-DD) for the day the menu is offered.
- Category: The category requested.
- Meal: A string value describing the food.
Example successful return:
[
{
"Date": "2026-05-25",
"Category": "Salad",
"Meal": "Götasalens Caesarsallad"
}
]
GET Week
Path
GET: /api/menu/week
Description
Fetches the full menu offerings for the entire current week.
Parameters
None.
Returns
- 200 OK: Returns a JSON array of objects, one for each day of the week. If no schedule data could be found in the cache, an empty JSON array
[]is returned.
Each object contains:
- Date: Datetime string (in CET/CEST, Swedish time) for the day the menu is offered.
- Vegetarian: A string value of the vegetarian alternative.
- Meat: A string value of the meat alternative.
- FastFood: A string value of the "snabbt och gott" alternative.
- Salad: A string value of the day's salad.
- MiscOptions: A JSON object containing any additional categories.
Example successful return:
[
{
"Date": "2026-05-25T02:00:00+02:00",
"Vegetarian": "koreansk vegobiff serveras med jasminris, picklad kål, vårlök och sesamfrö",
"Meat": "Vitlöksmarinerad kycklingfilé serveras med fransk potatissallad, örtcrème och citron",
"FastFood": "Varje dag serveras - Dagens Pasta-",
"Salad": "Götasalens Caesarsallad",
"MiscOptions": {}
},
{
"Date": "2026-05-26T02:00:00+02:00",
"Vegetarian": "Bolognese på sojafärs serveras med tagliatelle, ruccola och vitlöksbröd",
"Meat": "Panerad fisk serveras med picklad fänkål, dansk remouladsås, potatis och citron",
"FastFood": "Varje dag serveras - Dagens Pasta-",
"Salad": "Götasalens Caesarsallad",
"MiscOptions": {}
}
]
GET Week/{category}
Path
GET: /api/menu/week/{category}
Description
Fetches the week's menu offerings filtered by a specific category.
Parameters
category(Path Parameter, String): The name of a cached category. To find all valid category names, use the /api/menu/categories endpoint.
Returns
- 200 OK: Returns a JSON array with multiple objects, representing the requested category's meal for each day of the week. If no schedule data could be found, or if the requested category does not exist, an empty JSON array
[]is returned.
Each object contains:
- Date: Datetime string (YYYY-MM-DD) for the day the menu is offered.
- Category: The category requested.
- Meal: A string value describing the food.
Example successful return:
[
{
"Date": "2026-05-25",
"Category": "Salad",
"Meal": "Götasalens Caesarsallad"
},
{
"Date": "2026-05-26",
"Category": "Salad",
"Meal": "Götasalens Caesarsallad"
}
]
1. Setup
2. Standards
- Coding Conventions
- Issues
- Branch creation
- Reviews
- Implementation Standards
- [WIP] Creating new databases
- Localization
3. Models and Diagrams
4. Testing
- Testing methodology
- Testing Architecture
- Testing frontend with Playwright
- Integration testing utilizing testcontainers, xUnit and ASP.NET core webhost
5. Documentation
- Documentation for service endpoints
- API documentation
- Webpage Design
- Secrets and .env
- Evaluations
- Installation and Rebuild script documentation
6. Guides and How-to's
7. Micro Service Mockup Api
- Guidelines Mircro Service Mockup
- Documentation of useTemperature/useTemperatureTimeSeries mockup sensor