Polymarket Redeem Positions logo

Catalog action EVM Onchain wallet Gas receive

Redeem (claim) winnings from resolved Polymarket prediction markets as pUSD. Supports both standard and neg risk markets (elections, multi-candidate events). Only works after a market has been resolved. Returns redeemed pUSD amount and transaction hash. Ideal for: automated profit collection, portfolio cleanup, post-resolution workflows, winnings consolidation.

This action can require a wallet connector, gas, token movement, or an external side effect. Test with simulation or a controlled amount before using it in a live workflow.

At a Glance

FieldValue
Action IDpolymarket-redeem
CategoryEVM Onchain
Connectorwallet
Requires gasYes
Funds movementreceive
Tagspolymarket, defi, withdraw, write

Payload Schema

FieldTypeRequiredDescription
conditionIdstringNoThe condition ID (bytes32) of the resolved market. Provide this OR tokenId.
tokenIdstringNoThe ERC-1155 token ID from your positions. The API will lookup the conditionId. Provide this OR conditionId.
tokenIdsarrayNoArray of CLOB token IDs (outcome positions) for this condition. Required for neg-risk redemption when only conditionId is provided. If omitted, fetched from Gamma API.
amountsarrayNoArray of amounts to redeem for each token ID. Must match length of tokenIds. If not provided, will redeem all available.

Result Schema

FieldTypeRequiredDescription
statusstringYesStatus of the redemption operation
transactionHashstringNoTransaction hash of the redemption
redeemedAmountnumberNoTotal USDC amount redeemed as a human-readable number (e.g. 12.5 USDC)
redeemedAmountRawstringNoUSDC amount redeemed in raw units (6 decimals) for piping into swap/transfer actions
conditionIdstringNoThe condition ID that was redeemed
marketTitlestringNoTitle of the market (if available)
negRiskbooleanNoWhether this was a neg risk market redemption

Examples

json
{ "type": "polymarket-redeem", "payload": { "conditionId": "example-conditionId", "tokenId": "1", "tokenIds": "1", "amounts": "1000000" }, "children": [], "connector": { "type": "wallet", "id": "conn_wallet" }}

Payload fields can use workflow expressions such as {{$trigger.body.amount}}, {{$nodes.fetch.result.price}}, and {{$props.asset}} when the value should come from a trigger, prior node, or reusable workflow prop.

Ask a question... ⌘I