Scale Intelligence■ Docs
Docs / Reference / read: under test

read: under test.

A subject or a scope, and the two dates to every hypothesis about it with its standing, its evidence for and against, the tests run and the tests owed, and what would settle each

Figure 1POST /v1/read/under_testspecified
CALLERyour app or an agentholds the keyAPI GATEWAY/v1/read/under_test4 headersCORE: READrung strategygrant readRECORDreads or writesCARD, 200body [Hypothesis]The input is UnderTestInput. Every response carries the contract's hash.flows forwardthe result
The caller sends UnderTestInput to /v1/read/under_test. The platform returns a card whose body is [Hypothesis].
POST/v1/read/under_test

Read what is under test. The call needs the strategy rung under a token with the read grant, and it is served by either, by the size bound.

The route takes UnderTestInput and returns a card whose body is Hypothesis.

Request body#

The request body is UnderTestInput.

fieldtyperequirednote
aboutUnitRefno
scopeScopeno
standingone of under test | supported | refuted | cannot tell | allno

Response#

The route returns a card whose body is Hypothesis. 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.

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 read grant. The platform or the desktop app serves this route.

Example#

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

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

MCP tool#

The MCP tool si.read.under_test 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/Hypothesis. The tool’s page describes it.

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

{}
Without a key, this page shows the request only. The request body is UnderTestInput, and the route returns a card whose body is [Hypothesis].

Claims#

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