SDKs

Four clients for one API

Python, TypeScript, Go and Rust clients for the /v1 API, written by hand and kept in the same repository as the API they call — generators in Python, async iterators in TypeScript, an errors-last iterator in Go, an iterator of results in Rust. The parity table below says where one is behind.

Install and make a first call

install
pip install "git+https://github.com/Arjuunb/nexus-trading-bot#subdirectory=sdks/python"
python · list rejected decisions
from tradelogx_nexus import Client

client = Client()  # reads NEXUS_API_KEY

for d in client.decisions.list(verdict="rejected", limit=20):
    print(d["symbol"], d["quality_score"], d["blocked_by"])
    print(" ", d["reason"])

Every client reads NEXUS_API_KEY (and, optionally, NEXUS_API_BASE) from the environment by default, so a key never has to appear in your source. Create keys in the dashboard under Settings → Security → API keys.

Not on the package registries yet

The clients are not yet published to PyPI, npm or crates.io, so the commands above install them straight from the public repository.

Feature parity

Where a client is behind, it says so here rather than in a changelog you would have to go looking for.

CapabilityPythonTypeScriptGoRust
Every /v1 endpoint
Automatic cursor pagination
Retry with backoff, honouring Retry-After
Webhook signature verification
Queue-and-wait backtest helper
Typed response models
Async I/O
Streaming decision feed

Versioning and support

Pre-1.0

All four clients are at 0.1.0. Until 1.0 a minor release may still change a signature, so pin the commit you install from.

Pinned response shapes

Clients send the Nexus-Version header they were built against, so upgrading the platform cannot change what your code parses. Upgrading the client is the deliberate act.

The clients live in sdks/ of the same MIT-licensed repository as the platform, each with its own tests, and CI runs all four suites on every push — the details are on the open-source page.