Skip to main content

Overview

drive.markets provides distributed order routing for Polymarket’s CLOB API, delivering low-latency execution through globally distributed routing paths.

Authentication

All API endpoints require authentication using Polymarket’s standard headers:
  • POLY-API-KEY: Your API key
  • POLY-SIGNATURE: Request signature (signed with your private key)
  • POLY-TIMESTAMP: Unix timestamp of the request
  • POLY-NONCE: Unique nonce for the request
These headers are automatically handled when using the Polymarket SDK.

Using with Polymarket SDK

The API is compatible with Polymarket’s SDK. Simply specify https://poly.drive.markets in the host parameter:
import { ClobClient } from '@polymarket/clob-client';

const host = 'https://clob.polymarket.com'
const orderHost = 'https://poly.drive.markets'

const signer = new Wallet("");
const funder = '';

// 1: Magic/Email Login
// 2: Browser Wallet (Metamask, Coinbase Wallet, etc)
// 0: EOA
const signatureType = 1;

const credsClient = new ClobClient(host, 137, signer).createOrDeriveApiKey();

(async () => {
	const creds = await credsClient.createOrDeriveApiKey();

    const clobClient = new ClobClient(host, 137, signer, await creds, signatureType, funder);
	const orderClient = new ClobClient(orderHost, 137, signer);

    const order = await clobClient.createOrder({
    	tokenID: '0x...',
        price: '0.5',
        side: 'BUY',
        size: '100',
        feeRateBps: 100
    });

	const response = await orderClient.postOrder(order, OrderType.FOK);

	return response
})();

Direct API Usage

If you’re not using the SDK, you’ll need to sign the authentication headers manually:
curl -X POST https://poly.drive.markets/order \
  -H "POLY-API-KEY: your-api-key" \
  -H "POLY-SIGNATURE: your-signature" \
  -H "POLY-TIMESTAMP: 1234567890" \
  -H "POLY-NONCE: unique-nonce" \
  -d '{
    "order": {
      "salt": 123456789,
      "maker": "0x...",
      "signer": "0x...",
      "taker": "0x...",
      "tokenId": "0x...",
      "makerAmount": "1000000000000000000",
      "takerAmount": "500000000000000000",
      "expiration": "1234567890",
      "nonce": "0",
      "feeRateBps": 100,
      "side": "BUY",
      "signatureType": 0,
      "signature": "0x..."
    },
    "owner": "your-api-key",
    "orderType": "FOK"
  }'

Supported Endpoints

  • POST /order - Place a single order
  • POST /orders - Place multiple orders
  • DELETE /order - Cancel a single order
  • DELETE /orders - Cancel multiple orders
  • DELETE /cancel-all - Cancel all open orders
  • DELETE /cancel-market-orders - Cancel orders from a specific market

Next Steps

API Reference

Explore the complete API documentation

Polymarket Docs

Reference Polymarket’s Order API documentation
All orders are routed via best effort basis, with the lowest latency path being automatically selected for optimal performance.