# BeliefState Get Research Visual

> BeliefState Get Research Visual is a paid API for AI agents from beliefstate.ai, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-29).

Retrieves structured data from a saved analyst research visual, including chart points, table rows, or region descriptors with optional time-travel via as_of dating.

## Facts

- Endpoint: POST https://beliefstate.ai/v1/research/get_research_visual?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/beliefstate-get-research-visual-46a88ea4
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_l0DCWi7XDoGHo0MrWYQh9

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability beliefstate-get-research-visual-46a88ea4 -d '<json body>'
```

Example prompt: Pull the structured data from BeliefState visual ID a3f7c2...d9e1 — give me up to 50 rows starting from the beginning, and use the as-of date 2025-01-15T00:00:00Z so I get the analyst's view as it stood then.

## When to prefer this

Use this endpoint when you have already identified a specific BeliefState research visual (via list_research_visuals) and need to retrieve its underlying structured data — chart points, table rows, or region descriptors. Prefer this over general research endpoints when you need paginated, time-stamped, or region-specific access to a saved analyst visual. Ideal when backtesting against historical analyst views using the as_of parameter.

## Known failure modes

- Invalid visual_id format (not 64-char hex) returns validation error
- visual_id not found returns 404 or empty result
- region_id not matching a valid region of the visual returns error
- row_offset exceeding available data returns empty rows
- Invalid as_of datetime format returns schema validation error
- Invalid context_assessment_id UUID format returns validation error
- Payment failure via x402 protocol blocks access
- Expired or unauthorized belief_id returns access denied

## How this service works

The first AI-powered platform for top analyst research. Get theses from top analysts, dated evidence, and available outcomes for your AI.

## Output

Returns a JSON object containing the structured data for the requested visual, including an as_of timestamp, a generated_at timestamp, schema version, and the actual chart points or table rows (up to the requested row_limit) for the specified region. May also include next_region_offset for pagination.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input",
  "output"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "required": [
      "visual_id"
     ],
     "properties": {
      "as_of": {
       "type": "string",
       "format": "date-time",
       "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
      },
      "belief_id": {
       "type": "string",
       "maxLength": 128,
       "minLength": 1
      },
      "region_id": {
       "type": "string",
       "pattern": "^[a-f0-9]{64}$",
       "description": "Use a region_id returned in the selected visual's regions to retrieve structured data."
      },
      "row_limit": {
       "type": "integer",
       "maximum": 100,
       "minimum": 1,
       "description": "Rows or chart points per read; defaults to 50, maximum 100."
      },
      "visual_id": {
       "type": "string",
       "pattern": "^[a-f0-9]{64}$",
       "description": "Saved visual ID returned by list_research_visuals."
      },
      "row_offset": {
       "type": "integer",
       "maximum": 999,
       "minimum": 0,
       "description": "Zero-based starting row or chart-point index in the selected region."
      },
      "region_offset": {
       "type": "integer",
       "maximum": 9007199254740991,
       "minimum": 0,
       "description": "Continue a selected visual's region descriptors using next_region_offset."
      },
      "context_assessment_id": {
       "type": "string",
       "format": "uuid",
       "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
       "description": "Open a neutral engine context assessment returned by a brief or ordered change. It is not an author Belief."
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "type": "string",
     "const": "POST"
    },
    "bodyType": {
     "type": "string",
     "const": "json"
    }
   },
   "additionalProperties":
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "as_of": "2026-10-24T00:00:00.000Z",
  "generated_at": "2026-10-24T00:00:00.000Z",
  "schema_version": "1"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/beliefstate-get-research-visual-46a88ea4/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from beliefstate.ai](https://www.zero.xyz/host/beliefstate.ai/llms.txt)
