---
title: "Stream Ask AI"
method: POST
path: "/api/sites/{id}/ask-ai/events"
tags: ["Sites"]
---

# Stream Ask AI

`POST /api/sites/{id}/ask-ai/events`

## Request

- Base URL: `https://demo.hitkeep.com`
- URL: `https://demo.hitkeep.com/api/sites/{id}/ask-ai/events`
- Auth: API key in cookie `hk_token`

Runs the same audited, session-only Ask AI workflow and streams safe Server-Sent Events for progress, answer deltas, and the final validated response. Requires a human dashboard session with site.view; API client bearer tokens and shared dashboard routes are rejected.

## Path parameters

- `id` string, uuid, required

## Request body

- AskAIRequest
  - `filters` AskAIFilter[]
    - `type` string, required
    - `value` string, required
  - `from` string, date
  - `history` AskAIMessage[]
    - `content` string, required
    - `role` 'user' | 'assistant', required
  - `query` string, required
  - `route` string
  - `to` string, date

## Response `200`

Ask AI Server-Sent Events stream

## Other responses

- `400`: Invalid Ask AI request
- `403`: Dashboard session required or forbidden
- `409`: Ask AI unavailable
- `429`: Ask AI budget or daily allowance exhausted

---

[API](https://skmtc.dev/hitkeep/apis/hitkeep-rest-api.md) · [All operations](https://skmtc.dev/hitkeep/apis/hitkeep-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hitkeep/apis/hitkeep-rest-api/revisions/bb2df36ab2a4?raw)
