---
title: "Menu Ingestion File (DSP -> URL)"
method: GET
path: "/stream-dsp/v1/menuFileS3Url"
---

# Menu Ingestion File (DSP -> URL)

`GET /stream-dsp/v1/menuFileS3Url`

This is where you will retrieve all menu contents, the URL will be provided in the location.publish event. Response schema version (v1 or v2) is determined by partner configuration flag. Partners must contact support to enable v2 schema access.

## Response `200`

Menu file contents in either v1 or v2 format based on partner configuration

- union
  - DspLocationMenuEventDataDto
    - `prep_time_minutes` number, required — Estimated prep time for the store used for display purposes, location.order.accept will contain order level estimated fulfillment time.
    - `menus` Menu[], required
      - `schedule` Schedule, required
        - `monday` string[], required
        - `tuesday` string[], required
        - `wednesday` string[], required
        - `thursday` string[], required
        - `friday` string[], required
        - `saturday` string[], required
        - `sunday` string[], required
      - `stream_id` string, required
      - `categories` Category[], required
        - `stream_id` string, required
        - `name` string, required
        - `items` Item[], required
          - `stream_id` string, required
          - `is_alcohol` boolean — Provided when item is marked as Alcoholic and needs age verification
          - `tax_ids` string[], required — Contains item level tax rate assignments (References `taxes` objects)
          - `default_item_id` string — The stream_id of the default variation for this item. Only set if a default variation is configured.
          - `name` string, required
          - `description` string
          - `images` Image[]
            - `url` string, required
          - `variations` ItemVariation[], required
            - `stream_id` string, required
            - `price` number, required — This will always be the lowest denomination. $1.50 USD = 150
            - `currency` string, required — We use lower-cased ISO 4127 alphabetic currency codes (https://www.iso.org/iso-4217-currency-codes.html)
            - `name` string, required
            - `is_active` boolean
            - `sku` string
            - `upc` string
            - `stock_count` number
          - `modifier_groups` ModifierGroup[], required
            - `stream_id` string, required
            - `name` string, required
            - `default_modifier_quantities` DefaultModifierQuantities
            - `modifiers` Modifier[], required
              - …
            - `rules` ModifierRules
              - …
          - `is_active` boolean
          - `allergens` string[]
        - `description` string
      - `name` string, required
    - `holidays` Holiday[], required
      - `date` string, required — Day of the year in format MM-DD. Example: 05-14
      - `hours` string[] — Timeslots that the restaurant is open for this holiday. If ommited, the location is closed for the entire day. Example: ['7:15-14:30', '15:30-22:00'], exact same format as `Schedule` entity times
      - `recurring_yearly` boolean, required — Flag that indicates if this holiday repeats every year
      - `specific_years` number[] — When `reccurring_yearly` is false, this array contains the specific years that the holiday occurs on. Example: [2024, 2025]
      - `name` string — Name of this holiday. Optional
    - `taxes` Tax[], required — Tax rates assigned to objects across the menu
      - `stream_id` string, required
      - `is_inclusive` boolean — Determines if the tax amount is already included in the item price
      - `rate` number, required
      - `name` string, required
      - `is_default` boolean
  - DspLocationMenuEventDataV2Dto
    - `prep_time_minutes` number, required — Estimated prep time for the store used for display purposes, location.order.accept will contain order level estimated fulfillment time.
    - `menus` MenuV2[], required
      - `stream_id` string, required
      - `name` string, required
      - `schedule` Schedule, required
        - `monday` string[], required
        - `tuesday` string[], required
        - `wednesday` string[], required
        - `thursday` string[], required
        - `friday` string[], required
        - `saturday` string[], required
        - `sunday` string[], required
      - `category_ids` string[], required
    - `holidays` Holiday[], required
      - `date` string, required — Day of the year in format MM-DD. Example: 05-14
      - `hours` string[] — Timeslots that the restaurant is open for this holiday. If ommited, the location is closed for the entire day. Example: ['7:15-14:30', '15:30-22:00'], exact same format as `Schedule` entity times
      - `recurring_yearly` boolean, required — Flag that indicates if this holiday repeats every year
      - `specific_years` number[] — When `reccurring_yearly` is false, this array contains the specific years that the holiday occurs on. Example: [2024, 2025]
      - `name` string — Name of this holiday. Optional
    - `taxes` Tax[], required
      - `stream_id` string, required
      - `is_inclusive` boolean — Determines if the tax amount is already included in the item price
      - `rate` number, required
      - `name` string, required
      - `is_default` boolean
    - `categories` CategoryV2[], required — contains all categories
      - `stream_id` string, required
      - `name` string, required
      - `item_family_ids` string[], required
      - `description` string
    - `modifier_groups` ModifierGroupV2[], required — contains all mod groups
      - `stream_id` string, required
      - `name` string, required
      - `modifier_ids` string[], required
      - `rules` ModifierRulesV2
        - `minimum_unique_modifiers_allowed` number
        - `maximum_unique_modifiers_allowed` number
        - `amount_of_modifiers_free` number
        - `selection_type` 'single' | 'single_proportion' | 'multiple'
        - `default_modifier_quantities` DefaultModifierQuantities
      - `overrides` OverrideRules[] — If a parent item or modifier is referenced by the override, the rules of the override have precedence over the rules of this modifier group.
        - `parent_id` string, required — can be a modifier or item family
        - `parent_type` object, required
        - `override_rules` ModifierRulesV2, required
          - `minimum_unique_modifiers_allowed` number
          - `maximum_unique_modifiers_allowed` number
          - `amount_of_modifiers_free` number
          - `selection_type` 'single' | 'single_proportion' | 'multiple'
          - `default_modifier_quantities` DefaultModifierQuantities
    - `item_families` ItemFamilyV2[], required — contains all item families
      - `stream_id` string, required
      - `name` string, required
      - `description` string
      - `images` Image
        - `url` string, required
      - `item_ids` string[], required
      - `modifier_group_ids` string[], required
      - `is_alcohol` boolean
      - `tax_ids` string[], required
      - `allergens` string[]
      - `default_item_id` string
    - `items` ItemV2[], required — Keepiung sepcific to the for now for a more stream adjacent approach.
      - `price` number, required — This will always be the lowest denomination. $1.50 USD = 150
      - `currency` string, required — We use lower-cased ISO 4127 alphabetic currency codes (https://www.iso.org/iso-4217-currency-codes.html)
      - `stream_id` string, required
      - `name` string, required
      - `modifier_overrides` ItemModifierOverride[] — for size specific modifier pricing
        - `modifier_id` string, required
        - `price_amount` number, required — cents
      - `menu_specific_overrides` MenuSpecificItemOverride[]
        - `menu_id` string, required — which menu is this override valid for
        - `price_amount` number, required
        - `is_active` boolean
      - `is_active` boolean
      - `sku` string
      - `upc` string
      - `stock_count` number
    - `modifiers` ModifierV2[], required
      - `stream_id` string, required
      - `name` string, required
      - `price` number, required
      - `currency` string, required
      - `is_active` boolean
      - `nested_modifier_group_ids` string[]
      - `images` Image[]
        - `url` string, required

---

[API](https://skmtc.net/meet-jenna/apis/become-a-stream-dsp.md) · [All operations](https://skmtc.net/meet-jenna/apis/become-a-stream-dsp/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/meet-jenna/become-a-stream-dsp/versions/a5d965f37379/schema)
