← SDKs & libraries

SDK

@polymarket/client

The official TypeScript SDK for public market data, typed pagination, real-time subscriptions and authenticated trading and wallet actions.

Available on
TypeScript, JavaScript, npm
Pricing
The SDK package does not require a subscription

Screenshots and interface

What is @polymarket/client?

@polymarket/client brings multiple official Polymarket surfaces behind PublicClient and SecureClient. It handles common integration details while retaining explicit types for markets, outcome tokens, decimal strings and addresses. Use a public client for research, then add a supported signer adapter when the application needs account actions.

Who it is for

  • TypeScript teams building a market browser or trading app
  • Developers replacing separate legacy Polymarket clients
  • Applications subscribing to several real-time feeds

Features and coverage

Available on
TypeScript, JavaScript, npm
Markets & venues
Polymarket
  • Public and secure clients

    Separate credential-free public data from account and trading actions.

  • Typed models

    Use Event, Market, OrderBook and other exported response types.

  • Branded identifiers

    Distinguish token IDs, market IDs, condition IDs and addresses at compile time.

  • Paginator interface

    Iterate pages or resume from an opaque cursor.

  • Action-specific error guards

    Handle documented rate-limit and input errors without swallowing unexpected failures.

  • Wallet adapters

    Integrate supported Viem, Privy and Ethers signer paths.

  • Combined subscriptions

    Read several real-time topics through one event stream.

Workflows with @polymarket/client

Build a typed market view

Create a PublicClient, fetch a small page and retain token IDs for book requests. Use explicit response types instead of loosely shaped JSON.

Add trading to an existing app

Adapt the app’s wallet signer, create a SecureClient and inspect its account identity before enabling the required actions.

Process multiple streams

Subscribe to the desired public topics, narrow each event by topic/type and close the stream when the view is disposed.

Pricing and total cost

The SDK package does not require a subscription. Venue trading costs and any infrastructure you operate are separate.

Getting started

Before you start: An SDK cursor is opaque; store it unchanged rather than parsing it.

  1. Install @polymarket/client from the official package link.
  2. Create a PublicClient and fetch the first page of active markets.
  3. Implement pagination and documented error handling.
  4. Add a supported signer adapter and SecureClient only for account functions.
  5. Use the current migration guide when replacing legacy SDKs.

Open documentation

Useful links

What to check

  • An SDK cursor is opaque; store it unchanged rather than parsing it.
  • PublicClient does not provide private account streams.
  • Decimal strings and domain identifiers are deliberately distinct types.
  • The unified SDK has different method and account conventions from older CLOB clients.

A closer look

Ratings & reviews

Write a review
Editorial rating
4.0/ 5
0 user reviews

Our take on @polymarket/client

A well-documented starting point for TypeScript integrations, with typed identifiers and a clear split between public reads and account actions. Migration from older clients still needs deliberate work.

Based on documented features, setup and access terms. How we rate

User reviews 0

The main score switches to user ratings after 5 published reviews.

Be the first to share your experience

A specific example helps the next person choose the right tool.

Write a review

How was your experience with @polymarket/client?

Share what you used, what worked and what could be better. We confirm your email and review the submission before publishing.

To submit a review, email info@polytradingbot.com with the tool name, your rating and your experience. Enable JavaScript to prepare a draft here.

Related tools

Browse category

Frequently asked questions about @polymarket/client

Which package should I install?

The current unified TypeScript package is @polymarket/client.

Do I need a private key for public data?

No. Start with createPublicClient.

Can it stream sports and market data together?

The subscription interface accepts multiple topic specifications.

How do I resume a scan?

Store the returned nextCursor and resume through the paginator.