# x402stock Stock Quote API

> x402stock Stock Quote API is a paid API for AI agents from x402stock.vercel.app, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-14).

Returns the latest 15-minute-delayed price quote for a US-listed stock, including OHLCV, change, and previous close, billed at $0.01 USDC per call via x402.

## Facts

- Endpoint: GET https://x402stock.vercel.app/api/v1/quote/MSFT
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402stock-vercel-app-4d639120
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_rMnA3aFjUk3hEIUUQVeC1

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 x402stock-vercel-app-4d639120
```

Example prompt: What's the current stock price for MSFT — give me today's open, high, low, close, volume, and how much it's changed from yesterday's close?

## When to prefer this

Use this endpoint when you need a quick, low-cost ($0.01 USDC) US stock price lookup with today's OHLCV and change data, and a 15-minute delay is acceptable. Prefer this over real-time alternatives when cost efficiency matters more than split-second accuracy, or when building agents that need programmatic per-call micropayment billing via x402.

## Known failure modes

- Invalid or unrecognized ticker symbol returns an error or empty data
- Market closed / outside trading hours may return null for price fields
- Payment not processed (x402 flow not completed) returns 402 Payment Required
- Network or upstream data provider outage returns 5xx error
- Ticker for non-US or OTC securities may not be available

## How this service works

Get the latest available price for any US-listed stock: the most recent 1-minute bar close plus today's OHLCV, change, and previous close. Currently 15 minutes delayed; each response carries `is_delayed: true`. Real-time pricing lands when the data plan is upgraded. From x402stock, a pay-per-call market & economic data API for AI agents. No API key or account; pay in USDC via x402.

## Output

A JSON object with the ticker symbol, latest 1-minute bar close price, today's OHLCV (open/high/low/close/volume) with optional VWAP, dollar change, percent change, previous close, timestamp, data source ('massive'), as_of datetime, and a flag indicating the data is 15 minutes delayed (is_delayed: true).

## Example request

```json
{
 "input": {
  "type": "http",
  "method": "GET",
  "queryParams": {}
 }
}
```

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {}
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "$schema": "https://json-schema.org/draft/2020-12/schema",
     "required": [
      "ticker",
      "data",
      "source",
      "as_of"
     ],
     "properties": {
      "data": {
       "type": "object",
       "required": [
        "price",
        "change",
        "change_percent",
        "previous_close",
        "timestamp",
        "is_delayed",
        "delayed_by"
       ],
       "properties": {
        "day": {
         "type": "object",
         "required": [
          "open",
          "high",
          "low",
          "close",
          "volume"
         ],
         "properties": {
          "low": {
           "type": "number"
          },
          "high": {
           "type": "number"
          },
          "open": {
           "type": "number"
          },
          "vwap": {
           "type": "number"
          },
          "close": {
           "type": "number"
          },
          "volume": {
           "type": "number"
          }
         },
         "additionalProperties": false
        },
        "price": {
         "anyOf": [
          {
           "type": "number"
          },
          {
           "type": "null"
          }
         ]
        },
        "change": {
         "anyOf": [
          {
           "type": "number"
          },
          {
           "type": "null"
          }
         ]
        },
        "timestamp": {
         "anyOf": [
          {
           "type": "string"
          },
          {
           "type": "null"
          }
         ]
        },
        "delayed_by": {
         "type": "string"
        },
        "is_delayed": {
         "type": "boolean"
        },
        "change_percent": {
         "anyOf": [
          {
           "type": "number"
          },
          {
           "type": "null"
         
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402stock-vercel-app-4d639120/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402stock.vercel.app](https://www.zero.xyz/host/x402stock.vercel.app/llms.txt)
