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
pip install "git+https://github.com/Arjuunb/nexus-trading-bot#subdirectory=sdks/python"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
Feature parity
Where a client is behind, it says so here rather than in a changelog you would have to go looking for.
| Capability | Python | TypeScript | Go | Rust |
|---|---|---|---|---|
| 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
Pinned response shapes
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.