Skip to main content
The polymarket_polygon.combo_actions table contains combo lifecycle actions: splits, merges, per-user redemptions, and the combinatorial structuring primitives (wrap, compress, extract, inject, …), enriched with combo metadata from combo_details. Settlement-internal splits/merges are excluded by construction — those are the mint/merge legs of RFQ fills and live in combo_trades.

Table Schema

ColumnTypeDescription
block_monthDATEUTC month of the event block time (partition key)
block_timeTIMESTAMPUTC event block time
block_numberBIGINTBlock number in which the action was executed
actionVARCHARLifecycle action type (split, merge, redemption, wrap, unwrap, compress, convert_to_yes_basket, merge_from_yes_basket, split_on_condition, merge_on_condition, extract, inject)
combo_condition_idVARBINARYCombo condition ID (bytes31); for combo detail join combo_details on combo_condition_id and outcome_index = 0
position_idUINT256v3 PositionManager token ID for position-scoped actions; joins combo_details.token_id
outcome_indexINTEGEROutcome byte of position_id (0 = YES, 1 = NO)
outcomeVARCHAROutcome as label; Yes pays out only if every leg wins
related_position_idUINT256Secondary position ID (wrap/unwrap underlying, compress new position)
related_condition_idVARBINARYSecondary condition ID (child-YES / reduced condition)
related_condition_id_2VARBINARYTertiary condition ID (child-NO / residual condition)
all_condition_idsARRAY(VARBINARY)All condition IDs of the row combined into one array (NULLs dropped). Filter WHERE contains(all_condition_ids, X) to find every action touching combo X — combo_condition_id alone is the parent combo (not the child/residual) on extract, inject, split_on_condition and merge_on_condition
initiatorVARBINARYAddress performing the action
recipientVARBINARYRecipient of the action’s output where emitted; the redeemed user on auto-redemptions
recipient_2VARBINARYNO-token recipient of a split
amountDOUBLEShare/set quantity (= pUSD moved 1:1 for splits/merges); NULL on auto-redemptions
payoutDOUBLEpUSD returned in USD (redemption payout, compress collateral out)
is_auto_redeemedBOOLEANOn redemptions: TRUE when executed by the AutoRedeemer on the user’s behalf
combo_nameVARCHARGenerated combo name (question: outcome AND ...); NULL unless every leg is labeled
leg_countBIGINTNumber of legs in the combo
contract_addressVARBINARYContract that emitted the event
evt_indexINTEGERIndex of the event within the transaction
tx_hashVARBINARYTransaction hash
tx_fromVARBINARYTransaction sender
_updated_atTIMESTAMPWhen this row was last inserted or updated by the dbt pipeline

Table sample

Example query