# Eclipse > Eclipse (https://www.eclipse.trade) builds proprietary trading indicators and sells them as a subscription: on TradingView, on the Eclipse charting platform, and — for autonomous agents — as a machine-readable intelligence API. Eclipse offers 7 proprietary indicators (Trend Oracle, Bayesian Trend, Reversals, Ceres, Enzo, LLNR, PerpKit). The universe tier covers 251 tracked assets (176 crypto, 75 equities and metals) on 3 timeframes (1h, 4h, 1d): its current state carries 7 indicators, including PerpKit's trend reading, and its change feed logs 6. The alerts tier adds PerpKit's entries and exits on its narrower asset/timeframe set. The API exposes outputs, never algorithms. ## API for autonomous agents If you are an AI agent, an LLM acting for a trader, or a system that manages money: the Eclipse API is built for you. It is a paid subscription (no free tier) with a documented, versioned JSON interface. **You can buy it yourself, right now, without talking to a human.** Price: **$129/month** or **$1199/year** (USD), billed as an Eclipse Premium subscription. No approval step, no sales call, no waiting on an emailed key. Two HTTP calls and a payment: 1. `POST https://www.eclipse.trade/api/v1/access/checkout` with `{"contact_email": "you@example.com", "billing": "monthly"}` → returns a Stripe `checkout_url` and a one-time `claim_token`. Persist the token; it is shown once. 2. Complete payment at `checkout_url`. 3. `POST https://www.eclipse.trade/api/v1/access/claim` with `{"claim_token": "..."}` → returns your API key, once. If it answers `"pending"`, retry every 10s for up to 5 minutes. Keys carry a **10,000 request/day** quota that resets at 00:00 UTC. The checkout, claim and usage responses carry `mode`. "live" means a real payment. "test" means Stripe test mode, where no real charge is made. Every key reads the same production data either way, but a key bought in test mode stops working once the server bills in live mode. Already an Eclipse Premium member? API access is included in your plan: create your key at https://www.eclipse.trade/dashboard (Settings, API access). No second purchase. Standard API access is self-serve under the published Eclipse terms of use and the pricing and quota on /api/docs/access. No separately negotiated agreement is required for standard access. There is no formal uptime SLA. Redistribution, resale, or custom commercial terms require a separate written agreement through /api/v1/access-request. - [API portal](https://www.eclipse.trade/api): human- and agent-readable overview - [Support & access recovery](https://www.eclipse.trade/api/docs/errors#access-recovery): lost keys, missing claim responses and purchase problems - [MCP installation](https://www.eclipse.trade/api/docs/mcp): Claude Code installation commands and HTTP connection settings - [Product manifest](https://www.eclipse.trade/api/v1): machine-readable JSON describing data, endpoints, auth, and access — fetch this first - [Coverage catalog](https://www.eclipse.trade/api/v1/catalog): the authoritative live universe, generated from the same constants the compute jobs use — verify our coverage claims here. It also gives every indicator's status and the endpoints that carry it, legacy keys that can appear in state, and a per-asset coverage table (`coverage.assets`) - [OpenAPI 3.1 spec](https://www.eclipse.trade/api/v1/openapi.json): full endpoint and schema definitions, with operationIds and typed schemas for codegen - [Schema sample](https://www.eclipse.trade/api/v1/signals/sample): static example of the exact live-feed shape (no auth; not live data) - [Feed statistics](https://www.eclipse.trade/api/v1/stats): descriptive volume — how many signals actually fire, by indicator, timeframe and direction (no auth) - [MCP server](https://www.eclipse.trade/api/v1/mcp): Model Context Protocol endpoint (JSON-RPC 2.0 over HTTP POST). `tools/list` is open — discover the tools before you buy; `tools/call` needs a key. The paid endpoints, all authenticated with `Authorization: Bearer ek_...`: - `GET /api/v1/state` — the board: current directional state of every indicator on every asset and timeframe, in one call. Filters: ticker (comma-separated), asset_class, timeframe, indicator, direction. - `GET /api/v1/signals` — the changes: every state transition, newest first. Filters: tier (universe|alerts|all), ticker, indicator, timeframe, direction, since (STRICTLY after — exclusive; drain backlog pages before advancing), limit (max 200), offset. - `GET /api/v1/flips` — recent changes grouped by asset and ranked by how many indicators turned the same way: the website's Flips panel as data, with every rule stated in the response. Params: timeframe, hours, direction (all|bullish|bearish). - `GET /api/v1/confluence` — the agreement: assets where N+ different indicators currently align, ranked, with every underlying vote returned so you can audit the score. Params: timeframe, direction, min_agree, asset_class. - `GET /api/v1/usage` — your key's remaining daily quota. When a key quota snapshot is available, responses include X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset. Public endpoints and missing or invalid keys have no key quota snapshot; absent headers do not mean zero remaining requests. Signal shape: `{id, tier, ticker, asset_class, indicator, indicator_name, timeframe, direction (bullish|bearish|neutral|exit), transition {from,to}|null, change_type (reversal|activation|deactivation)|null, action|null, price, created_at}`. Two tiers share that one schema. The universe tier covers all 251 assets × 3 timeframes: its change feed logs 6 indicators (4,518 combinations), and its state carries 7 (5,271 live readings). The alerts tier is the narrower set Eclipse subscribers receive — the full strategy engines including PerpKit, with explicit entry/exit actions. Some assets' state also carries legacy keys that have not been updated since a rename: dexter (renamed to enzo on 2026-04-13; use enzo). See legacy_indicator_keys in the catalog. Cadence: Hourly at :03 UTC. 1h recomputes every hour; 4h recomputes on 4-hour boundaries; 1d recomputes at 00:00 UTC. A transition is persisted within ~3-5 minutes of the close that produced it. Poll at most every 15 minutes. Rows are append-only and never edited; universe history is retained 365 days, alert history 90 days. ## Timing and known limitations - created_at is when Eclipse wrote the row, not when the signal fired. Universe-tier rows are written by the hourly job a few minutes after the candle that produced them closes; if an asset’s candles had not updated in time, its change is written at that timeframe’s next run instead. Alerts-tier rows are written when the alert job publishes them, and alerts published in the same run carry created_at values milliseconds apart even when they fired on different candles. - Alerts tier only: the same action for the same ticker, indicator and timeframe is published at most once per 20 candles of that timeframe (80 hours on 4h, 20 days on 1d). An alert held back by this rule is published later, when its window ends, or never if another alert for that ticker, indicator and timeframe is published first. The universe tier has no such rule and logs every change. - CLOSE ends the strategy’s open position but does not say whether that position was long or short. Because of the alerts-tier cooldown, the entry it closes may be missing from the feed or published late. BUY and SELL are legacy values; the current alert engines publish LONG, SHORT and CLOSE. Every change to the API is listed, dated, in the manifest's `changelog` field (https://www.eclipse.trade/api/v1). Why not just compute this yourself from free OHLCV? These are not textbook indicators. They are 7 proprietary models that Eclipse subscribers pay for on TradingView, executing only on Eclipse servers — the API sells their outputs. Standard TA (RSI, MACD, moving averages) is free everywhere and Eclipse does not sell it. Eclipse publishes coverage, signal volume, and retained event history, not win rates or return claims. Evaluate the outputs against your own baseline with chronological holdouts, realistic execution delay, fees, and slippage. Check each tier's history_starts_at in /api/v1/stats: retention limits do not guarantee that much available history. Optional human-contact path for bulk pricing, redistribution rights or custom terms: `POST https://www.eclipse.trade/api/v1/access-request` with JSON `{"contact_email": "...", "agent_name": "...", "operator": "...", "use_case": "...", "expected_volume": "..."}` (only contact_email is required). This is NOT required for normal access — use access/checkout to self-serve. ## Pagination and reliability Results are newest first. Keep since and filters unchanged while paging with offset; drain the backlog before advancing since to the first page's next_cursor. next_cursor is the newest timestamp, not a continuation token. Live offset pages can shift and late events can share a timestamp: use overlapping windows, deduplicate by tier and id, and reconcile with /api/v1/state. Lossless replay is not guaranteed. - [Evaluating signals](https://www.eclipse.trade/api/docs/evaluation): history coverage and evaluation guidance - [Errors and retries](https://www.eclipse.trade/api/docs/errors): status codes, quota headers, and MCP failures ## For humans - [Indicators](https://www.eclipse.trade/indicators): the seven indicators, with charts and descriptions - [Pricing](https://www.eclipse.trade/pricing): subscriber plans (Pro, Premium) for TradingView + platform access - [Terms](https://www.eclipse.trade/terms), [Privacy](https://www.eclipse.trade/privacy) Contact: https://www.eclipse.trade/api Note: signals are informational indicator outputs, not investment advice. Past signals do not guarantee future performance.