# Polymarket Get user activity API

> Get user activity from Polymarket. Returns the official Polymarket API response unchanged.

Source: https://www.sandbase.ai/apis/polymarket/activity
API reference: https://www.sandbase.ai/apis/polymarket/activity/docs

## Facts

- Provider: Polymarket
- Type: Data API
- Endpoint: `POST https://api.sandbase.ai/v1/api/polymarket/activity`
- Price: $0.01 per call
- Free allowance: 100 calls per organization per UTC day, shared across eligible APIs
- Capabilities: api, polymarket, prediction markets
- Billing: pay per use from one SandBase balance; no provider account or subscription needed

## Call it

`POST https://api.sandbase.ai/v1/api/polymarket/activity` with `Authorization: Bearer $SANDBASE_API_KEY` and the parameters as a JSON body.

| Parameter | Type | Required | Allowed values |
| --- | --- | --- | --- |
| `user` | string | yes |  |
| `end` | integer | no |  |
| `eventId` | array | no |  |
| `excludeDepositsWithdrawals` | boolean | no |  |
| `limit` | integer | no |  |
| `market` | array | no |  |
| `offset` | integer | no |  |
| `side` | string | no | BUY, SELL |
| `sortBy` | string | no | TIMESTAMP, TOKENS, CASH |
| `sortDirection` | string | no | ASC, DESC |
| `start` | integer | no |  |
| `type` | array | no |  |

## FAQ

### How do I use the Polymarket Get user activity API?

Send a POST request to https://api.sandbase.ai/v1/api/polymarket/activity with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

### How much does the Polymarket Get user activity API cost?

$0.01 per call. Every organization gets 100 free calls per UTC day, shared across eligible SandBase APIs including this one; after that each call is billed at this price from your SandBase balance. There is no subscription.

### What parameters does the Polymarket Get user activity API accept?

Required: user (string). Optional: end (integer), eventId (array), excludeDepositsWithdrawals (boolean), limit (integer), market (array) and offset (integer) and 5 more. The Parameters table and the Playground on this page list every field.

### What does the Polymarket Get user activity API return?

A JSON response returned in the same HTTP request (synchronous).

### Do I need a Polymarket developer account or API key?

No. Polymarket Get user activity runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for Polymarket API access separately.

## README

### Polymarket Get user activity API

Get user activity from Polymarket. Returns the official Polymarket API response unchanged.

The response is the official Polymarket API response, unchanged.

#### Request

```bash
curl -X POST "https://api.sandbase.ai/v1/run" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "polymarket/activity", "user": "0xfe787d2da716d60e8acff57fb87eb13cd4d10319", "limit": 2}'
```

#### Parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `end` | integer | No | Upper-bound timestamp (epoch seconds) for the activity window. Omit for the default (current time); rows newer than `end` are excluded. |
| `eventId` | array | No | Comma-separated list of event IDs. Mutually exclusive with market. |
| `excludeDepositsWithdrawals` | boolean | No | Excludes deposit and withdrawal records. The default `true` applies even when `type` requests those records, so to get deposits and withdrawals you must pass `f |
| `limit` | integer | No | Page size. Values above the maximum are clamped to 500. |
| `market` | array | No | Comma-separated list of condition IDs. Mutually exclusive with eventId. |
| `offset` | integer | No | 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 `sta |
| `side` | string | No | side |
| `sortBy` | string | No | sortBy |
| `sortDirection` | string | No | `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`, s |
| `start` | integer | No | 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`)  |
| `type` | array | No | Comma-separated list of activity types to include. DEPOSIT and WITHDRAWAL records also require `excludeDepositsWithdrawals=false`. |
| `user` | string | Yes | User Profile Address (0x-prefixed, 40 hex chars) |

#### Pricing

Flat price per call. Failed calls are not charged.
