---
title: "Ask a question (GET)"
method: GET
path: "/ask"
tags: ["ask"]
---

# Ask a question (GET)

`GET /ask`

## Request

- Base URL: `https://hangingcontext.com`
- URL: `https://hangingcontext.com/ask`
- Auth: none required

Answer a question from recent stories. The reply copies facts word for word. It uses no LLM. The protocol is NLWeb. Send Accept: text/event-stream or stream=true to stream.

## Query parameters

- `query` string
- `stream` boolean

## Headers

- `HC-API-Version` '1'

## Response `200`

The answer.

- union
  - AskAnswer: An NLWeb answer. Each result is a fact copied word for word from a story.
    - `_meta` object, required
      - `response_type` string, required
      - `version` string, required
      - `protocol` string
      - `uses_llm` boolean
    - `query` string, required
    - `no_match` boolean
    - `results` object[], required
      - `url` string, uri
      - `name` string
      - `description` string
      - `datePublished` string
      - `manifest_ids` string[]
    - `next_step` string
  - AskHelp: How to call /ask. A GET with no question returns this.
    - `name` string, required
    - `description` string
    - `protocol` string
    - `api_version` string
    - `methods` object, required
    - `parameters` object, required
    - `example` object
    - `authentication` object
      - `required` boolean
    - `rate_limit` object
      - `limit` integer
      - `window_seconds` integer
      - `scope` string

## Other responses

- `400`: The request is not valid.
- `429`: Too many calls from this address. Wait, then call again.
- `500`: The server could not answer. Try again later.

---

[API](https://skmtc.dev/hangingcontext/apis/hanging-context-public-read-api.md) · [All operations](https://skmtc.dev/hangingcontext/apis/hanging-context-public-read-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hangingcontext/apis/hanging-context-public-read-api/revisions/48912c502036?raw)
