Scale Intelligence■ Docs
Docs / Reference / ask: preview

ask: preview.

A predicate or its hash, the place, the window, the speeds wanted, and the caller with the surface it calls from to the typed answer of section 2.3, as it fills

Figure 1POST /v1/ask/previewspecified
CALLERyour app or an agentholds the keyAPI GATEWAY/v1/ask/preview4 headersCORE: ASKrung strategygrant askRECORDreads or writesTASK, 202body PreviewAnswerThe input is PreviewInput. Every response carries the contract's hash.flows forwardthe result
The caller sends PreviewInput to /v1/ask/preview. The platform returns a card whose body is PreviewAnswer.
POST/v1/ask/previewa task, 202

Preview. The call needs the strategy rung under a token with the ask grant, and it is served by either, by the size bound.

The route takes PreviewInput and returns a card whose body is PreviewAnswer.

Request body#

The request body is PreviewInput.

fieldtyperequirednote
predicatePredicateno
predicate_hashhashno
placePlaceARunsAtyes
windowWindowyes
speeds[one of instant | the last seven days | the whole record]yes

Response#

The route returns a card whose body is PreviewAnswer. Every card ends with a foot that states the basis of each number, the scope of the call, and the time when the facts were true. This route runs as a long step and returns a task with status 202. POST /v1/work/status returns the task’s progress, and POST /v1/work/cancel stops the task.

Headers#

headerrequiredmeaning
Scale-Scopeyesthe scope the call runs in: tenant/, then /brand/, then /strategy/
Scale-As-True-Onnothe date the facts must have been true on; defaults to now
Scale-As-Known-Onnothe date the facts must have been known on; defaults to now
Scale-Keynofor a change, the key made from the input; a repeat under the same key returns the unit held and writes nothing

A caller needs the strategy rung and a token with the ask grant. The platform or the desktop app serves this route.

Example#

The example sends the smallest body that PreviewInput allows. The build validates it against the schema of PreviewInput.

Example
curl -X POST https://api.scaleintelligence.co/v1/ask/preview \
  -H "Scale-Key: $SCALE_KEY" -H "Scale-Scope: tenant/<id>" \
  -H "content-type: application/json" \
  -d '{ "place": "…", "window": { "from": "…", "to": "…" }, "speeds": [] }'
import { client } from "@scale/sdk";
const answer = await client.ask.preview({
    "place": "…",
    "window": {
      "from": "…",
      "to": "…"
    },
    "speeds": []
  });
// answer.body is a PreviewAnswer. answer.foot holds the basis, the scope and the time.
import requests
answer = requests.post("https://api.scaleintelligence.co/v1/ask/preview",
    headers={"Scale-Key": KEY, "Scale-Scope": "tenant/<id>"},
    json={
      "place": "…",
      "window": {
        "from": "…",
        "to": "…"
      },
      "speeds": []
    }).json()
let answer: Card = client.post("https://api.scaleintelligence.co/v1/ask/preview")
    .header("Scale-Key", key).header("Scale-Scope", "tenant/<id>")
    .json(&PreviewInput { /* the fields of the page */ }).send().await?.json().await?;

MCP tool#

The MCP tool si.ask.preview takes the same input and returns the same card. The tool only reads data. An MCP host that renders cards draws this card from ui://scale-intelligence/cards/PreviewAnswer. The tool’s page describes it.

POST /v1/ask/preview
Scale-Scope: …
Scale-As-True-On: …
Scale-As-Known-On: …
Scale-Key: …
content-type: application/json

{
  "place": "…",
  "window": {
    "from": "…",
    "to": "…"
  },
  "speeds": []
}
Without a key, this page shows the request only. The request body is PreviewInput, and the route returns a card whose body is PreviewAnswer.

Claims#

claimstateroute or tool
The platform serves the route /v1/ask/preview at contract 0476e35e6e275db5.target/v1/ask/preview