CoinMarketCap Coins Scraper avatar

CoinMarketCap Coins Scraper

Pricing

from $0.98 / 1,000 results

Go to Apify Store
CoinMarketCap Coins Scraper

CoinMarketCap Coins Scraper

Scrapes CoinMarketCap listings and discovery lists into structured coin records with names, symbols, ranks, market figures, supply, tags, and percentage changes. Choose category-filtered or sorted listings, recently added coins, trending, gainers, losers, or most-visited lists.

Pricing

from $0.98 / 1,000 results

Rating

0.0

(0)

Developer

Axiom Works

Axiom Works

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

CoinMarketCap Coin Scraper

Returns: one row per coin with id, name, symbol, rank, price, marketCap, volume24h and sourceUrl. Input: {"mode":"listings","maxItems":50} Best for: crypto price monitoring, market-cap screening, and ticker watchlists using the CoinMarketCap scraper as a CoinMarketCap API data source.

{
"id": 1,
"name": "Bitcoin",
"symbol": "BTC",
"rank": 1,
"price": 83443.73211926583,
"marketCap": 1677004898980.6252,
"sourceUrl": "https://api.coinmarketcap.com/data-api/v3/cryptocurrency/listing?start=1&limit=1&sortBy=market_cap&sortType=desc&convert=USD&cryptoType=all&tagType=all&audited=false"
}

What does CoinMarketCap Coin Scraper do?

CoinMarketCap Coin Scraper extracts public cryptocurrency data from CoinMarketCap's data API. It can read the main coin listing, recently added coins, trending coins, top gainers, top losers, and most visited coins. Each result is one coin with a stable CoinMarketCap ID, a source URL, market figures, and the fields available for the selected mode. The Actor does not require a CoinMarketCap login. It is an independent tool and is not affiliated with or endorsed by CoinMarketCap.

Use the Actor when you need a current market snapshot in a structured dataset. A run can focus on the top listing, a category such as layer-1, or one of the discovery lists. Listing results can be sorted by market capitalization, trading volume, or recent price change. The newest mode uses CoinMarketCap's date-added sorting. The data changes frequently, so a saved dataset represents the time of that run rather than a permanent valuation. Price and market figures should be checked again before making time-sensitive decisions.

The Actor requests JSON directly from the public data API. It reads up to 100 listing entries per request and pauses between requests. Spotlight modes use one request and have a maximum of 30 available entries. The Actor deduplicates IDs across pages, stops at your maxItems limit, and pushes only valid coin records. Each pushed record triggers one result event. An optional Apify Proxy setting is available if direct access is blocked.

What data can you get?

The table describes the complete dataset schema. Numeric values are reported by the source API without rounding. A null value means that the selected API list did not supply that field. In particular, spotlight lists often omit supply, tags, and date-added information. Listing quote values use the selected convert currency; the spotlight endpoint supplies its own quote values.

FieldMeaning
idStable CoinMarketCap coin ID.
nameCoin name.
symbolTrading symbol.
slugCoin URL slug.
rankCoinMarketCap rank reported in the selected list.
priceCurrent quoted coin price.
marketCapReported market capitalization.
volume24hReported trading volume over 24 hours.
percentChange1hPrice change over one hour, in percent.
percentChange24hPrice change over 24 hours, in percent.
percentChange7dPrice change over seven days, in percent.
percentChange30dPrice change over 30 days, in percent.
circulatingSupplyReported circulating supply.
totalSupplyReported total supply.
maxSupplyReported maximum supply, if defined.
dateAddedISO date when the coin was added.
tagsTag slugs associated with the coin.
lastUpdatedISO timestamp for the source quote update.
sourceUrlExact data API request URL that supplied the record.

The id is suitable for joining results from separate runs. The slug is useful for matching a coin to its CoinMarketCap page. Percentage fields are percentage values, so a value of 2.5 represents a 2.5 percent change. The Actor does not infer missing numbers. If the API leaves a field out, the dataset preserves that gap as null instead of inventing a value. Tags reflect the API's tag slugs, which may include categories, ecosystems, and portfolio labels.

How to use

Open the Actor on Apify, select a mode, set the maximum number of items, and start the run. The default mode returns the main market-cap listing. For a focused listing, put a tag slug in category; layer-1, defi, and memes illustrate the expected format. You can also choose another sort order for listings. Select newest for recently added coins. The trending, gainers, losers, and mostVisited modes query CoinMarketCap's spotlight lists.

When a run finishes, open its Dataset tab to inspect or export the records. You can export JSON, CSV, or another format supported by Apify. If a tag or filter has no matching records, the run completes with zero items. The status suggests checking the tag, removing symbols, or lowering minMarketCap. Persistent blocks suggest retrying later or enabling Apify Proxy. Invalid input, such as a malformed tag slug or a nonpositive item limit, produces a clear error. A blocked or temporarily unavailable endpoint is retried a few times with backoff. If you enable Apify Proxy, those retries use fresh proxy sessions.

Set maxItems to the number you want to collect. A value of 7 pushes no more than seven results and charges no more than seven result events. Listing modes can page through a larger result set. Spotlight modes contain at most 30 items from one API call, so a higher item limit cannot create more spotlight records. If the source returns fewer records than requested, the Actor stops with the number actually available.

Input

All fields are optional. The prefilled Console run shows a 50-item market-cap listing. API callers can omit fields and use the documented defaults. The proxyConfiguration field uses Apify's standard proxy editor. Direct requests are the default because the public endpoint can be read without a proxy in normal conditions.

Input fieldTypeDefaultEffect
modeenumlistingsChoose listings, newest, trending, gainers, losers, or mostVisited.
maxItemsinteger100Cap output to 1 through 8000 items.
sortByenummarket_capSort listings by market cap, volume_24h, percent_change_24h, or percent_change_7d.
categorystringemptyFilter listings by a tag slug.
symbolsarrayemptyOnly return these ticker symbols, for example BTC and ETH. All modes; spotlight filters its available list.
minMarketCapinteger0Skip coins below this market cap in the quote currency. All modes; spotlight filters its available list.
convertstringUSDSet the listing quote currency symbol.
proxyConfigurationobjectdirectConfigure Apify Proxy if needed.
__verifySnapshotsbooleanfalseSave source JSON evidence for the first ten items.

For example, this input requests a category listing and caps the output at seven coins:

{
"mode": "listings",
"category": "layer-1",
"sortBy": "market_cap",
"convert": "USD",
"maxItems": 7
}

The sortBy, category, and convert settings apply to listings. Newest mode uses its own date-added order. Spotlight modes use CoinMarketCap's predefined discovery ordering and quote data. Supplying a setting for a mode that does not use it does not change that mode's ordering or values. Use a category slug, not a display label or URL. A category with no matching entries yields an empty dataset and a warning in the log.

Watchlist and size filters

Set symbols to return only the tickers you list; the Actor pages through the listing and stops once every symbol has been found. Set minMarketCap to drop small coins; with market-cap sorting the scan stops at the first coin below the threshold. Both filters also apply to the available spotlight list; they do not expand that list. Unknown symbols or restrictive thresholds can produce zero results. The maxItems limit counts matching rows across the whole run.

Extra fields

Listing and newest rows also include percentChange60d, percentChange90d, percentChange1y, percentChangeYtd, fullyDilutedMarketCap, dominance, turnover, marketPairCount, isAudited and coinUrl. Spotlight modes (trending, gainers, losers, mostVisited) do not provide the quote-based ones, so those are null there.

Output

Each dataset item is a JSON object. This example is a real record from a local listings run. Market values and timestamps are a snapshot and will change on later runs.

{
"id": 29470,
"name": "Ethena USDe",
"symbol": "USDe",
"slug": "ethena-usde",
"rank": 23,
"price": 0.9997404225306497,
"marketCap": 4903193400.663067,
"volume24h": 24486692.38622968,
"percentChange1h": 0.00041818,
"percentChange24h": 0.00272838,
"percentChange7d": -0.01000334,
"percentChange30d": 0.01820522,
"circulatingSupply": 4904466489.662967,
"totalSupply": 4904466489.662967,
"maxSupply": null,
"dateAdded": "2024-02-20T11:05:01.000Z",
"tags": ["stablecoin", "asset-backed-stablecoin", "binance-labs-portfolio", "dragonfly-capital-portfolio", "usd-stablecoin", "eigenlayer-ecosystem", "binance-ecosystem", "binance-listing", "xlayer-ecosystem", "plasma-ecosystem", "megaeth-ecosystem", "robinhood-ecosystem"],
"lastUpdated": "2026-10-02T05:28:00.000Z",
"sourceUrl": "https://api.coinmarketcap.com/data-api/v3/cryptocurrency/listing?start=1&limit=50&sortBy=market_cap&sortType=desc&convert=USD&cryptoType=all&tagType=all&audited=false"
}

A spotlight record has the same keys and may contain null for fields that the spotlight endpoint does not return. The sourceUrl identifies the request used to obtain the item, and id stays stable for a given coin across modes. Duplicate IDs are omitted within one run. The Actor outputs only coin records; errors and warnings appear in the run log rather than as fake dataset items.

How much does it cost?

This Actor is charged per result. Every item pushed to the dataset triggers one result event. A run that yields no records does not trigger result events. The maxItems setting gives you direct control over the maximum number of result events in a run. See the Actor's Pricing tab for the current terms. Apify's displayed terms may change, so the Pricing tab is the source to consult before starting a larger run.

The Actor makes one request for each page of up to 100 listing items. Spotlight modes make a single request. Proxy usage, if enabled in your account, follows your Apify configuration. The Actor itself does not add an enrichment event or call a third-party AI processor. The dataset contains values mapped from CoinMarketCap's public response.

Use with AI agents (MCP)

You can make this Actor available to an AI agent through Apify MCP. Add this server configuration to an MCP client, using your Apify authentication method in that client:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=axiomworks/coinmarketcap-scraper"
}
}
}

An agent can request: “Get the current top seven coins by market capitalization and show their names, symbols, prices, and 24-hour changes.” Another useful request is: “Find recently added coins and return their dateAdded, rank, and sourceUrl.” For a tag-specific question, ask: “Collect the first ten coins in the layer-1 category and compare marketCap and volume24h.” For discovery data, ask: “Retrieve the current trending coins and show price, rank, and percentChange24h where available.”

Tell the agent which mode and item cap you want. For a category request, provide the exact tag slug when you know it. An agent can use the field descriptions in the Actor schema to choose sensible arguments, but you should still review the resulting data if the answer will guide a consequential decision. The output is a market snapshot, and the source may update between the Actor run and your later question.

Integrations and API

The Actor can be called from other Actors, scheduled runs, webhooks, or your own application. Replace APIFY_TOKEN in the snippets with your own credential stored in a secure secret manager. The snippets start an Actor run and obtain dataset items. The Actor ID uses the Store path shown above.

Python example:

from apify_client import ApifyClient
client = ApifyClient("APIFY_TOKEN")
run = client.actor("axiomworks/coinmarketcap-scraper").call(
run_input={"mode": "listings", "maxItems": 7}
)
items = list(client.dataset(run["defaultDatasetId"]).iterate_items())
for item in items:
print(item["name"], item["price"])

JavaScript example:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'APIFY_TOKEN' });
const run = await client.actor('axiomworks/coinmarketcap-scraper').call({
mode: 'newest', maxItems: 30,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) process.stdout.write(`${item.name}: ${item.dateAdded}\n`);

cURL example:

curl -X POST 'https://api.apify.com/v2/acts/axiomworks~coinmarketcap-scraper/run-sync-get-dataset-items' \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"mode":"listings","maxItems":7}'

The synchronous endpoint is convenient for short runs. For a large listing request, start an asynchronous run and retrieve its dataset after completion. Store the resulting dataset ID if you need a reproducible reference to the exact snapshot. Each result also carries its source endpoint URL. Avoid assuming that a later request to the same URL will return identical values; this market feed updates over time.

FAQ

Can I get exactly seven records? If at least seven valid entries exist in the selected list, set maxItems to 7. The Actor stops after pushing seven distinct coin IDs. A smaller available list produces fewer items.

Why are some properties null? CoinMarketCap supplies different shapes for listings and spotlight lists. Spotlight entries commonly omit supply and tags. A coin may also lack a maximum supply. The Actor preserves these missing values as null.

Does convert affect every mode? It is sent to the listing endpoint. Spotlight data comes from a separate endpoint and uses that endpoint's own quote values. If you need a specific quote currency, use a listing mode.

How fresh are the results? The lastUpdated field shows the source quote update time when available. The dataset itself is captured when your run executes. Prices, volume, ranks, and discovery lists may change afterward.

What happens when a request is blocked? The Actor retries blocked or rate-limited responses with increasing delays. An enabled proxy setting gives those attempts fresh sessions. If access remains blocked, the run fails with a clear message instead of returning error objects as coin records.

Can I filter the trending list by category? The category parameter is supported by the listing endpoint. Trending and other spotlight lists are predefined by CoinMarketCap, so category does not filter those modes.

Why did a search return no rows? An unknown category slug can have no matching entries. The Actor writes a warning and returns an empty dataset. Check the slug and try again with a known category.

Public market data can have usage conditions, and the rules that apply depend on your location, purpose, and the source's current terms. Review CoinMarketCap's terms and any relevant rights before reusing or republishing a dataset. This Actor accesses a public JSON endpoint without a login and does not claim any affiliation with CoinMarketCap. You are responsible for how you use the collected records.

The Actor requests at a modest pace and backs off on blocked responses. A site can still change access rules or data formats at any time. If your organization has specific compliance requirements, have its legal or data-governance team review the intended use. This section is general information, not legal advice.

Feedback

If a field stops appearing, a mode returns an unexpected list, or the API changes its response shape, report the run ID, input, and a short description through the Actor's Apify feedback channel. Do not include credentials in a report. A reproducible input helps identify whether the issue concerns a category slug, a temporary block, a quote field, or a mapping change. Suggestions for clearer field names and useful output examples are also welcome.