Polymarket Relayer Client Tutorial
A practical TypeScript walkthrough of the Polymarket Relayer Client: installation, wallet handling, common flows (approvals, split/merge, orders), and tips for gasless integration.
Polymarket Relayer Client Tutorial
Ang gabay na ito ay nagpapakita kung paano gamitin ang Polymarket Relayer Client sa TypeScript para bumuo ng mga gasless na flow: deployment ng wallet, paghawak ng ERC-20 approval, CTF split/merge/redeem na operasyon, at paglalagay ng orders sa CLOB. Kung gusto mo ng gumaganang gasless integration sa Polymarket, ang Polymarket Relayer Client ang developer-facing SDK na unang gagamitin mo.
Pangunahing mga takeaway
- Nagbibigay ang Polymarket Relayer Client ng TypeScript at Python SDKs para hawakan ang wallet deployment, approvals, CTF ops, at order placement sa pamamagitan ng Polymarket Relayer.
- Gasless ang mga Polymarket transaction para sa end users: nire-relayer ang gas at ina-abstraact ang wallet deployment at approvals.
- Karaniwang mga flow: wallet onboarding → approval check/approval → split (mint) ng kompletong set → create order (limit o FAK) → merge/redeem pagkatapos ng resolution.
- Laging idisenyo para sa mga panganib ng resolution at settlement: UMA disputes, partial fills/slippage, at timing ay mga totoong konsiderasyon.
Para kanino ang gabay na ito
Ikaw ay isang developer na bumubuo ng mga integration, bot, o UX component na naglalagay ng trades sa CLOB ng Polymarket at nakikipag-ugnayan sa CTF. Dapat kang komportable sa TypeScript, EVM wallets (MetaMask, Rabby, atbp.), at mga pangunahing web3 na konsepto.
Mabilis na overview ng sakop ng SDK
- Wallet onboarding: i-deploy ang Proxy wallets sa unang paggamit o gumamit ng Gnosis Safe kung available.
- Pamamahala ng ERC-20 approvals para sa pUSD at iba pang token na ginagamit sa split/merge.
- CTF operations: split, merge, redeem ng outcome tokens (ERC-1155).
- Order placement at cancellation laban sa CLOB sa pamamagitan ng Relayer.
- Builder attribution headers kapag kumikilos ka bilang isang Builder (tingnan ang Builder Program docs).
Tandaan: Gumagamit ang Polymarket ng Polygon (chain ID 137), at ang settlement asset para sa trading ay pUSD (Polymarket's wrapped USDC). Lahat ng user transactions ay gasless via the Relayer.
Install at unang mga hakbang
I-install ang TypeScript package at isang karaniwang web3 provider package. Nag-iiba ang eksaktong package names batay sa release; ang mga halimbawa sa ibaba ay gumagamit ng canonical import path na karaniwan sa relayer SDKs. Kung magkakaiba ang package names sa iyong proyekto, tingnan ang SDK README.
Shell
npm install @polymarket/relayer-client ethers
Basic initialization (TypeScript)
import { RelayerClient } from '@polymarket/relayer-client';
import { ethers } from 'ethers';
// Use a wallet provider exposed in the browser (MetaMask, Rabby, etc.)
const provider = new ethers.providers.Web3Provider((window as any).ethereum);
const signer = provider.getSigner();
const relayer = new RelayerClient({
signer,
network: 'polygon', // Polymarket runs on Polygon (chainId 137)
});
Mga tala sa halimbawa sa itaas: ang RelayerClient constructor at options object ay ilustratibo. Suriin ang SDK README para sa eksaktong constructor signature at mga available na option.
Onboarding: deployment ng wallet at approvals
Sinusuportahan ng Polymarket ang dalawang wallet model: pre-deployed na Gnosis Safes at Proxy wallets na auto-deploy sa unang transaction. Hinahandle ng Relayer SDK ang parehong flow at nire-relayer ang deployment gas.
Karaniwang onboarding na hakbang na dapat mong ipatupad sa UX:
- Alamin kung may Proxy o Safe na ang user. Kung wala, tawagan ang SDK's deploy-on-first-use helper.
- Siguraduhin na may pUSD ang user sa kanilang wallet. Kung wala, ipakita kung paano mag-bridge o mag-deposit (tingnan ang Polymarket's funding guide).
- Suriin ang ERC-20 approval status para sa pUSD at i-prompt ang gasless approval via the Relayer kung kailangan.
Halimbawa: check at request approval (TypeScript)
// Pseudocode — adapt to SDK methods
const pUsdAddress = '0x...'; // use SDK constant if provided
const allowance = await relayer.checkAllowance(pUsdAddress);
if (allowance.lt(requiredAmount)) {
await relayer.requestApproval(pUsdAddress, requiredAmount);
}
Dahil nire-relayer ang gas, ang approval call ay ipinapadala sa pamamagitan ng Relayer sa halip na direktang on-chain gas transaction na pinirmahan ng user.
CTF flows: split, merge, redeem
Ang Conditional Token Framework (CTF) ang paraan ng Polymarket para i-representa ang mga outcome (ERC-1155 tokens). Karaniwang sequence kapag gusto mong bumili ng kompletong set:
- split: sunugin ang pUSD at i-mint ang kompletong set ng outcome tokens
- pagkatapos mag-trade, merge: i-convert ang natitirang outcome tokens pabalik sa isang common position
- redeem: pagkatapos ng resolution, sunugin ang nanalong outcome tokens para sa $1.00 bawat isa
Halimbawa split (TypeScript)
// Pseudocode using the Relayer SDK
const conditionId = '0x...';
const amount = ethers.utils.parseUnits('1.0', 6); // pUSD has 6 decimals
await relayer.split(conditionId, amount);
Hahawakan ng SDK ang kinakailangang approvals at relayer submission. Pagkatapos ng split, makakatanggap ka ng ERC-1155 outcome tokens sa Proxy o Safe ng user.
Paglalagay ng orders sa CLOB
Nag-e-expose ang CLOB ng order placement at orderbook reads. Ireroute ng Relayer Client ang order placement sa pamamagitan ng Relayer, at hinahandle ang builder attribution headers kung ikaw ay isang Builder.
Mahalagang uri ng order:
- Limit orders: mag-post sa book at posibleng umupo bilang maker (zero ang maker fees).
- Market orders (FAK): nag-e-expose ang SDK ng helpers para gumawa ng FAK orders na mag-e-execute agad o makakansela.
Halimbawa: maglagay ng FAK market order (TypeScript)
// Conceptual example
const instrumentId = 'POLY_MARKET_INSTRUMENT_ID';
const side = 'buy';
const size = ethers.utils.parseUnits('10', 6);
const result = await relayer.createMarketOrder({
instrumentId,
side,
size,
slippageTolerance: 0.01, // 1% slippage protection
});
console.log('fill result', result);
Kung gumagana ka bilang isang Builder, isama ang attribution headers o builder credentials ayon sa hinihingi ng Builder Program. Nag-aalok ang Builder Program ng tiered relayer limits at rewards; kunin ang credentials sa https://polymarket.com/settings.
Pagbabasa ng market data at ang WebSocket
Para sa non-trading reads, gamitin ang public REST at WebSocket surfaces ng Polymarket:
- Gamma API: https://gamma-api.polymarket.com (markets, events)
- Data API: https://data-api.polymarket.com (positions, trades, open interest)
- CLOB API: https://clob.polymarket.com (orderbook and order placement APIs)
- Market WebSocket: wss://ws-subscriptions-clob.polymarket.com/ws/market para sa real-time book updates
Kapag nag-subscribe ka sa market WS feeds, humiling ng custom_feature_enabled: true para makatanggap ng best_bid_ask events at limitahan ang subscription sa 500 instruments bawat koneksyon.
Error handling at karaniwang pitfalls
- Partial fills: maaaring ma-partially fill ang market orders (FAK). Laging suriin ang resulta at i-handle ang natitirang bahagi.
- Slippage: protektahan ang agresibong market orders gamit ang slippage limits. Madalas na nag-e-expose ang SDK ng slippage settings sa market helpers.
- Resolution at settlement timing: maaaring ma-pause ang settlement dahil sa UMA disputes. Idiseño ang UI at accounting para ipakita ang unsettled funds hanggang mag-complete ang redeem.
- Tick size changes: lumilipat ang tick size mula $0.01 papuntang $0.001 malapit sa price extremes; i-handle ang tick_size_change WebSocket events.
Testing strategies
- End-to-end sandbox: subukan ang buong onboarding — i-deploy ang Proxy wallet, humiling ng approval, mag-split, mag-place ng order, at mag-merge/redeem.
- Unit test wrapper functions: i-mock ang relayer methods para i-assert ang tamang approval at split sequences.
- Awareness sa rate-limit: may rate limits ang Gamma /markets (300 req / 10 s para sa /markets) — batch at cache ang reads.
Paano ito nakakaapekto sa iyong trading o bot logic
Ang paggamit ng Polymarket Relayer Client ay nag-aalis ng pangangailangang i-manage ang gas para sa end users at pinapasimple ang onboarding sa pamamagitan ng pag-automate ng Proxy deployments at approvals. Para sa mga bot, ibig sabihin nito ay makakapag-focus ka sa strategy at market data: binabawasan ng SDK ang integration surface area para mag-execute ng split/merge at order flows. Gayunpaman, kailangan mo pa ring i-handle ang non-execution risks tulad ng slippage, partial fills, at oracle disputes.
Mga reference at susunod na hakbang
- Polymarket API base URLs: Gamma (https://gamma-api.polymarket.com), Data (https://data-api.polymarket.com), CLOB (https://clob.polymarket.com)
- Market WebSocket: wss://ws-subscriptions-clob.polymarket.com/ws/market
- Builder Program details and credentials at https://polymarket.com/settings
Pangwakas na paalala: nire-relayer ng Polymarket ang gas via the Relayer at nagbibigay ng TypeScript at Python SDKs para i-streamline ang tipikal na wallet at CTF workflows. Ang Polymarket Relayer Client ang inirerekomendang landas para bumuo ng gasless integrations na nakikipag-ugnayan sa CLOB at CTF.
Frequently asked questions
What is the Polymarket Relayer Client?
Ang Polymarket Relayer Client ay ang SDK (TypeScript at Python) na nagro-route ng user transactions sa pamamagitan ng Polymarket's Relayer, hinahandle ang wallet deployment, ERC-20 approvals, CTF operations, at order placement upang maranasan ng end users ang gasless trading.
Do users still need pUSD to trade?
Oo. Ang settlement asset ng Polymarket ay pUSD (wrapped USDC). Nire-relayer ang gas, ngunit kailangang may pUSD ang users para magsagawa ng split operations at mag-place ng orders.
Can I act as a Builder through the Relayer Client?
Oo. Pinahihintulutan ng Builder Program ang third parties na mag-route ng orders na may attribution headers at kumita ng builder fees. Kunin ang credentials sa https://polymarket.com/settings at isama ang builder headers ayon sa hinihingi ng SDK.
Does the Relayer Client handle approvals and wallet deployment automatically?
Nagbibigay ang SDK ng helpers para sa automatic Proxy wallet deployment sa unang paggamit at para humiling ng gasless ERC-20 approvals sa pamamagitan ng Relayer, na nagpapasimple ng onboarding.
Where can I read real-time orderbook updates?
Mag-subscribe sa Market WebSocket sa wss://ws-subscriptions-clob.polymarket.com/ws/market. Humiling ng custom_feature_enabled: true para makatanggap ng best_bid_ask events at tandaan ang 500-instrument subscription limit.
Mga term na binanggit
Kaugnay na mga gabay
Pang-edukasyon lamang. Hindi payong pinansyal, ligal, o ukol sa buwis. Maaaring hindi available ang Polymarket sa iyong hurisdiksyon.