Bridge Chain IDs
| Chain | Bridge Chain ID |
|---|---|
| Thru | 1 |
| Polygon | 2 |
chainId values).
Integration Resources
| Resource | Value |
|---|---|
| Polygon bridge contract address | TBD_POLYGON_BRIDGE_ADDRESS |
| Thru bridge program address | TBD_THRU_BRIDGE_PROGRAM_ADDRESS |
| Polygon RPC URL | TBD_POLYGON_RPC_URL |
| Thru RPC URL | TBD_THRU_BASE_URL |
TypeScript SDK (@thru/bridge-sdk)
Setup
Polygon -> Thru example
Thru -> Polygon example
Fixed constants
THRU_POLYGON_CHAIN_IDS.thru = 1THRU_POLYGON_CHAIN_IDS.polygon = 2THRU_TOKEN_PROGRAM_ADDRESS = taAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKqq
SDK functions
Client MethodsgetPolygonTokenMetadata
name, symbol, and decimals from a Polygon ERC20 token.
approvePolygonToken
rawAmount.
depositPolygonToThru
getPolygonDepositFromTx
Deposit event from a transaction hash.
getThruPolygonTokenRoute
depositThruToPolygon
rawAmountisbigint(raw token units)- Validated as
u64(0..18446744073709551615) - Deposit amount must be greater than
0
Direct Polygon Contract Integration (EVM side)
The SDK exports:POLYGON_BRIDGE_ABIPOLYGON_ERC20_ABI
- Convert Thru recipient (
ta...) tobytes32. - Call ERC20
approve(bridgeAddress, amountRaw). - Call bridge
deposit(token, amountRaw, recipientBytes32).
sourceChainId = 2destChainId = 1