> ## Documentation Index
> Fetch the complete documentation index at: https://docs.b3os.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Polymarket Get Leaderboard

Retrieve top traders from the Polymarket leaderboard ranked by profit or volume. Supports filtering by category (crypto, politics, sports, etc.) and time period (day, week, month, all). Ideal for: copy-trading research, market intelligence, finding top performers, competitive analysis.

![Polymarket Get Leaderboard logo](https://cdn.b3.fun/b3os-icons/polymarket-icon.png)
Catalog action Utility

Retrieve top traders from the Polymarket leaderboard ranked by profit or volume. Supports filtering by category (crypto, politics, sports, etc.) and time period (day, week, month, all). Ideal for: copy-trading research, market intelligence, finding top performers, competitive analysis.


## At a Glance

| Field | Value |
| --- | --- |
| Action ID | `polymarket-get-leaderboard` |
| Category | Utility |
| Connector | Not required |
| Requires gas | No |
| Funds movement | None declared |
| Tags | `polymarket`, `market-data`, `read` |

## Payload Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `category` | `string` | No | Leaderboard category to filter by. OVERALL returns all traders, other values filter by topic. |
| `timePeriod` | `string` | No | Time period for the leaderboard rankings. DAY = last 24h, WEEK = last 7 days, MONTH = last 30 days, ALL = all time. |
| `orderBy` | `string` | No | Order results by profit/loss \(PNL\) or trading volume \(VOL\). |
| `limit` | `number` | No | Maximum number of traders to return \(default: 10, max: 50\) |

## Result Schema

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `traders` | `array` | Yes | Array of top traders |
| `count` | `number` | Yes | Number of traders returned |
| `category` | `string` | No | The category filter used |
| `timePeriod` | `string` | No | The time period filter used |

## Examples

**Workflow node**

```json
{
  "type": "polymarket-get-leaderboard",
  "payload": {
    "category": "OVERALL",
    "timePeriod": "ALL",
    "orderBy": "PNL",
    "limit": 10
  },
  "children": []
}
```
  **Test with API**

```bash
curl -X POST "https://api.b3os.org/v1/actions/polymarket-get-leaderboard/test" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "inputs": {
    "category": "OVERALL",
    "timePeriod": "ALL",
    "orderBy": "PNL",
    "limit": 10
  }
}'
```

**Use expressions for dynamic values**

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.