Schemas
The normalized fields behind every answer.
StackResolve does not return prose blobs. It stores atomic, typed facts grouped into namespaces, and every primitive reads from them. This is what keeps the output normalized and reusable rather than a free-text report. Each field has a type and a time-to-live (TTL) that drives Freshness.
#company
The record behind get_company.
| Field | Type | TTL |
|---|---|---|
description | string | 30 days |
products | string[] | 7 days |
categories | string[] | 30 days |
executives | object | 7 days |
funding | object | 7 days |
technology | string[] | 7 days |
recent_news | object | 1 hour |
#pricing
The record behind get_pricing.
| Field | Type | TTL |
|---|---|---|
pricing | object | 1 day |
free_tier | bool | 1 day |
self_serve | bool | 1 day |
#agent_capability
The capability facts the AgentReady Score reads.
| Field | Type | TTL |
|---|---|---|
api | bool | 7 days |
openapi | bool | 7 days |
mcp_available | bool | 1 day |
cli | bool | 7 days |
sdks | string[] | 7 days |
llms_txt | bool | 7 days |
authentication | string | 7 days |
claude_compatible | bool | 1 day |
codex_compatible | bool | 1 day |
cursor_compatible | bool | 1 day |
#readability
Agent-readability signals, aligned with the Vercel agent-readability spec.
| Field | Type | TTL |
|---|---|---|
robots_ai_allowed | bool | 7 days |
sitemap | bool | 7 days |
agents_md | bool | 7 days |
canonical | bool | 7 days |
meta_description | bool | 7 days |
json_ld | bool | 7 days |
markdown_mirror | bool | 7 days |
#Category specialization
Some categories carry their own fields so the output is genuinely normalized, not generic.
- payments:
cards,ach,marketplaces,stablecoins,subscriptions,payouts,merchant_of_record,countries. - database:
engine,serverless,branching,vector,regions. - crm:
contacts,pipelines,api_first,native_integrations.
More categories gain their own fields over time. Each field's TTL drives Freshness. Values are typed: a bool is a real boolean, a list is a real array, an object is a nested structure.