{"openapi":"3.1.0","info":{"title":"Catering & Party API","version":"1.0.0","description":"Catering and party-planning maths as an API, computed locally and deterministically — the how-much-do-I-buy numbers a host or caterer plans a headcount with. The food endpoint scales a menu to the guest count and appetite: the main protein at about half a pound of cooked meat per person (light 0.33, hearty 0.75), each side dish at roughly four ounces a head, six appetizer pieces each and one-and-a-half dinner rolls — so 50 guests at a standard dinner with three sides need 25 lb of meat, 300 appetizers and 75 rolls. The drinks endpoint sizes the bar: about one drink per guest per hour plus an extra in the first hour, split across beer, wine and cocktails, and converted into the real units you buy — beer by the case (24) and the half-keg (~165 servings), wine by the bottle (~5 glasses), spirits by the 750 ml bottle (~16 shots) — plus the ice (about 1.5 lb per guest) and water; a 50-guest, four-hour party comes to 250 drinks, 125 beers (0.76 of a keg), 15 bottles of wine and 75 lb of ice. Everything is computed locally and deterministically, so it is instant and private. Ideal for event-planning, catering, hospitality and party app developers, shopping-list and headcount tools, and host calculators. Pure local computation — no key, no third-party service, instant. US units; rules of thumb — round up. Live, nothing stored. 2 compute endpoints. Adjust for the crowd and the season.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/catering-api","description":"oanor gateway"}],"tags":[{"name":"Catering"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/drinks":{"get":{"operationId":"get_v1_drinks","tags":["Catering"],"summary":"Drink quantities","description":"","parameters":[{"name":"guests","in":"query","required":true,"description":"Number of guests","schema":{"type":"string"},"example":"50"},{"name":"hours","in":"query","required":true,"description":"Event length (hours)","schema":{"type":"string"},"example":"4"},{"name":"alcohol","in":"query","required":false,"description":"Serve alcohol (default true)","schema":{"type":"string"},"example":"true"},{"name":"beer_percent","in":"query","required":false,"description":"Beer share % (default 50)","schema":{"type":"string"},"example":"50"},{"name":"wine_percent","in":"query","required":false,"description":"Wine share % (default 30)","schema":{"type":"string"},"example":"30"},{"name":"cocktail_percent","in":"query","required":false,"description":"Cocktail share % (default 20)","schema":{"type":"string"},"example":"20"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"About 1 drink per guest per hour, plus one extra in the first hour. Beer: 24 per case, ~165 per half-keg. Wine: ~5 glasses per bottle. Spirits: ~16 shots per 750 ml. Ice ≈ 1.5 lb per guest.","ice_lb":75,"inputs":{"hours":4,"guests":50,"alcohol":true},"total_drinks":250,"wine_bottles":15,"beer_cases_24":5.21,"beer_servings":125,"water_bottles":100,"wine_servings":75,"beer_half_kegs":0.76,"cocktail_servings":50,"liquor_bottles_750":4},"meta":{"timestamp":"2026-06-06T07:14:07.313Z","request_id":"244e3e75-7cfc-49ff-b4b0-d3d29c97d0de"},"status":"ok","message":"Drink quantities","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/food":{"get":{"operationId":"get_v1_food","tags":["Catering"],"summary":"Food quantities","description":"","parameters":[{"name":"guests","in":"query","required":true,"description":"Number of guests","schema":{"type":"string"},"example":"50"},{"name":"appetite","in":"query","required":false,"description":"light, standard or hearty","schema":{"type":"string"},"example":"standard"},{"name":"sides","in":"query","required":false,"description":"Number of side dishes (default 3)","schema":{"type":"string"},"example":"3"},{"name":"appetizers_per_person","in":"query","required":false,"description":"Appetizer pieces each (default 6)","schema":{"type":"string"}}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"note":"Main protein ≈ 0.5 lb cooked per person (light 0.33, hearty 0.75). Each side ≈ 4 oz per person; appetizers ≈ 6 pieces per person; ~1.5 rolls each. Scale up 10–15% for big eaters or no other food.","inputs":{"sides":3,"guests":50,"appetite":"standard","appetizers_per_person":6},"side_dishes":3,"dinner_rolls":75,"each_side_lb":12.5,"total_sides_lb":37.5,"main_protein_lb":25,"appetizer_pieces":300},"meta":{"timestamp":"2026-06-06T07:14:07.406Z","request_id":"9659078b-8cb9-4b03-b6f1-4e052b23c859"},"status":"ok","message":"Food quantities","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"notes":"US units (pounds, 12-oz beers, 750 ml bottles). Rules of thumb — adjust for the crowd, the season and whether it's a full meal. Round up; running out is worse than leftovers.","service":"catering-api","endpoints":{"GET /v1/food":"Main protein, sides, appetizers and rolls for a guest count and appetite.","GET /v1/meta":"This document.","GET /v1/drinks":"Total drinks, beer (cases/kegs), wine bottles, cocktails, ice and water."},"description":"Catering & party-planning maths: food and drink quantities for a headcount, with kegs, wine bottles and ice."},"meta":{"timestamp":"2026-06-06T07:14:07.495Z","request_id":"a70ca9f3-2c75-45bb-8037-d261cd61365b"},"status":"ok","message":"Meta","success":true}}}},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":6850,"rps_limit":2,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":385,"monthly_call_quota":60500,"rps_limit":6,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":1080,"monthly_call_quota":247500,"rps_limit":15,"hard_limit":true},{"slug":"mega","name":"Mega","price_cents_month":3450,"monthly_call_quota":1385000,"rps_limit":40,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/catering-api"}