openapi: 3.1.0 info: title: MealMe Food Ordering Carts Stores API version: 4.1.0 description: 'MealMe provides a food and grocery ordering API for menus, inventory, and order placement at over one million restaurants and grocery stores in the United States and Canada. The API covers store and product search, store lookup, inventory/menu retrieval, product details, cart creation and management, order creation and finalization, payment methods, MealMe Connect accounts, customer support chat, order tracking webhooks, places search, and geocoding. Every menu item and grocery product returned includes real-time availability, prices, and customizations or modifiers. The current reference is version 4.1.0. Paths in this specification mirror the documented MealMe endpoints under https://api.mealme.ai (for example `/search/store/v3`, `/cart/create`, and `/order/order/v4`). Authentication uses an API key passed in the Authorization header. ' contact: name: MealMe API Reference url: https://docs.mealme.ai/reference servers: - url: https://api.mealme.ai description: MealMe production API security: - apiKeyHeader: [] tags: - name: Stores description: Store lookup, inventory, and product details. paths: /utils/store_lookup/v3: get: tags: - Stores operationId: storeLookup summary: Get a MealMe Store description: Fetch stores by a comma-delimited list of store IDs (max 50). parameters: - in: query name: store_ids required: true schema: type: string example: 8c9f33d5-d138-4a49-9a4f-162f195c89b8 - in: query name: use_new_db schema: type: boolean default: true example: true responses: '200': description: Stores. content: application/json: schema: type: array items: $ref: '#/components/schemas/Store' examples: StoreLookup200Example: summary: Default storeLookup 200 response x-microcks-default: true value: - _id: 8c9f33d5-d138-4a49-9a4f-162f195c89b8 name: Tony's Pizza Napoletana address: 188 King Street, San Francisco, CA 94107 type: restaurant is_open: false phone_number: '+14155550123' cuisines: - Pizza - Italian rating: 4.5 miles: 1.5 quotes: [] '400': description: Input Validation Error '401': description: Missing Authorization '429': description: Too Many Requests x-microcks-operation: delay: 0 dispatcher: FALLBACK /utils/add_store: get: tags: - Stores operationId: addStore summary: Add a Google Place to MealMe description: Add a store to MealMe by its Google Place identifier. parameters: - in: query name: place_id required: true schema: type: string example: id_7b2c4e responses: '200': description: Store added. '401': description: Missing Authorization x-microcks-operation: delay: 0 dispatcher: FALLBACK /details/inventory/v4: get: tags: - Stores operationId: getInventory summary: Get Inventory description: Retrieve a store's menu or grocery inventory. parameters: - in: query name: store_id required: true schema: type: string example: 8c9f33d5-d138-4a49-9a4f-162f195c89b8 - in: query name: subcategory_id schema: type: string example: id_7b2c4e - in: query name: pickup schema: type: boolean default: false example: false - in: query name: include_quote schema: type: boolean default: false example: false - in: query name: include_customizations schema: type: boolean default: true example: true - in: query name: available schema: type: boolean default: true example: true - in: query name: page schema: type: integer example: 0 - in: query name: menu_id schema: type: string example: id_7b2c4e responses: '200': description: Inventory. '400': description: Input Validation Error '401': description: Missing Authorization '429': description: Too Many Requests x-microcks-operation: delay: 0 dispatcher: FALLBACK /details/product/v2: get: tags: - Stores operationId: getProductDetails summary: Get Product Details description: Retrieve details for a single product including customizations. parameters: - in: query name: product_id required: true schema: type: string example: prod_5a3e9d12 - in: query name: pickup schema: type: boolean default: false example: false - in: query name: include_quote schema: type: boolean default: false example: false - in: query name: user_latitude schema: type: number example: 37.7786357 - in: query name: user_longitude schema: type: number example: -122.3918135 - in: query name: include_fees schema: type: boolean default: true example: true responses: '200': description: Product. content: application/json: schema: $ref: '#/components/schemas/Product' examples: GetProductDetails200Example: summary: Default getProductDetails 200 response x-microcks-default: true value: product_id: prod_5a3e9d12 name: Tony's Pizza Napoletana price: 1299 available: false store_name: Tony's Pizza Napoletana menu_id: id_7b2c4e '400': description: Input Validation Error '401': description: Missing Authorization '406': description: Product Unavailable '429': description: Too Many Requests x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: Product: type: object properties: product_id: type: string example: prod_5a3e9d12 name: type: string example: Tony's Pizza Napoletana price: type: integer description: Price in cents. example: 1299 available: type: boolean example: false store_name: type: string example: Tony's Pizza Napoletana menu_id: type: string example: id_7b2c4e Store: type: object properties: _id: type: string example: 8c9f33d5-d138-4a49-9a4f-162f195c89b8 name: type: string example: Tony's Pizza Napoletana address: type: string example: 188 King Street, San Francisco, CA 94107 type: type: string enum: - restaurant - grocery example: restaurant is_open: type: boolean example: false phone_number: type: string example: '+14155550123' cuisines: type: array items: type: string example: - Pizza - Italian rating: type: number example: 4.5 miles: type: number example: 1.5 quotes: type: array items: type: object example: [] securitySchemes: apiKeyHeader: type: apiKey in: header name: Authorization description: API key issued by MealMe, passed in the Authorization header.