{"uid":"cap_6y9nJ59IcKUgp1o4tYtNe","slug":"aisa-mpp-data-apis-polymarket-user-activity-f7460dd1","name":"Polymarket User Activity","description":"Returns user activity with pagination and filtering.\n\n<!-- aisa-pricing:start -->\nPublished reference price: $0.012 USD per successful request. Account-specific pricing and final settlement may differ.\n<!-- aisa-pricing:end -->","url":"https://api.aisa.one/apis/v1/polymarket/activity?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","required":["user"],"properties":{"end":{"type":"integer","minimum":0,"description":"Upper-bound timestamp (epoch seconds) for the activity window. Omit for the default (current time); rows newer than `end` are excluded."},"side":{"enum":["BUY","SELL"],"type":"string"},"type":{"type":"array","items":{"enum":["TRADE","SPLIT","MERGE","REDEEM","REWARD","CONVERSION","DEPOSIT","WITHDRAWAL","YIELD","MAKER_REBATE","TAKER_REBATE","REFERRAL_REWARD"],"type":"string"},"description":"Comma-separated list of activity types to include. DEPOSIT and WITHDRAWAL records also require `excludeDepositsWithdrawals=false`."},"user":{"type":"string","example":"0x56687bf447db6ffa42ffe2204a05edaa20f55839","pattern":"^0x[a-fA-F0-9]{40}$","description":"User Profile Address (0x-prefixed, 40 hex chars)"},"limit":{"type":"integer","default":100,"maximum":500,"minimum":0,"description":"Page size. Values above the maximum are clamped to 500."},"start":{"type":"integer","minimum":0,"description":"Lower-bound timestamp (epoch seconds) for the activity window. Omit or pass `0` for the default window (most recent ~3 years); pass a positive epoch (e.g. `1`) to retrieve full history. With `sortDirection=ASC`, omitting `start` already reads from the beginning of the account's history (no default window)."},"market":{"type":"array","items":{"type":"string","example":"0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917","pattern":"^0x[a-fA-F0-9]{64}$","description":"0x-prefixed 64-hex string"},"description":"Comma-separated list of condition IDs. Mutually exclusive with eventId."},"offset":{"type":"integer","default":0,"maximum":5000,"minimum":0,"description":"Starting index for pagination. Requests past the cap are rejected with a 400 (never silently clamped). To read history deeper than offset 5000, page inside `start`/`end` windows — each window has its own offset budget."},"sortBy":{"enum":["TIMESTAMP","TOKENS","CASH"],"type":"string","default":"TIMESTAMP"},"eventId":{"type":"array","items":{"type":"integer","minimum":1},"description":"Comma-separated list of event IDs. Mutually exclusive with market."},"sortDirection":{"enum":["ASC","DESC"],"type":"string","default":"DESC","description":"`DESC` (default) returns the newest rows first; `ASC` the oldest first. Both orders are stable — the same query returns the same rows at any `limit`/`offset`, so pages compose without gaps or repeats."},"excludeDepositsWithdrawals":{"type":"boolean","default":true,"description":"Excludes deposit and withdrawal records. The default `true` applies even when `type` requests those records, so to get deposits and withdrawals you must pass `false`."}}},"responseSchema":{"type":"array","items":{"type":"object","properties":{"bio":{"type":"string"},"icon":{"type":"string","description":"Market artwork. Falls back to the market image, then to the parent event's icon and image, when the market has no icon of its own. Empty on `CONVERSION` rows."},"name":{"type":"string"},"side":{"enum":["BUY","SELL"],"type":"string"},"size":{"type":"number","description":"Token amount for this row. On `REDEEM` rows it is the number of tokens burned for this row's outcome, so redeeming both sides of a market returns one row per outcome instead of a single combined row."},"slug":{"type":"string"},"type":{"enum":["TRADE","SPLIT","MERGE","REDEEM","REWARD","CONVERSION","DEPOSIT","WITHDRAWAL","YIELD","MAKER_REBATE","TAKER_REBATE","REFERRAL_REWARD"],"type":"string"},"asset":{"type":"string","description":"Token ID this row refers to. Populated on `REDEEM` rows with the token that row settles. Empty when the row is not token-specific."},"price":{"type":"number"},"title":{"type":"string"},"isCombo":{"type":"boolean","description":"True when this row is part of a combinatorial (multi-market) position. Flag only — combo detail is not embedded here. The row's conditionId equals the combo's combo_condition_id; pass it to /v1/activity/combos or /v1/positions/combos via market_id to fetch legs and detail. Omitted on non-combo rows."},"outcome":{"type":"string"},"usdcSize":{"type":"number","description":"USDC amount for this row. On `REDEEM` rows it is the payout for this row's outcome and is `0` for a losing outcome; the rows of one redemption sum to the total payout."},"eventSlug":{"type":"string"},"pseudonym":{"type":"string"},"timestamp":{"type":"integer","format":"int64"},"conditionId":{"type":"string","example":"0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917","pattern":"^0x[a-fA-F0-9]{64}$","description":"0x-prefixed 64-hex string"},"proxyWallet":{"type":"string","example":"0x56687bf447db6ffa42ffe2204a05edaa20f55839","pattern":"^0x[a-fA-F0-9]{40}$","description":"User Profile Address (0x-prefixed, 40 hex chars)"},"outcomeIndex":{"type":"integer","description":"Zero-based index of this row's outcome in the market's `outcomes` array, so `outcome` always equals `outcomes[outcomeIndex]`. On `REDEEM` rows it identifies the outcome the row settles, not the market's winning outcome. `999` means the outcome could not be determined, in which case `outcome` is empty."},"profileImage":{"type":"string"},"transactionHash":{"type":"string"},"profileImageOptimized":{"type":"string"}}}},"example":null,"exampleRequest":null,"tags":["web-search","financial-data","prediction-markets","weather","travel","data","search"],"displayCostAmount":"0.012","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"registry","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.012/call","primary":{"kind":"static","protocol":"mpp","network":"tempo","amountUsd":"0.012","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"mpp","network":"tempo","amountUsd":"0.012","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_03Ew4-YDYMmiz3HgXVHFK","protocol":"mpp","methodType":"crypto","chain":"tempo","mode":"charge","costAmount":"0.012","costPer":"request","priority":0,"asset":"0x20C000000000000000000000b9537d11c60E8b50","unit":"request","depositMicros":null,"planRef":null}],"brandName":"AIsa MPP Data APIs","brandSlug":"aisa-mpp-data-apis-mpp","brandBaseUrl":"https://aisa.one","brandDocsUrl":null,"whatItDoes":"Returns paginated, filterable on-chain activity history (trades, deposits, rewards, redemptions, etc.) for a Polymarket user address.","exampleAgentPrompt":"Pull the last 50 trades for Polymarket wallet 0x56687bf447db6ffa42ffe2204a05edaa20f55839, filtering to only BUY activity, sorted by timestamp descending.","exampleUseCases":[{"title":"Audit a trader's prediction market history","prompt":"Get me all TRADE and REDEEM activity for Polymarket address 0x56687bf447db6ffa42ffe2204a05edaa20f55839 since January 1 2024, sorted newest first, up to 200 rows."},{"title":"Track deposits and withdrawals for a wallet","prompt":"Show me all DEPOSIT and WITHDRAWAL records for Polymarket wallet 0xabc123...def456 — make sure to include those since they're excluded by default."},{"title":"Analyze activity on a specific prediction market","prompt":"Fetch all activity for wallet 0x56687bf447db6ffa42ffe2204a05edaa20f55839 on Polymarket market 0xdd22472e552920b8438158ea7238bfadfa4f736aa4cee91a6b86c39ead110917, sorted by USDC size descending, limit 100."}],"resultDescription":"Returns an array of activity objects, each containing the activity type (TRADE, REDEEM, DEPOSIT, etc.), side (BUY/SELL), token amount, USDC amount, price, market title, outcome, condition ID, timestamp, market icon, event slug, and combo flags. Paginatable via offset and windowed by start/end timestamps.","failureModes":["400 error if offset exceeds 5000 — must use start/end windowing for deeper history","400 error if both market and eventId are provided (mutually exclusive)","Invalid 0x address format returns validation error","Deposits/withdrawals not returned unless excludeDepositsWithdrawals=false is explicitly set","Empty array returned if user has no activity matching filters"],"whenToPreferThis":"Use this endpoint when you need historical on-chain activity for a specific Polymarket user wallet, with rich filtering by activity type, market, event, side, and timestamp. Prefer this over positions endpoints when you need a chronological audit trail rather than current open/closed positions.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-18T06:47:28.710Z","isFirstParty":false,"canonicalSlug":"aisa-mpp-data-apis-polymarket-user-activity-f7460dd1"}