API
View as Markdown

Catalog

Read-only endpoints that surface identity, usage, and platform-managed reference data. Each one requires read:catalog (granted automatically to every key) unless noted otherwise.

GET /me

Scope: any (granted automatically)

Calling user’s identity, plan tier, preferences (timezone, currency, week start), storage usage, and the metadata of the API key making the request.

GET /api/v1/me

Returns: user, plan, preferences, storage, key, rate_tier.

GET /usage

Scope: read:catalog

This key’s API usage in the last 24 hours: total requests, error count, last-60s count, top paths, and storage.

GET /api/v1/usage

GET /brokers

Scope: read:catalog

List of supported brokers with their capabilities (supports_api, supports_autosync, supports_csv, supports_manual) and logo file.

GET /instruments

Scope: read:catalog

Reference instruments with multipliers, asset type, exchange, tick size and value. Returns up to 500 rows (use filters to narrow if you hit the cap). Response includes count (rows in this page) and total_count (rows matching the filter); has_more: true indicates the 500-row cap was hit.

ParamTypeDescription
asset_typeenumfutures, forex, stocks, crypto, options.
exchangestringExact match, case-insensitive.
searchstringPartial match on symbol or name.
Catalog scope

The instruments catalog is currently seeded with futures and forex symbols only (~70 rows). Filtering by asset_type=stocks, crypto, or options returns an empty list. POST /trades still accepts those asset_type values — the catalog is informational, not gating. Use whichever symbol string is meaningful for your broker.

GET /prop-firm-presets

Scope: read:catalog

Catalog of prop firm challenge rules — profit targets, drawdown rules, trading day requirements, payout schedules, consistency rules. Returns up to 500 rows.

ParamTypeDescription
firm_keyenumOne of the active firm_keys in the catalog (e.g. topstep, apex, ftmo). Unknown values return 400 validation_error with error.details.allowed listing the live set. Note: only prop firms are listed — broker/platform keys like topstepx (the execution platform) are not prop firms and won't appear here.
market_typeenumfutures, forex, stocks, crypto. Unknown values return 400.
phaseenumevaluation, funded, live.
account_sizedecimalFilter to one size (e.g. 50000).

GET /prop-firm-presets/{id}

Scope: read:catalog

Detail for one preset by preset_id. Same shape as a list row from GET /prop-firm-presets — useful when you have an id and want the full rule set without paging.

GET /scopes

Scope: read:catalog

The full scope catalog with description + paired read/write companion for each entry. Use this if you’re building a key-creation UI and want to label scopes from the live API rather than hardcoding them.

GET /emotions

Scope: read:catalog

Catalog of emotion values usable in trade.emotional_state.