GET /health
Returns a simple liveness status. Use this endpoint to confirm the server has started successfully before making other calls. No parameters required.Response
Always
"ok" when the server is running.Example
GET /menu
Returns the complete list of drinks available for ordering. No parameters required.Response
An array ofMenuItem objects.
Unique drink identifier. One of:
espresso, americano, latte, cappuccino, cold-brew, tea.Human-readable display name for the drink.
Drink category. One of:
espresso, tea.Base price in US cents before size multipliers or extra shot surcharges are applied.
Milk options that can be requested for this drink. Possible values:
whole, oat, almond, none.Temperature options available for this drink. Possible values:
hot, iced, extra-hot.Maximum number of espresso shots that can be added.
0 for tea.Errors
_tag | HTTP status | Description |
|---|---|---|
InternalAppError | 500 | An unexpected server error occurred |
Example
Full menu at a glance
| Drink | Base price | Milks | Temperatures | Max shots |
|---|---|---|---|---|
| Espresso | $3.00 | none | hot | 4 |
| Americano | $3.50 | none | hot, iced | 4 |
| Latte | $4.50 | whole, oat, almond, none | hot, iced, extra-hot | 4 |
| Cappuccino | $4.25 | whole, oat, almond, none | hot, extra-hot | 4 |
| Cold Brew | $4.00 | whole, oat, almond, none | iced | 2 |
| Tea | $3.25 | none | hot, iced | 0 |
Prices shown are base prices for a small size. Medium and large sizes apply a multiplier of 1.15× and 1.30× respectively. Each extra shot beyond the first costs $0.75.