# Blur — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Access NFT collection data on Blur.io, including floor prices, best bids, listed tokens, and recent activity. Authenticate with an Ethereum wallet to place collection bids and retrieve portfolio holdings.

**Category:** Web3 & Onchain | **Website:** [blur.io/](https://blur.io/) | **Docs:** [parse.bot/marketplace/bbf9d0d5-18bf-4c67-bba6-843e72e2ba14/blur-io-api](https://parse.bot/marketplace/bbf9d0d5-18bf-4c67-bba6-843e72e2ba14/blur-io-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_collection

Fetch detailed metadata and market stats for a single NFT collection by its slug. Returns comprehensive data including floor price, volume across time windows, trait frequency distributions, best bid, and supply/ownership counts. One network round-trip per collection.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection_slug` | string | Yes | Collection slug identifier (e.g. 'pudgypenguins', 'boredapeyachtclub'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/get_collection \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection_slug":"<string>"}'
```

### get_collection_activity

Fetch recent sales and listing activity for a collection. Returns events including sales and order creations with price, trader addresses, marketplace, and timestamps. Internally resolves the collection's contract address before querying events.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection_slug` | string | Yes | Collection slug identifier (e.g. 'pudgypenguins', 'boredapeyachtclub'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/get_collection_activity \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection_slug":"<string>"}'
```

### get_collection_best_bid

Retrieve the best (highest) collection-wide offer/bid and total bid value for a collection. Useful for gauging buyer demand and the spread between floor and highest bid.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection_slug` | string | Yes | Collection slug identifier (e.g. 'pudgypenguins', 'boredapeyachtclub'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/get_collection_best_bid \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection_slug":"<string>"}'
```

### get_collection_floor_price

Retrieve the current floor price and recent floor price changes for a collection. Returns floor price now, one day ago, and one week ago — useful for tracking price trends without fetching the full collection detail.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection_slug` | string | Yes | Collection slug identifier (e.g. 'pudgypenguins', 'boredapeyachtclub'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/get_collection_floor_price \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection_slug":"<string>"}'
```

### get_collection_tokens

Fetch NFT tokens currently listed for sale in a collection. Returns token details including price, rarity rank, traits, and owner. Only tokens with active ask orders are included. Collections with no active listings return an empty array.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `collection_slug` | string | Yes | Collection slug identifier (e.g. 'pudgypenguins', 'boredapeyachtclub'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/get_collection_tokens \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"collection_slug":"<string>"}'
```

### get_collections

Fetch a ranked list of NFT collections sorted by trading volume or other metrics. Returns collection summaries including floor prices, volume stats across multiple time windows, and current best bid. The full ranking contains thousands of collections; a single call returns one page of results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `order` | string | No | Sort order. |
| `sort` | string | No | Sort field for ranking collections. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/get_collections \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"order":"<string>","sort":"<string>"}'
```

### get_portfolio

Fetch NFT portfolio for a wallet address. Requires active auth session.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `wallet_address` | string | Yes | Ethereum wallet address |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/get_portfolio \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"wallet_address":"<string>"}'
```

### login

Exchange signed challenge for a JWT auth token. Requires signature from external wallet.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `challenge_message` | string | Yes | Original challenge message |
| `signature` | string | Yes | Signed message signature from wallet |
| `wallet_address` | string | Yes | Ethereum wallet address |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-blur-io-api-bbf9d0d5/login \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"challenge_message":"<string>","signature":"<string>","wallet_address":"<string>"}'
```
