---
title: "New Webhook Event (Stream –> DSP via Webhook)"
method: POST
path: "/stream-dsp/v1/event"
---

# New Webhook Event (Stream –> DSP via Webhook)

`POST /stream-dsp/v1/event`

## Request

- The document declares no server URL.
- Auth: none declared
- TypeScript: <https://skmtc.dev/meet-jenna/apis/become-a-stream-dsp/docs/stream-dsp/v1/event/post.ts> (a function with typed inputs; its response is checked against the schema)

You will have to build this endpoint into your system. This is where Stream will send all webhook events.

## Headers

- `Authorization` string

## Request body

- union
  - DspLocationPauseEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that should be paused
    - `until_ms` number: The time in milliseconds to pause until. If not specified, the location will be paused indefinitely.
  - DspLocationResumeEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that should be resumed
  - DspLocationMenuEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that this menu ingest applies to.
    - `download_url` string: This is an S3 URL pointing to a JSON file containing contents in the shape of DspLocationMenuEventDataDto.
  - DspLocationMenuUpdateEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that this menu update event applies to.
    - `object_updates` ObjectUpdatesDto, required
      - `items` ObjectUpdateDto[], required: Items with updates
        - `stream_id` string, required
        - `is_active` boolean, required
      - `variations` ObjectUpdateDto[], required: Variations with updates
        - `stream_id` string, required
        - `is_active` boolean, required
      - `modifiers` ObjectUpdateDto[], required: Modifiers with updates
        - `stream_id` string, required
        - `is_active` boolean, required
  - DspLocationOrderAcceptedEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that this order is for.
    - `order_id` string: The order ID that this event is for.
    - `estimated_ready_at_ms` number: The estimated time in milliseconds that the order will be ready for pickup.
  - DspLocationOrderFailedEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that this order is for.
    - `order_id` string: The order ID that this event is for.
    - `failure_reason` 'restaurant_not_accepting_orders' | 'location_not_found' | 'pos_missing_items' | 'items_unavailable' | 'order_validation_error' | 'unknown': The reason for the order failure.
    - `failure_details` OrderFailureDetails
      - `invalid_item_ids` string[], required: A list of item ids that caused the failure
      - `error_message` string: A message describing the error that occured
  - DspLocationOrderUpdateEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that this order is for.
    - `order_id` string: The order ID that this event is for.
    - `order_status_update` 'ready_for_pickup' | 'completed': An updated status of the order.
  - DspLocationOrderCanceledEventDto
    - `type` string, required: The type of event that this is.
    - `location_id` string, required: The location ID that this order is for.
    - `order_id` string: The order ID that this event is for.

## Response `201`

- object

---

[API](https://skmtc.dev/meet-jenna/apis/become-a-stream-dsp.md) - [All operations](https://skmtc.dev/meet-jenna/apis/become-a-stream-dsp/llms.txt) - [OpenAPI document](https://skmtc.dev/meet-jenna/apis/become-a-stream-dsp/revisions/a5d965f37379?raw)
