Grubhub Orders API

Receive and manage Grubhub Marketplace orders. Retrieve an order by UUID, list a merchant's or a group's orders by status and date range, advance an order through its status lifecycle, raise and poll order change requests, and attach pickup instructions. New orders arrive by webhook; polling is the fallback.

Operations 7

PUT /pos/v1/merchant/{merchant_long_id}/orders/{order_uuid}/status Update order status #
GET /pos/v1/merchant/{merchant_long_id}/orders/{order_uuid}/changerequests Get status of order change request #
POST /pos/v1/merchant/{merchant_long_id}/orders/{order_uuid}/changerequests Request change to order #
POST /pos/v1/merchant/{merchant_id}/orders/{order_uuid}/addpickupinstructions Add Pickup Instructions #
GET /pos/v1/merchant/{merchant_long_id}/orders/{order_uuid} Get order by order ID #
GET /pos/v1/merchant/{merchant_long_id}/orders Get orders by merchant ID, status and date range #
GET /pos/v1/group/{group_key}/orders Get orders by group, status and date range #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/grubhub-orders"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

grubhub-orders-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Orders
servers:
- url: https://api-third-party-gtm-pp.grubhub.com
  description: preprod
- url: https://api-third-party-gtm.grubhub.com
  description: prod
tags:
- name: Models
  description: "# StatusUpdateRequestPayload \n <SchemaDefinition schemaRef=\"#/components/schemas/StatusUpdateRequestPayload\"\
    />\n\n# OrderPickupVerification \n <SchemaDefinition schemaRef=\"#/components/schemas/OrderPickupVerification\"\
    />\n\n# PosTaxTotal \n <SchemaDefinition schemaRef=\"#/components/schemas/PosTaxTotal\"/>\n\n# Affiliate \n\
    \ <SchemaDefinition schemaRef=\"#/components/schemas/Affiliate\"/>\n\n# CatalogVersion \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/CatalogVersion\"/>\n\n# RestaurantVersionId \n <SchemaDefinition schemaRef=\"\
    #/components/schemas/RestaurantVersionId\"/>\n\n# PosOrder \n <SchemaDefinition schemaRef=\"#/components/schemas/PosOrder\"\
    />\n\n# PosOrderCoupon \n <SchemaDefinition schemaRef=\"#/components/schemas/PosOrderCoupon\"/>\n\n# Address\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/Address\"/>\n\n# Catering \n <SchemaDefinition schemaRef=\"\
    #/components/schemas/Catering\"/>\n\n# Charges \n <SchemaDefinition schemaRef=\"#/components/schemas/Charges\"\
    />\n\n# ContactInfo \n <SchemaDefinition schemaRef=\"#/components/schemas/ContactInfo\"/>\n\n# DefaultContext\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/DefaultContext\"/>\n\n# DeliveryInfo \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/DeliveryInfo\"/>\n\n# Dimensions \n <SchemaDefinition schemaRef=\"#/components/schemas/Dimensions\"\
    />\n\n# Diner \n <SchemaDefinition schemaRef=\"#/components/schemas/Diner\"/>\n\n# Fees \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/Fees\"/>\n\n# FulfillmentInfo \n <SchemaDefinition schemaRef=\"#/components/schemas/FulfillmentInfo\"\
    />\n\n# Line \n <SchemaDefinition schemaRef=\"#/components/schemas/Line\"/>\n\n# LineGroup \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/LineGroup\"/>\n\n# LineOption \n <SchemaDefinition schemaRef=\"#/components/schemas/LineOption\"\
    />\n\n# LineSubOption \n <SchemaDefinition schemaRef=\"#/components/schemas/LineSubOption\"/>\n\n# LineTag \n\
    \ <SchemaDefinition schemaRef=\"#/components/schemas/LineTag\"/>\n\n# Payment \n <SchemaDefinition schemaRef=\"\
    #/components/schemas/Payment\"/>\n\n# Payments \n <SchemaDefinition schemaRef=\"#/components/schemas/Payments\"\
    />\n\n# PhysicalInfo \n <SchemaDefinition schemaRef=\"#/components/schemas/PhysicalInfo\"/>\n\n# PickupInfo\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/PickupInfo\"/>\n\n# PosOrderMerchantData \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/PosOrderMerchantData\"/>\n\n# Promotion \n <SchemaDefinition schemaRef=\"\
    #/components/schemas/Promotion\"/>\n\n# Reward \n <SchemaDefinition schemaRef=\"#/components/schemas/Reward\"\
    />\n\n# StatusUpdate \n <SchemaDefinition schemaRef=\"#/components/schemas/StatusUpdate\"/>\n\n# Taxes \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/Taxes\"/>\n\n# Tip \n <SchemaDefinition schemaRef=\"#/components/schemas/Tip\"\
    />\n\n# OrderFacetData \n <SchemaDefinition schemaRef=\"#/components/schemas/OrderFacetData\"/>\n\n# LeadTimeSettings\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/LeadTimeSettings\"/>\n\n# LeadTimeSettingsTier \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/LeadTimeSettingsTier\"/>\n\n# ThresholdSettings \n <SchemaDefinition schemaRef=\"\
    #/components/schemas/ThresholdSettings\"/>\n\n# Chronology \n <SchemaDefinition schemaRef=\"#/components/schemas/Chronology\"\
    />\n\n# DateTimeZone \n <SchemaDefinition schemaRef=\"#/components/schemas/DateTimeZone\"/>\n\n# Instant \n\
    \ <SchemaDefinition schemaRef=\"#/components/schemas/Instant\"/>\n\n# AddLineSubstitution \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/AddLineSubstitution\"/>\n\n# LineSubstitutionAdjustment \n <SchemaDefinition\
    \ schemaRef=\"#/components/schemas/LineSubstitutionAdjustment\"/>\n\n# QuantityAndWeightLineSubstitution \n\
    \ <SchemaDefinition schemaRef=\"#/components/schemas/QuantityAndWeightLineSubstitution\"/>\n\n# QuantityLineSubstitution\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/QuantityLineSubstitution\"/>\n\n# RemoveLineSubstitution\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/RemoveLineSubstitution\"/>\n\n# ReplaceLineSubstitution\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/ReplaceLineSubstitution\"/>\n\n# SubItemLineSubstitution\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/SubItemLineSubstitution\"/>\n\n# TotalSubstitutionAdjustment\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/TotalSubstitutionAdjustment\"/>\n\n# OrderChangeRequest\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/OrderChangeRequest\"/>\n\n# LineOptionSubstitution \n\
    \ <SchemaDefinition schemaRef=\"#/components/schemas/LineOptionSubstitution\"/>\n\n# LineSubstitutionReplacement\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/LineSubstitutionReplacement\"/>\n\n# SubstitutionAdjustment\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/SubstitutionAdjustment\"/>\n\n# SubstitutionRequest\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/SubstitutionRequest\"/>\n\n# LineSubstitutionType \n\
    \ <SchemaDefinition schemaRef=\"#/components/schemas/LineSubstitutionType\"/>\n\n# OrderChangeRequestStatus\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/OrderChangeRequestStatus\"/>\n\n# OrderPickupInstructions\
    \ \n <SchemaDefinition schemaRef=\"#/components/schemas/OrderPickupInstructions\"/>\n\n"
paths:
  /pos/v1/merchant/{merchant_long_id}/orders/{order_uuid}/status:
    put:
      tags:
      - Endpoints
      summary: Update order status
      description: Updating order status for the requested order id.
      operationId: updateExternalOrderStatusByOrderUuid
      parameters:
      - name: merchant_long_id
        in: path
        description: The Grubhub or third-party provided external ID for the merchant.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: order_uuid
        in: path
        description: Order UUID
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
      requestBody:
        description: The request payload.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StatusUpdateRequestPayload'
            examples:
              Basic Status Update:
                description: Basic Status Update
                value:
                  status: CONFIRMED
                  wait_time_in_minutes: 10
                  tax_total:
                    tax: 3
                    type: ABSOLUTE
                  sub_total: 2345
              Status Update with Pickup Verification:
                description: Status Update with Pickup Verification
                value:
                  status: CONFIRMED
                  wait_time_in_minutes: 10
                  pickup_verification:
                    verification_code: ABC123
                    capture_method: QR_SCAN
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PosOrder'
              example:
                uuid: JylzkoC0Ee2zk-PUFdlLqg
                merchant_uuid: 0OfxgNelEey87BGSJG9AHg
                order_number: '604721063804098'
                is_test: false
                status: REJECTED
                statusHistory:
                - status: REJECTED
                  timestamp: '2022-12-20T22:46:01.582Z'
                  update_source: CONFIRMATION_AUTOMATION
                - status: STALE
                  timestamp: '2022-12-20T22:36:00.864Z'
                  update_source: GRUBHUB_ORDERS_REAPER
                  reason: Stuck status RESTAURANT_CONFIRMABLE at 2022-12-20T22:36:00.864Z
                - status: RESTAURANT_CONFIRMABLE
                  timestamp: '2022-12-20T22:18:07.810Z'
                  update_source: TXS
                - status: ANTICIPATED
                  timestamp: '2022-12-20T22:18:07.430Z'
                  update_source: DINER
                  reason: non-GHD
                updated_at: '2022-12-20T22:46:01.582Z'
                merchant_id: '10004116752'
                fulfillment_info:
                  pickup_info:
                    name: John Doe
                    contact_info:
                      phone: (222) 222-2222
                      name: John Doe
                    instructions: ''
                    is_green_indicated: true
                brand: GRUBHUB
                time_placed: '2022-12-20T22:18:06.214Z'
                confirmation_code: '6335'
                when_for: '2022-12-20T22:28:06.221Z'
                restaurant_timezone_id: America/New_York
                payments:
                  payments:
                  - payment_type: CREDIT_CARD
                    amount: 472
                    tax_application: POST_TAX
                  total: 472
                  adjusted_total: 472
                charges:
                  fees:
                    total: 0
                    delivery: 0
                  taxes:
                    total: 32
                    sales: 32
                    delivery: 0
                    restaurant: 32
                    merchant_sales_total: 32
                    merchant_total: 32
                  tip:
                    amount: 0
                    type: CASH
                  diner_grand_total: 472
                  grand_total: 472
                  adjusted_grand_total: 472
                  line_groups:
                  - lines:
                    - name: Avocado Cherry Tomato
                      line_options: []
                      price: 440
                      merchant_price: 440
                      quantity: 1
                      menu_item_id: '2426676565'
                      menu_item_uuid: AAAAAAAAAAasdAkadss
                      diner_total: 440
                      total: 440
                      tags: []
                      external_id: Salad|Avocado Salad
                      metadata:
                        internal_id: 1123234
                      routing_tags: []
                      line_uuid: J5AkoIC0Ee2koy&8hjj
                      packaging_options: []
                  coupons: []
                  merchant_total: 472
                  merchant_subtotal: 440
                  restaurant_subtotal: 440
                  merchant_subtotal_before_coupons: 440
                tax_withheld: true
                jit_enabled: true
                just_in_time_fired: false
                diners:
                - status: ACTIVE
                  diner_info:
                    phone: (222) 222-2222
                    name: John Doe
                  charges:
                    fees:
                      total: 0
                      delivery: 0
                    taxes:
                      total: 32
                      sales: 32
                      delivery: 0
                      restaurant: 32
                      merchant_sales_total: 32
                      merchant_total: 32
                    tip:
                      amount: 0
                      type: CASH
                    diner_grand_total: 472
                    grand_total: 472
                    adjusted_grand_total: 472
                    line_groups:
                    - lines:
                      - name: Avocado Salad
                        line_options: []
                        price: 440
                        merchant_price: 440
                        quantity: 1
                        menu_item_id: '2426676565'
                        diner_total: 440
                        total: 440
                        tags: []
                        routing_tags: []
                        line_uuid: J5AkoIC0Ee2koy&8hjj
                        packaging_options: []
                    coupons: []
                    merchant_total: 472
                    merchant_subtotal: 440
                    restaurant_subtotal: 440
                    merchant_subtotal_before_coupons: 440
                  payments:
                    payments:
                    - payment_type: CREDIT_CARD
                      amount: 472
                      payment_source: UNKNOWN
                      tax_application: POST_TAX
                    total: 472
                    adjusted_total: 472
                  order_diner_number: '1232132343'
                  cart_uuid: JylzkIC0Ee2zkePUaHjs
                  participation: HOST
                order_type: STANDARD
                order_taking_system: CARTING
                handoff_options: []
                restaurant_version_id:
                  catalog_version:
                    version_id: v1:VoNHjJPBjGrXXThkLnOrrgVAmwBG3yR2
                fulfillment_scheduling: ASAP
                transmission_id: IwsfGSpHM461UOWnLXHf6g
                order_merchant_id: 9CvhTfZvNvqR8_WRGSjL9Q
        '404':
          description: Order does not exist for order id.
  /pos/v1/merchant/{merchant_long_id}/orders/{order_uuid}/changerequests:
    get:
      tags:
      - Endpoints
      summary: Get status of order change request
      description: Returns the status of all order change requests of a single order.
      operationId: getChangeRequests
      parameters:
      - name: merchant_long_id
        in: path
        description: The Grubhub or third-party provided external ID for the merchant.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: order_uuid
        in: path
        description: Order UUID.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
      responses:
        '404':
          description: Could not find any change requests.
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrderChangeRequestStatus'
              example:
              - order_id: 93101167-9065-4b9c-b98b-5d789a3ed9fe
                change_request_id: f90819c3-6f40-44d9-9518-d77c485c0c12
                request:
                  amount: 5
                  restaurant_agent_name: POS Terminal
                  requestor_email: jack@email.com
                  requestor_first_name: Jack
                  requestor_last_name: Jack
                  reason: offline
                  reason_code: offline
                  change_action: cancel.action
                status: COMPLETED
                ticket_id: 123456789
                requested_action: test
    post:
      tags:
      - Endpoints
      summary: Request change to order
      description: Request a change (cancellation & adjustments) to an existing order.
      operationId: changeExternalOrder
      parameters:
      - name: merchant_long_id
        in: path
        description: The Grubhub or third-party provided external ID for the merchant.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: order_uuid
        in: path
        description: Order UUID
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
      requestBody:
        description: The requested change to the order.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderChangeRequest'
            example:
              amount: 5
              restaurant_agent_name: POS Terminal
              requestor_email: jack@email.com
              requestor_first_name: Jack
              requestor_last_name: Jack
              reason: offline
              reason_code: offline
              change_action: cancel.action
        required: true
      responses:
        '400':
          description: Bad Request
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderChangeRequestStatus'
              example:
                order_id: 93101167-9065-4b9c-b98b-5d789a3ed9fe
                change_request_id: f90819c3-6f40-44d9-9518-d77c485c0c12
                request:
                  amount: 5
                  restaurant_agent_name: POS Terminal
                  requestor_email: jack@email.com
                  requestor_first_name: Jack
                  requestor_last_name: Jack
                  reason: offline
                  reason_code: offline
                  change_action: cancel.action
                status: COMPLETED
                ticket_id: 123456789
                requested_action: test
  /pos/v1/merchant/{merchant_id}/orders/{order_uuid}/addpickupinstructions:
    post:
      tags:
      - Endpoints
      summary: Add Pickup Instructions
      description: Add Pickup Instructions for individual order.
      operationId: addPickupInstructionsToOrder
      parameters:
      - name: merchant_id
        in: path
        description: The Grubhub or third-party provided external ID for the merchant.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: order_uuid
        in: path
        description: Order UUID
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
      requestBody:
        description: The requested instructions and/or pickup verification to the order. At least one of order_pickup_instructions
          or pickup_verification must be provided.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderPickupInstructions'
            examples:
              Basic Pickup Instructions:
                description: Basic Pickup Instructions
                value:
                  order_pickup_instructions: Dynamic Instruction
                  updated_at: '2025-03-04T14:20:00.000Z'
              Pickup Verification Only:
                description: Pickup Verification Only
                value:
                  pickup_verification:
                    verification_code: ABC123
                    capture_method: QR_SCAN
                  updated_at: '2025-03-04T14:20:00.000Z'
              Both Instructions and Verification:
                description: Both Instructions and Verification
                value:
                  order_pickup_instructions: Please come to the back entrance
                  pickup_verification:
                    verification_code: XYZ789
                    capture_method: MANUAL_ENTRY
                  updated_at: '2025-03-04T14:20:00.000Z'
        required: true
      responses:
        '204':
          description: No Content
        '404':
          description: Order does not exist for order id.
  /pos/v1/merchant/{merchant_long_id}/orders/{order_uuid}:
    get:
      tags:
      - Endpoints
      summary: Get order by order ID
      description: Returns the single order requested by its UUID.
      operationId: getPosOrderByOrderUuid
      parameters:
      - name: X-GH-PARTNER-KEY
        in: header
        required: false
        style: simple
        explode: false
        schema:
          type: string
      - name: merchant_long_id
        in: path
        description: The Grubhub or third-party provided external ID for the merchant.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: order_uuid
        in: path
        description: Order UUID.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          format: uuid
      - name: legacyStatus
        in: query
        description: Legacy status
        required: false
        style: form
        explode: true
        schema:
          type: boolean
      responses:
        '404':
          description: Order does not exist
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PosOrder'
              example:
                uuid: JylzkoC0Ee2zk-PUFdlLqg
                merchant_uuid: 0OfxgNelEey87BGSJG9AHg
                order_number: '604721063804098'
                is_test: false
                status: REJECTED
                statusHistory:
                - status: REJECTED
                  timestamp: '2022-12-20T22:46:01.582Z'
                  update_source: CONFIRMATION_AUTOMATION
                - status: STALE
                  timestamp: '2022-12-20T22:36:00.864Z'
                  update_source: GRUBHUB_ORDERS_REAPER
                  reason: Stuck status RESTAURANT_CONFIRMABLE at 2022-12-20T22:36:00.864Z
                - status: RESTAURANT_CONFIRMABLE
                  timestamp: '2022-12-20T22:18:07.810Z'
                  update_source: TXS
                - status: ANTICIPATED
                  timestamp: '2022-12-20T22:18:07.430Z'
                  update_source: DINER
                  reason: non-GHD
                updated_at: '2022-12-20T22:46:01.582Z'
                merchant_id: '10004116752'
                fulfillment_info:
                  pickup_info:
                    name: John Doe
                    contact_info:
                      phone: (222) 222-2222
                      name: John Doe
                    instructions: ''
                    is_green_indicated: true
                brand: GRUBHUB
                time_placed: '2022-12-20T22:18:06.214Z'
                confirmation_code: '6335'
                when_for: '2022-12-20T22:28:06.221Z'
                restaurant_timezone_id: America/New_York
                payments:
                  payments:
                  - payment_type: CREDIT_CARD
                    amount: 472
                    tax_application: POST_TAX
                  total: 472
                  adjusted_total: 472
                charges:
                  fees:
                    total: 0
                    delivery: 0
                  taxes:
                    total: 32
                    sales: 32
                    delivery: 0
                    restaurant: 32
                    merchant_sales_total: 32
                    merchant_total: 32
                  tip:
                    amount: 0
                    type: CASH
                  diner_grand_total: 472
                  grand_total: 472
                  adjusted_grand_total: 472
                  line_groups:
                  - lines:
                    - name: Avocado Cherry Tomato
                      line_options: []
                      price: 440
                      merchant_price: 440
                      quantity: 1
                      menu_item_id: '2426676565'
                      menu_item_uuid: AAAAAAAAAAasdAkadss
                      diner_total: 440
                      total: 440
                      tags: []
                      external_id: Salad|Avocado Salad
                      metadata:
                        internal_id: 1123234
                      routing_tags: []
                      line_uuid: J5AkoIC0Ee2koy&8hjj
                      packaging_options: []
                  coupons: []
                  merchant_total: 472
                  merchant_subtotal: 440
                  restaurant_subtotal: 440
                  merchant_subtotal_before_coupons: 440
                tax_withheld: true
                jit_enabled: true
                just_in_time_fired: false
                diners:
                - status: ACTIVE
                  diner_info:
                    phone: (222) 222-2222
                    name: John Doe
                  charges:
                    fees:
                      total: 0
                      delivery: 0
                    taxes:
                      total: 32
                      sales: 32
                      delivery: 0
                      restaurant: 32
                      merchant_sales_total: 32
                      merchant_total: 32
                    tip:
                      amount: 0
                      type: CASH
                    diner_grand_total: 472
                    grand_total: 472
                    adjusted_grand_total: 472
                    line_groups:
                    - lines:
                      - name: Avocado Salad
                        line_options: []
                        price: 440
                        merchant_price: 440
                        quantity: 1
                        menu_item_id: '2426676565'
                        diner_total: 440
                        total: 440
                        tags: []
                        routing_tags: []
                        line_uuid: J5AkoIC0Ee2koy&8hjj
                        packaging_options: []
                    coupons: []
                    merchant_total: 472
                    merchant_subtotal: 440
                    restaurant_subtotal: 440
                    merchant_subtotal_before_coupons: 440
                  payments:
                    payments:
                    - payment_type: CREDIT_CARD
                      amount: 472
                      payment_source: UNKNOWN
                      tax_application: POST_TAX
                    total: 472
                    adjusted_total: 472
                  order_diner_number: '1232132343'
                  cart_uuid: JylzkIC0Ee2zkePUaHjs
                  participation: HOST
                order_type: STANDARD
                order_taking_system: CARTING
                handoff_options: []
                restaurant_version_id:
                  catalog_version:
                    version_id: v1:VoNHjJPBjGrXXThkLnOrrgVAmwBG3yR2
                fulfillment_scheduling: ASAP
                transmission_id: IwsfGSpHM461UOWnLXHf6g
                order_merchant_id: 9CvhTfZvNvqR8_WRGSjL9Q
  /pos/v1/merchant/{merchant_long_id}/orders:
    get:
      tags:
      - Endpoints
      summary: Get orders by merchant ID, status and date range
      description: Returns the list of orders for the requested merchant in a given status and date range.
      operationId: getPosOrdersByMerchantStatusDateRange
      parameters:
      - name: X-GH-PARTNER-KEY
        in: header
        required: false
        style: simple
        explode: false
        schema:
          type: string
      - name: merchant_long_id
        in: path
        description: The Grubhub or third-party provided external ID for the merchant.
        required: true
        style: simple
        explode: false
        schema:
          type: string
      - name: status
        in: query
        description: Filters returned orders by the provided statuses.
        required: false
        style: form
        explode: true
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
      - name: start
        in: query
        description: Start time for the query.
        required: false
        style: form
        explode: true
        schema:
          type: string
          format: date-time
      - name: end
        in: query
        description: End time for the query. Must be within 24 hours of start time.
        required: false
        style: form
        explode: true
        schema:
          type: string
          format: date-time
      - name: legacyStatus
        in: query
        description: If true, order statuses returned will be translated to legacy order statuses. Default is FALSE.
        required: false
        style: form
        explode: true
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PosOrder'
              example:
              - uuid: JylzkoC0Ee2zk-PUFdlLqg
                merchant_uuid: 0OfxgNelEey87BGSJG9AHg
                order_number: '604721063804098'
                is_test: false
                status: REJECTED
                statusHistory:
                - status: REJECTED
                  timestamp: '2022-12-20T22:46:01.582Z'
                  update_source: CONFIRMATION_AUTOMATION
                - status: STALE
                  timestamp: '2022-12-20T22:36:00.864Z'
                  update_source: GRUBHUB_ORDERS_REAPER
                  reason: Stuck status RESTAURANT_CONFIRMABLE at 2022-12-20T22:36:00.864Z
                - status: RESTAURANT_CONFIRMABLE
                  timestamp: '2022-12-20T22:18:07.810Z'
                  update_source: TXS
                - status: ANTICIPATED
                  timestamp: '2022-12-20T22:18:07.430Z'
                  update_source: DINER
                  reason: non-GHD
                updated_at: '2022-12-20T22:46:01.582Z'
                merchant_id: '10004116752'
                fulfillment_info:
                  pickup_info:
                    name: John Doe
                    contact_info:
                      phone: (222) 222-2222
                      name: John Doe
                    instructions: ''
                    is_green_indicated: true
                brand: GRUBHUB
                time_placed: '2022-12-20T22:18:06.214Z'
                confirmation_code: '6335'
                when_for: '2022-12-20T22:28:06.221Z'
                restaurant_timezone_id: America/New_York
                payments:
                  payments:
                  - payment_type: CREDIT_CARD
                    amount: 472
                    tax_application: POST_TAX
                  total: 472
                  adjusted_total: 472
                charges:
                  fees:
                    total: 0
                    delivery: 0
                  taxes:
                    total: 32
                    sales: 32
                    delivery: 0
                    restaurant: 32
                    merchant_sales_total: 32
                    merchant_total: 32
                  tip:
                    amount: 0
                    type: CASH
                  diner_grand_total: 472
                  grand_total: 472
                  adjusted_grand_total: 472
                  line_groups:
                  - lines:
                    - name: Avocado Cherry Tomato
                      line_options: []
                      price: 440
                      merchant_price: 440
                      quantity: 1
                      menu_item_id: '2426676565'
                      menu_item_uuid: AAAAAAAAAAasdAkadss
                      diner_total: 440
                      total: 440
                      tags: []
                      external_id: Salad|Avocado Salad
                      metadata:
                        internal_id: 1123234
                      routing_tags: []
                      line_uuid: J5AkoIC0Ee2koy&8hjj
                      packaging_options: []
                  coupons: []
                  merchant_total: 472
                  merchant_subtotal: 440
                  restaurant_subtotal: 440
                  merchant_subtotal_before_coupons: 440
                tax_withheld: true
                jit_enabled: true
                just_in_time_fired: false
                diners:
                - status: ACTIVE
                  diner_info:
                    phone: (222) 222-2222
                    name: John Doe
                  charges:
                    fees:
                      total: 0
                      delivery: 0
                    taxes:
                      total: 32
                      sales: 32
                      delivery: 0
                      restaurant: 32
                      merchant_sales_total: 32
                      merchant_total: 32
                    tip:
                      amount: 0
                      type: CASH
                    diner_grand_total: 472
 

# --- truncated at 32 KB (102 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/grubhub/refs/heads/main/openapi/grubhub-orders-openapi.yml