---
title: "Gateway Chat Stream"
method: POST
path: "/api/gateway/chat/stream"
tags: ["gateway"]
---

# Gateway Chat Stream

`POST /api/gateway/chat/stream`

## Request

- Base URL: `https://api.crowelogic.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.crowelogic.com/api/gateway/chat/stream`
- Auth: none declared

Streaming model gateway. Emits crowe-stream v0 events as SSE.

Behind CROWE_STREAM_ENABLED so the rollout is reversible without a
redeploy. Plan gating mirrors /chat exactly so streamed access can
never exceed the user's tier.

Token accounting note: the v0 renderer counts SDK content deltas
(one increment per feed call), which is approximately the
completion_tokens count but does not include prompt_tokens. We
record what we have on the done event; v1 of the protocol adds the
real provider usage block (gap #3 in the spec) at which point this
becomes accurate. The endpoint is dogfood-only until that lands.

## Headers

- `authorization` string, nullable
- `X-API-Key` string, nullable

## Request body

- GatewayRequest
  - `stream` boolean
  - `model` string, required
  - `messages` object[], required
  - `max_tokens` integer, nullable
  - `temperature` number, nullable
  - `tools` object[], nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/crowelogic/apis/crowe-logic-foundry.md) · [All operations](https://skmtc.dev/crowelogic/apis/crowe-logic-foundry/llms.txt) · [OpenAPI document](https://skmtc.dev/crowelogic/apis/crowe-logic-foundry/revisions/a3c1ef17f171?raw)
