# Excelexi Analytics Snapshot

> Excelexi Analytics Snapshot is a paid API for AI agents from api.excelexi.com, paid per call via x402, $0.0001/call, status unknown (last checked 2026-09-16).

Computes a snapshot of financial technical indicators for a given asset, returning results behind an x402 USDC micropayment gate

## Facts

- Endpoint: POST https://api.excelexi.com/api/v1/analytics/snapshot
- Price: $0.0001/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/excelexi-analytics-snapshot-626461d1
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_NJoBxFxRzNaxjeT3h1oFa

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 excelexi-analytics-snapshot-626461d1 -d '<json body>'
```

Example prompt: Can you pull a technical indicators snapshot for BTC/USD — I want RSI, MACD, and EMA — and pay the micropayment automatically?

## When to prefer this

Choose this endpoint when you need a quick, on-demand multi-indicator technical analysis snapshot for a financial asset and want to pay per-use via USDC micropayment rather than subscribing to a data feed. It is well-suited for AI agents that invoke technical analysis episodically (e.g. on trading signals or user requests) rather than continuously streaming market data. Prefer it over general market data APIs when you specifically need computed indicators (RSI, MACD, EMA, etc.) rather than raw price data.

## Known failure modes

- 402 Payment Required — x402 payment challenge returned when no valid X-Payment header is present; agent must sign EIP-3009 transferWithAuthorization and retry
- Invalid or unsupported asset slug — returns 400 or 404 if the ticker/symbol is not recognized
- Malformed payment proof — X-Payment header contains invalid or expired EIP-3009 authorization
- Insufficient USDC balance — payment fails if the agent wallet has insufficient funds on Base
- Rate limiting or overload — 429 or 503 if the compute service is at capacity

## How this service works

**Excelexi** — Financial technical indicators API marketplace.

Agent-consumable OpenAPI document for the public Excelexi indicator surface.

**x402 Payment**: Indicator compute endpoints require a USDC micropayment on Base (Coinbase L2, chain 8453). When the x402 gate is active, a 402 Payment Required response is returned with a payment challenge. Submit the signed EIP-3009 transferWithAuthorization proof in the `X-Payment` header and retry the request.

**Discovery**: `GET /.well-known/x402` returns the current per-slug prices.

**Regulatory notice**: All indicator outputs are informational only and do not constitute financial advice. Responses include `regulatory_notice` = `"information_only_not_financial_advice"`.

## Output

A JSON object containing computed values for one or more financial technical indicators (e.g. RSI, MACD, EMA, Bollinger Bands) for the requested asset at the time of the call, along with a regulatory_notice field set to 'information_only_not_financial_advice'. The response is gated behind an x402 micropayment of $0.0001 USDC on Base (chain 8453).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "metrics": {
   "type": "string",
   "description": "Optional list of metric IDs to include. When omitted or empty, the full default core set\n(all MetricDefinitions) is returned."
  },
  "symbols": {
   "type": "array",
   "description": "Asset symbols to retrieve snapshots for.\nMaximum 50 symbols per request."
  },
  "interval": {
   "type": "string",
   "description": "Candle interval for the snapshot values.\nAccepted values: \"1h\", \"4h\", \"1d\"."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "data": {
   "type": "array",
   "items": {
    "type": "object",
    "properties": {
     "market": {
      "type": [
       "null",
       "string"
      ],
      "description": "PROV.8 — Market type: always \"spot\" for analytics (perp not supported). Null when disabled."
     },
     "symbol": {
      "type": "string"
     },
     "values": {
      "type": "object"
     },
     "provenance": {
      "oneOf": [
       {
        "type": "null"
       },
       {
        "type": "object",
        "required": [
         "interval",
         "interval_source",
         "params",
         "bars_used"
        ],
        "properties": {
         "unit": {
          "type": [
           "null",
           "string"
          ],
          "description": "The unit of the indicator value (e.g. `\"index\"`, `\"price\"`). Null when unknown."
         },
         "as_of": {
          "type": [
           "null",
           "string"
          ],
          "format": "date-time",
          "description": "The effective close time of the last bar (`bar_open_time + interval_duration`).\nThe value is valid \"as of\" this time. Null when `bar_open_time` is unavailable."
         },
         "range": {
          "type": [
           "null",
           "string"
          ],
          "description": "The value range (e.g. `\"0..100\"` for RSI). Null when unbounded or unknown."
         },
         "params": {
          "type": "object",
          "description": "The leaf parameters (e.g. `{\"period\": 14}` for RSI). Empty dict when no params.",
          "additionalProperties": {
           "type": [
            "number",
            "string"
           ],
           "format": "double",
           "pattern": "^-?(?:0|[1-9]\\d*)(?:\\.\\d+)?$"
          }
         },
         "source": {
          "type": [
           "null",
           "string"
          ],
          "description": "The data source identifier (e.g. `\"binance:1h\"`, `\"dev:1h\"`). Null when series is empty."
         },
         "interval": {
          "type": "string",
          "description": "The effective candle interval for this leaf (e.g. \"1h\", \"1d\")."
         },
         "bars_used": {
          "type": [
           "integer",
           "string"
          ],
          "format": "int32",
          "pattern": "^-?(?:0|[1-9]\\d*)$",
          "description": "The number of bars in the series used to compute the indicator value."
         },
         "data_window":
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/excelexi-analytics-snapshot-626461d1/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.excelexi.com](https://www.zero.xyz/host/api.excelexi.com/llms.txt)
