Skip to main content

Python client for the Polymarket CLOB

Project description

py-clob-client

PyPI

Python client for the Polymarket CLOB. Full API documentation can be found here.

Installation

pip install py-clob-client

Intended for use with Python 3.9

Requisites

Allowances

The correct token allowances must be set before orders can be placed. The following mainnet (Polygon) allowances should be set by the funding (maker) address. For testnet addresses and additional documentation please refer to the API documentation.

token(s) spender description
0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 0x4bFb41d5B3570DeFd03C39a9A4D8dE6Bd8B8982E allow the CTF Exchange contract to transfer user's usdc
0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 0xC5d563A36AE78145C45a50134d48A1215220f80a allow the Neg Risk CTF Exchange contract to transfer user's usdc
0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296 allow the Neg Risk Adapter contract to transfer user's usdc
0x4D97DCd97eC945f40cF65F87097ACe5EA0476045 0x4bFb41d5B3570DeFd03C39a9A4D8dE6Bd8B8982E allow the CTF Exchange contract to transfer user's conditional tokens
0x4D97DCd97eC945f40cF65F87097ACe5EA0476045 0xC5d563A36AE78145C45a50134d48A1215220f80a allow the Neg Risk CTF Exchange contract to transfer user's conditional tokens
0x4D97DCd97eC945f40cF65F87097ACe5EA0476045 0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296 allow the Neg Risk Adapter contract to transfer user's conditional tokens

See this gist for a an example of how to set these allowances for an account using python.

Usage

import os
from py_clob_client.constants import POLYGON
from py_clob_client.client import ClobClient
from py_clob_client.clob_types import OrderArgs
from py_clob_client.order_builder.constants import BUY

host = "https://clob.polymarket.com"
key = os.getenv("PK")
chain_id = POLYGON

# Create CLOB client and get/set API credentials
client = ClobClient(host, key=key, chain_id=chain_id)
client.set_api_creds(client.create_or_derive_api_creds())

# Create and sign an order buying 100 YES tokens for 0.50c each
resp = client.create_and_post_order(OrderArgs(
    price=0.50,
    size=100.0,
    side=BUY,
    token_id="71321045679252212594626385532706912750332728571942532289631379312455583992563"
))

print(resp)

See examples for more.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py_clob_client_crypto-0.18.0.tar.gz (22.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

py_clob_client_crypto-0.18.0-py3-none-any.whl (28.3 kB view details)

Uploaded Python 3

File details

Details for the file py_clob_client_crypto-0.18.0.tar.gz.

File metadata

  • Download URL: py_clob_client_crypto-0.18.0.tar.gz
  • Upload date:
  • Size: 22.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.13

File hashes

Hashes for py_clob_client_crypto-0.18.0.tar.gz
Algorithm Hash digest
SHA256 77ecdc78dd7a5bfd81f4b61db3316d196359da7c386422c0f6c7e333cc4d96a1
MD5 8f4db90ca169c3aad11201c8bd52e400
BLAKE2b-256 9ac1aca21b8c522143be6adcbf11627a2d384489c517d71243c2ec897a0e489e

See more details on using hashes here.

File details

Details for the file py_clob_client_crypto-0.18.0-py3-none-any.whl.

File metadata

File hashes

Hashes for py_clob_client_crypto-0.18.0-py3-none-any.whl
Algorithm Hash digest
SHA256 425c9a3e02730b9f30b8f4a0e67d692f6e47c4f29ea684e25e9056d3ef5abd5f
MD5 ee3c101f59dc40271fa39a86b0a19975
BLAKE2b-256 fea21e67fa5c5908263824ce55690ca49da8ea8c18ce5b1356dd46d81b791b11

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page