---
title: "NLWeb-compatible natural-language query endpoint"
method: GET
path: "/ask"
tags: ["NLWeb"]
---

# NLWeb-compatible natural-language query endpoint

`GET /ask`

## Request

- Base URL: `https://www.snowsure.ai`
- URL: `https://www.snowsure.ai/ask`
- Auth: none declared

Microsoft NLWeb protocol adapter over the SnowSure answer engine. Pass ?query=. Optional: site, prev (comma-separated prior queries), query_id, mode (list|summarize|generate), streaming (1/true). SSE streaming when Accept: text/event-stream or streaming=1 — events: start, result, complete, error.

## Query parameters

- `query` string, required
- `site` string
- `prev` string
- `query_id` string
- `mode` 'list' | 'summarize' | 'generate'
- `streaming` string

## Response `200`

NLWeb response (JSON, or text/event-stream when streaming)

- NlwebResponse
  - `query_id` string
  - `results` object[]
    - `url` string, uri
    - `name` string
    - `site` string
    - `score` number
    - `description` string
    - `schema_object` object

## Other responses

- `400`: query is required
- `429`: Rate limit exceeded

---

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