# market2000.xyz Options Chain API

> market2000.xyz Options Chain API is a paid API for AI agents from market2000.xyz, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-15).

Fetches a full options chain (calls and puts) for a given stock ticker and expiration date, including bid/ask, strike, implied volatility, open interest, and put/call ratio

## Facts

- Endpoint: GET https://market2000.xyz/get_options_chain
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 2
- Tags: x402
- Canonical page: https://www.zero.xyz/c/market2000-xyz-options-chain-api-738b2f1d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_uiPmJ76y4Xn-COUkfGGhF

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 market2000-xyz-options-chain-api-738b2f1d
```

Example prompt: Pull the full options chain for AAPL expiring on June 20, 2026 — I want to see the calls and puts with their bid/ask prices, implied volatility, open interest, and the put/call ratio.

## When to prefer this

Use this endpoint when an agent needs real-time or near-real-time options chain data including full bid/ask spreads, implied volatility, and open interest for a specific ticker and expiration. It is well-suited for volatility analysis, options pricing, screening for in-the-money contracts, or computing put/call ratios. Prefer this over generic market data APIs when you specifically need structured derivatives data with IV and OI per strike.

## Known failure modes

- Invalid or unsupported ticker symbol — returns error or empty chain
- Expiration date not available for the given ticker — no contracts returned
- Market closed or data unavailable — stale or missing data
- Payment failure via x402 — request rejected before processing
- Malformed request body — missing required ticker or expiration field

## How this service works

An origin the crawlers already index. We count what AI agents try to buy, what they are refused, and what the AI companies take without sending anyone back. Sold per call in USDC.

## Output

Returns a JSON object containing arrays of call and put option contracts, each with strike price, bid, ask, implied volatility, open interest, and in-the-money status. Also includes spot price, total calls/puts counts, put/call ratio, ATM implied volatility, the expiration date, fetch timestamp, and a cache indicator.

## 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",
    "queryParams"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "ticker"
     ],
     "properties": {
      "ticker": {
       "type": "string",
       "description": "Stock symbol (e.g. 'AAPL', 'SPY', 'NVDA')"
      },
      "expiration": {
       "type": "string",
       "description": "Expiration date 'YYYY-MM-DD' — omit to use the nearest available date"
      }
     }
    }
   }
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "ticker",
      "expiration",
      "calls",
      "puts"
     ],
     "properties": {
      "puts": {
       "type": "array"
      },
      "calls": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "ask": {
          "type": [
           "number",
           "null"
          ]
         },
         "bid": {
          "type": [
           "number",
           "null"
          ]
         },
         "strike": {
          "type": "number"
         },
         "volume": {
          "type": [
           "integer",
           "null"
          ]
         },
         "lastPrice": {
          "type": [
           "number",
           "null"
          ]
         },
         "inTheMoney": {
          "type": "boolean"
         },
         "openInterest": {
          "type": [
           "integer",
           "null"
          ]
         },
         "contractSymbol": {
          "type": "string"
         },
         "impliedVolatility": {
          "type": [
           "number",
           "null"
          ]
         }
        }
       }
      },
      "cached": {
       "type": "boolean"
      },
      "ticker": {
       "type": "string"
      },
      "expiration": {
       "type": "string"
      },
      "fetched_at": {
       "type": "string"
      },
      "puts_count": {
       "type": "integer"
      },
      "spot_price": {
       "type": [
        "number",
        "null"
       ]
      },
      "calls_count": {
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "puts": [
   {
    "ask": 3.1,
    "bid": 2.9,
    "strike": 195,
    "inTheMoney": false,
    "openInterest": 800,
    "impliedVolatility": 0.281
   }
  ],
  "calls": [
   {
    "ask": 3.4,
    "bid": 3.2,
    "strike": 195,
    "inTheMoney": true,
    "openInterest": 1200,
    "impliedVolatility": 0.275
   }
  ],
  "cached": false,
  "ticker": "AAPL",
  "expiration": "2026-06-20",
  "fetched_at": "2026-06-07T10:00:00Z",
  "puts_count": 35,
  "spot_price": 195.5,
  "calls_count": 35,
  "put_call_ratio": 0.72,
  "atm_implied_volatility": 0.28
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/market2000-xyz-options-chain-api-738b2f1d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from market2000.xyz](https://www.zero.xyz/host/market2000.xyz/llms.txt)
