# Rarible NFT Scraper | Collections, Listings, Sales & Traits (`ahmed_jasarevic/rarible-scraper`) Actor

Extract NFT collection metadata, listings, sales activity, traits and creator profiles from Rarible.com. Supports Ethereum, Polygon, Base, and other EVM chains.

- **URL**: https://apify.com/ahmed\_jasarevic/rarible-scraper.md
- **Developed by:** [Ahmed Jasarevic](https://apify.com/ahmed_jasarevic) (community)
- **Categories:**
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.50 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Rarible NFT Scraper

Extract **structured NFT market data from Rarible.com** for NFT research, market analysis, collection monitoring, trading intelligence, and blockchain analytics.

This Actor collects **collection metadata, current listings, sales/activity, collection offers, and trait/rarity data** and returns everything as clean, structured dataset records.

Supports **Ethereum, Polygon, Base, and other EVM-compatible chains available through Rarible**.

### Why use this Actor?

#### 📊 NFT Market Research

Analyze NFT collections without manually browsing individual Rarible pages. Collect collection statistics, prices, trading activity, owners, supply, listings, and more.

#### 💰 Track Listings & Prices

Extract current NFT listings with:

- NFT name and token ID
- Asking price
- USD price
- Currency
- Seller wallet
- Listing URL
- NFT image

#### 📈 Analyze Sales Activity

Collect recent marketplace activity and sales, including:

- Sale price
- USD value
- Buyer wallet
- Seller wallet
- Transaction hash
- Event type
- Timestamp
- Token ID

#### 🎨 Analyze Traits & Rarity

Extract collection traits and rarity information to identify:

- Trait categories
- Trait values
- Trait counts
- Rarity percentages

#### 🤝 Monitor Collection Offers

Collect active collection-level offers including:

- Offer price
- USD value
- Currency
- Bidder wallet
- Quantity
- Expiration
- Offer URL

#### ⛓️ Multi-Chain NFT Data

The Actor supports Rarible collections across supported EVM networks, including:

- Ethereum
- Polygon
- Base
- Other supported EVM chains

### What data does it extract?

The Actor produces several structured record types.

#### Collection Metadata

Collection records include:

| Field             | Description                     |
| ----------------- | ------------------------------- |
| `collectionId`    | Rarible collection identifier   |
| `name`            | Collection name                 |
| `description`     | Collection description          |
| `imageUrl`        | Collection image                |
| `blockchain`      | Blockchain/network              |
| `contractAddress` | NFT contract address            |
| `floorPrice`      | Current floor price             |
| `floorPriceUsd`   | Floor price in USD              |
| `volume24h`       | 24-hour trading volume          |
| `volumeAllTime`   | Total trading volume            |
| `owners`          | Number of owners                |
| `totalSupply`     | Collection supply               |
| `listedCount`     | Number of listed NFTs           |
| `externalUrl`     | Collection website              |
| `scrapedAt`       | Collection extraction timestamp |

#### Current Listings

Listing records contain:

| Field          | Description           |
| -------------- | --------------------- |
| `collectionId` | Collection identifier |
| `tokenId`      | NFT token ID          |
| `name`         | NFT name              |
| `price`        | Listing price         |
| `priceUsd`     | Price in USD          |
| `currency`     | Listing currency      |
| `seller`       | Seller wallet/address |
| `listingUrl`   | Rarible listing URL   |
| `imageUrl`     | NFT image             |
| `scrapedAt`    | Extraction timestamp  |

#### Sales & Activity

Activity records contain:

| Field             | Description                 |
| ----------------- | --------------------------- |
| `collectionId`    | Collection identifier       |
| `tokenId`         | NFT token ID                |
| `name`            | NFT name                    |
| `price`           | Sale/activity price         |
| `priceUsd`        | USD value                   |
| `currency`        | Transaction currency        |
| `buyer`           | Buyer wallet/address        |
| `seller`          | Seller wallet/address       |
| `transactionHash` | Blockchain transaction hash |
| `timestamp`       | Activity timestamp          |
| `eventType`       | Activity/event type         |
| `scrapedAt`       | Extraction timestamp        |

#### Traits & Rarity

Trait records contain:

| Field          | Description                           |
| -------------- | ------------------------------------- |
| `collectionId` | Collection identifier                 |
| `traitType`    | Trait category                        |
| `traitValue`   | Trait value                           |
| `count`        | Number of NFTs with the trait         |
| `rarity`       | Calculated/provided rarity percentage |
| `scrapedAt`    | Extraction timestamp                  |

#### Collection Offers

Offer records contain:

| Field          | Description                         |
| -------------- | ----------------------------------- |
| `collectionId` | Collection identifier               |
| `price`        | Offer price                         |
| `priceUsd`     | Offer value in USD                  |
| `currency`     | Offer currency                      |
| `bidder`       | Bidder wallet/address               |
| `quantity`     | Number of NFTs covered by the offer |
| `expiration`   | Offer expiration time               |
| `offerUrl`     | Offer URL                           |
| `scrapedAt`    | Extraction timestamp                |

### Use cases

This Actor is useful for:

- **NFT market research**
- **NFT collection monitoring**
- **Floor price tracking**
- **NFT trading analytics**
- **Rarity research**
- **Collection comparison**
- **Sales activity analysis**
- **Wallet and trader research**
- **Blockchain analytics**
- **NFT investment research**
- **Market intelligence**
- **Historical data collection**

### Output

Results are stored in an Apify Dataset and organized into dedicated views:

- **Collection Metadata** — collection statistics and blockchain information
- **Current Listings (Asks)** — active NFT listings
- **Traits & Rarity** — collection traits and rarity data
- **Recent Activity/Sales** — marketplace activity and transactions
- **Collection Offers (Bids)** — active collection offers

You can export the dataset as **JSON, CSV, Excel, or use it through the Apify API**.

### Example output

#### Collection

```json
{
  "type": "collection",
  "collectionId": "collection-id",
  "name": "Example NFT Collection",
  "description": "Example collection description",
  "imageUrl": "https://example.com/image.png",
  "blockchain": "ethereum",
  "contractAddress": "0x...",
  "floorPrice": "0.50 ETH",
  "floorPriceUsd": 1250,
  "volume24h": "12.4 ETH",
  "volumeAllTime": "4,250 ETH",
  "owners": 3200,
  "totalSupply": 10000,
  "listedCount": 420,
  "externalUrl": "https://example.com",
  "scrapedAt": "2026-09-02T00:00:00.000Z"
}
```

#### Listing

```json
{
  "type": "listing",
  "collectionId": "collection-id",
  "tokenId": "1234",
  "name": "Example NFT #1234",
  "price": "0.75 ETH",
  "priceUsd": 1875,
  "currency": "ETH",
  "seller": "0x...",
  "listingUrl": "https://rarible.com/...",
  "imageUrl": "https://...",
  "scrapedAt": "2026-09-02T00:00:00.000Z"
}
```

### How to use

1. Configure the Actor using the **Input** tab.
2. Provide the Rarible collection or other supported input required by the Actor.
3. Start the Actor.
4. Wait for the dataset to finish processing.
5. Open the Dataset to explore collection, listing, activity, trait, and offer records.
6. Export the results or consume them programmatically through the Apify API.

### Dataset views

The dataset includes dedicated views so you can work with different types of NFT data independently.

#### Collection Metadata

Use this view for collection-level analysis such as floor price, supply, owners, volume, and listings.

#### Current Listings (Asks)

Use this view to analyze currently listed NFTs, prices, sellers, and individual token information.

#### Traits & Rarity

Use this view to study trait distributions and rarity across a collection.

#### Recent Activity/Sales

Use this view to analyze recent transactions, buyers, sellers, prices, and blockchain transaction hashes.

#### Collection Offers (Bids)

Use this view to monitor collection-level offers, bidders, quantities, prices, and expiration times.

### Why structured NFT data?

Rarible pages contain valuable information for NFT research, but manually collecting it across collections and listings is slow and difficult to analyze.

This Actor converts marketplace information into **structured records that can be exported, filtered, analyzed, or connected to other workflows**.

Use the resulting data with:

- Python
- Excel
- Google Sheets
- BI dashboards
- Databases
- Data pipelines
- Apify API
- Automation platforms

### Responsible use

This Actor is intended for accessing publicly available marketplace information.

Users are responsible for ensuring that their use of the collected data complies with **Rarible's terms, applicable laws, and any relevant blockchain or marketplace requirements**.

Do not use the Actor to bypass access controls, authentication, or other technical restrictions.

### Support

If you encounter an issue with the Actor or have a feature request, please use the support options available on the Apify platform.

### Related Actors

Verified related actors on Apify that pair well with this one. All links point to real, publicly available actors.

- [eBay Scraper](https://apify.com/automation-lab/ebay-scraper)
- [Amazon Product Scraper](https://apify.com/junglee/Amazon-crawler)
- [Instagram Scraper](https://apify.com/apify/instagram-scraper)

### SEO Keywords

rarible scraper, nft market data, rarible nft listings, nft collection data, rarible sales data, nft rarity tracker, rarible collection monitoring, nft trading intelligence, blockchain nft data, ethereum nft data, polygon nft data, rarible api alternative, nft collection analytics, rarible trait rarity, nft price tracking, nft market research, rarible export, nft offers data, multi chain nft data, rarible dataset

# Actor input Schema

## `startUrls` (type: `array`):

List of Rarible collection URLs. Example: https://rarible.com/ethereum/collections/0x23581767a106ae21c074b2276d25e5c3e136a68b

## `maxItemsPerCollection` (type: `integer`):

Maximum number of NFT items to scrape per collection (0 = unlimited, but capped by free tier limits)

## `maxContinuationPages` (type: `integer`):

Maximum number of API continuation pages to fetch per collection. Items are paginated through Rarible's internal API using continuation tokens, so this controls total pagination depth. Leave at default for full-depth scraping.

## `scrollCount` (type: `integer`):

Legacy field kept for backwards compatibility. Pagination is now driven by the internal Rarible API (see 'Max Pagination Pages per Collection'), so this value is ignored.

## `includeListings` (type: `boolean`):

Extract current listings/asks from the collection page

## `includeTraits` (type: `boolean`):

Extract trait categories and rarity data from the collection page

## `includeActivity` (type: `boolean`):

Extract recent sales and activity from the activity tab (requires additional requests)

## `includeOffers` (type: `boolean`):

Extract collection offers/bids from the offers tab (requires additional requests)

## `maxRequestsPerCrawl` (type: `integer`):

Maximum number of requests that can be made by this crawler (hard limit)

## `proxyConfiguration` (type: `object`):

Proxy settings for anti-bot protection. Use Apify Proxy for best results.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://rarible.com/ethereum/collections/0x23581767a106ae21c074b2276d25e5c3e136a68b"
    }
  ],
  "maxItemsPerCollection": 50,
  "maxContinuationPages": 100,
  "scrollCount": 15,
  "includeListings": true,
  "includeTraits": true,
  "includeActivity": false,
  "includeOffers": false,
  "maxRequestsPerCrawl": 200,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "BUYPROXIES94952"
    ]
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://rarible.com/ethereum/collections/0x23581767a106ae21c074b2276d25e5c3e136a68b"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("ahmed_jasarevic/rarible-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "startUrls": [{ "url": "https://rarible.com/ethereum/collections/0x23581767a106ae21c074b2276d25e5c3e136a68b" }] }

# Run the Actor and wait for it to finish
run = client.actor("ahmed_jasarevic/rarible-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://rarible.com/ethereum/collections/0x23581767a106ae21c074b2276d25e5c3e136a68b"
    }
  ]
}' |
apify call ahmed_jasarevic/rarible-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,ahmed_jasarevic/rarible-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/nHqCjpfTug4FJbNmn/builds/jGb1CouhrDfi3ruiI/openapi.json
