Skip to main content
There are two official clients for the ParlayX API, one for Python and one for TypeScript. Both cover the same surface, generated from the same API contract, and both handle request signing, typed errors, and cursor-following pagination.

Install

With uv, uv add parlayx.
Both clients are server-side only. Signing needs your private key in the running process, so shipping either to an untrusted client would hand end users your signing key. The TypeScript client signs with node:crypto, so it does not run in browsers or edge runtimes.

What each package gives you

The streaming client is in the same package as the REST client in both languages, so there is nothing extra to install. There is no parlayx[stream] extra.
See the streaming Introduction.

Language notes

ParlayX and AsyncParlayX expose the same methods over one transport, so the two differ by await and nothing else. The stream client is async only, because it is an async iterator.
Both clients hold a connection pool, so create one and reuse it rather than building one per call. Closing is handled by with or async with; call close() yourself if you keep one for the life of the process.Fields accept either spelling, time_in_force or timeInForce. The wire always carries the API’s own camelCase.Four runtime dependencies, declared as ranges rather than pins so they resolve alongside the rest of your environment: httpx, pydantic, cryptography and websockets.

Source

@parlayx/sdk is published on npm and parlayx on PyPI, both MIT licensed. The bundled OpenAPI document is available at @parlayx/sdk/openapi/v1.json.