Package Logo
polymarket-exchange
polymarket-exchange@v0.5.0
Total Downloads
20
Published
2 days ago
Network
polygon polygon
Publisher
User Avatar colindickson

Readme

Polymarket Exchange Substreams Package

Substreams package for extracting events from the Polymarket CTF Exchange contract on Polygon.

Contract Information

  • Address: 0xE111180000d2663C0091e4f400237545B87B996B
  • Network: Polygon
  • Explorer: View on Polygonscan

Available Modules

Module Description Output Type
map_exchange_events Extracts exchange trading events proto:polymarket.exchange.v1.ExchangeEvents
map_fee_events Extracts fee-related events proto:polymarket.exchange.v1.FeeEvents
map_admin_events Extracts admin role events proto:polymarket.exchange.v1.AdminEvents
map_pause_events Extracts user pause events proto:polymarket.exchange.v1.PauseEvents
map_approval_events Extracts order approval events proto:polymarket.exchange.v1.OrderApprovalEvents
map_all_events Extracts all exchange events proto:polymarket.exchange.v1.AllEvents

Quick Start

Build the WASM binary:

make build-exchange
# or
cd polymarket-exchange && substreams build

Create the Substreams package:

make package-exchange
# or
cd polymarket-exchange && substreams pack

Run the Substreams:

make run-exchange
# or
substreams run substreams.yaml map_all_events \
  --network polygon \
  --start-block -1000

Event Types

The package extracts the following V2 event categories:

Exchange Events

  • OrderFilled - Order filled (with side uint8, token_id, builder, metadata)
  • OrdersMatched - Orders matched (with side uint8, token_id)

Fee Events

  • FeeCharged - Trading fee charged (recipient, amount)
  • FeeReceiverUpdated - Fee receiver address changed
  • MaxFeeRateUpdated - Maximum fee rate changed

Admin Events

  • NewAdmin - New admin added
  • NewOperator - New operator added
  • RemovedAdmin - Admin removed
  • RemovedOperator - Operator removed

Pause Events

  • UserPaused - User paused from trading
  • UserUnpaused - User unpaused
  • UserPauseBlockIntervalUpdated - Pause interval changed

Order Approval Events

  • OrderPreapproved - Order preapproved
  • OrderPreapprovalInvalidated - Order preapproval invalidated

Dependencies

  • substreams: ^0.7
  • substreams-ethereum: ^0.11
  • ethabi: ^18

Binary Output

Build artifacts: target/wasm32-unknown-unknown/release/polymarket_exchange.wasm

Documentation

Modules

Maps icon
Maps

map
map_exchange_events

640c8fd7f30e8e628dea60dbdf372eee590e9396
map map_exchange_events (
blocksf.ethereum.type.v2.Block
)  -> polymarket.exchange.v1.ExchangeEvents
substreams gui polymarket-exchange@v0.5.0 map_exchange_events

map
map_fee_events

c7c299c56ca987f1b58ad99147157ac7c8ba714d
substreams gui polymarket-exchange@v0.5.0 map_fee_events

map
map_admin_events

fff9c6870b248ffaeeaeaf1252efcc01d29dc2f3
substreams gui polymarket-exchange@v0.5.0 map_admin_events

map
map_pause_events

78bc04c4a57348a435a4e19d221c88ba8f158518
substreams gui polymarket-exchange@v0.5.0 map_pause_events

map
map_approval_events

3c88ebee8134a544756f83ed53065347e2d99d87
substreams gui polymarket-exchange@v0.5.0 map_approval_events

map
map_all_events

23717138046df13f353d6a303d3ba0bcd2258902
substreams gui polymarket-exchange@v0.5.0 map_all_events
Protobuf

Protobuf Docs Explorer

sf.ethereum.type.v2
polymarket.exchange.v1
sf.ethereum.substreams.v1
sf.ethereum.transform.v1