> ## Documentation Index
> Fetch the complete documentation index at: https://velt.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Ask Memory

Use this API to ask a natural-language question over your Memory. The answer is grounded in your judgments and ingested knowledge, and comes with citations and a confidence score. When retrieval finds no relevant context, `answer` is an empty string with `confidence: 0` rather than an invented answer; treat that as "Memory has nothing to say about this yet."

# Endpoint

`POST https://api.velt.dev/v2/memory/ask`

# Headers

<ParamField header="x-velt-api-key" type="string" required>
  Your API key.
</ParamField>

<ParamField header="x-velt-auth-token" type="string" required>
  Your [Auth Token](/security/auth-tokens).
</ParamField>

# Body

#### Params

<ParamField body="data" type="object" required>
  <Expandable title="properties">
    <ParamField body="question" type="string" required>
      Non-empty natural-language question.
    </ParamField>

    <ParamField body="organizationId" type="string">
      Narrow to one organization.
    </ParamField>

    <ParamField body="documentId" type="string">
      Narrow to one document. Requires `organizationId`.
    </ParamField>

    <ParamField body="filters" type="object">
      Same shape as the Search Judgments filters. `annotationId` requires `organizationId`.
    </ParamField>

    <ParamField body="recencyDays" type="integer">
      1 to 365. Recency-true retrieval instead of vector search.
    </ParamField>
  </Expandable>
</ParamField>

## **Example Requests**

#### Ask a policy question

```JSON theme={null}
{
  "data": {
    "question": "How do we handle marketing copy that makes medical claims?"
  }
}
```

# Response

`answer` is the grounded answer (an empty string when there is no grounding context). `citations` point at the judgment records the answer drew on. `confidence` is `0` when the answer is empty.

#### Success Response

```JSON theme={null}
{
  "result": {
    "answer": "Reviewers consistently reject copy that makes medical claims without a citation...",
    "citations": [
      { "recordId": "act_8f3...", "snippet": "Claim 'clinically proven' lacks a citation." }
    ],
    "confidence": 0.74,
    "recordsSearched": 18
  }
}
```

#### Failure Response

```JSON theme={null}
{
  "error": {
    "message": "ERROR_MESSAGE",
    "status": "INVALID_ARGUMENT"
  }
}
```

<ResponseExample>
  ```js theme={null}
  {
    "result": {
      "answer": "Reviewers consistently reject copy that makes medical claims without a citation...",
      "citations": [
        { "recordId": "act_8f3...", "snippet": "Claim 'clinically proven' lacks a citation." }
      ],
      "confidence": 0.74,
      "recordsSearched": 18
    }
  }
  ```
</ResponseExample>
