CoinGecko API endpoint
Searches CoinGecko for the required query `q` and returns matches in separate sections: `coins`, `categories`, `markets`, `nft_contracts`, `asset_platforms` and `posts`, each up to `limit` rows (default 10, max 50). Every section is always an array, and a search with no matches returns empty arrays.
/coingecko/searchReturns discovery sections from CoinGecko search at /en/search_v2?query={q}. Empty valid search responses return 200 with empty arrays. Unexpected upstream responses return upstream errors.
Query parameters:
q required search query.limit optional rows per section, default 10, max 50.Notable response behavior:
coins, categories, markets, nft_contracts, asset_platforms, and posts are always present as arrays.source_url and fetched_at.| Field | Filled in, of 4 checked | Values in the sample |
|---|---|---|
| id | 4 | |
| title | 4 | “Top Bitcoin Mining Companies, by Bitcoins Owned” and 3 other values |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| q | string | Yes | Search query | bitcoin | |
| limit | integer | No | Rows per section to return, default 10, max 50 | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/coingecko/search?q=bitcoin&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "bitcoin",
"limit": 10,
"source_url": "https://www.coingecko.com/en/search_v2?query=bitcoin",
"fetched_at": "2026-05-24T00:00:00Z",
"coins": [
{
"id": "bitcoin",
"symbol": "BTC",
"name": "Bitcoin",
"url": "https://www.coingecko.com/en/coins/bitcoin",
"market_cap_rank": 1
}
],
"categories": [],
"markets": [],
"nft_contracts": [],
"asset_platforms": [],
"posts": []
}
}Request schema
No body schema
Response schema
#/definitions/coingecko.searchResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | coingecko.SearchResponse | No | ||||
| data.asset_platforms | array | No | Blockchain platforms matching the query. | |||
| data.asset_platforms[].id | string | No | ethereum | CoinGecko blockchain platform id. | ||
| data.asset_platforms[].name | string | No | Ethereum | Blockchain platform name. | ||
| data.asset_platforms[].url | string | No | https://www.coingecko.com/en/chains/ethereum | Link to the chain page on CoinGecko. | ||
| data.categories | array | No | Categories matching the query. | |||
| data.categories[].id | string | No | layer-1 | CoinGecko category id. | ||
| data.categories[].name | string | No | Layer 1 | Name of the category. | ||
| data.categories[].slug | string | No | layer-1 | URL slug of the category. | ||
| data.categories[].url | string | No | https://www.coingecko.com/en/categories/layer-1 | Link to the category page on CoinGecko. | ||
| data.coins | array | No | Coins matching the query. | |||
| data.coins[].id | string | No | bitcoin | CoinGecko coin id. Use it with the coin endpoint. | ||
| data.coins[].image_url | string | No | https://assets.coingecko.com/coins/images/1/standard/bitcoin.png | URL of the coin logo. | ||
| data.coins[].market_cap_rank | integer | No | 1 | Market cap rank of the coin. | ||
| data.coins[].name | string | No | Bitcoin | Name of the coin. | ||
| data.coins[].symbol | string | No | BTC | Ticker symbol of the coin. | ||
| data.coins[].url | string | No | https://www.coingecko.com/en/coins/bitcoin | Link to the coin page on CoinGecko. | ||
| data.fetched_at | string | No | 2026-05-24T00:00:00Z | Time the data was fetched, in UTC (RFC 3339). | ||
| data.limit | integer | No | 10 | Maximum number of results returned per result type. | ||
| data.markets | array | No | Exchanges and other markets matching the query. | |||
| data.markets[].id | string | No | binance | CoinGecko exchange id. | ||
| data.markets[].name | string | No | Binance | Name of the exchange. | ||
| data.markets[].type | string | No | exchange | Kind of market, for example `exchange`. | ||
| data.markets[].url | string | No | https://www.coingecko.com/en/exchanges/binance | Link to the exchange page on CoinGecko. | ||
| data.nft_contracts | array | No | NFT collections matching the query. | |||
| data.nft_contracts[].address | string | No | 0xbd3531da5cf5857e7cfaa92426877b022e612cf8 | Contract address of the collection. | ||
| data.nft_contracts[].asset_platform_id | string | No | ethereum | Id of the blockchain the contract is deployed on, for example `ethereum`. | ||
| data.nft_contracts[].id | string | No | pudgy-penguins | CoinGecko NFT collection id. | ||
| data.nft_contracts[].name | string | No | Pudgy Penguins | Name of the NFT collection. | ||
| data.nft_contracts[].symbol | string | No | PPG | Collection ticker symbol. | ||
| data.nft_contracts[].url | string | No | https://www.coingecko.com/en/nft/pudgy-penguins | Link to the collection page on CoinGecko. | ||
| data.posts | array | No | CoinGecko articles matching the query. | |||
| data.posts[].description | string | No | Latest Bitcoin market context. | Short description of the article. | ||
| data.posts[].id | string | No | post-123 | CoinGecko article id. | ||
| data.posts[].title | string | No | Bitcoin market update | Title of the article. | ||
| data.posts[].url | string | No | https://www.coingecko.com/learn/bitcoin | Link to the article. | ||
| data.query | string | No | bitcoin | Search text that was run. | ||
| data.source_url | string | No | https://www.coingecko.com/en/search_v2?query=bitcoin | URL the data was read from. | ||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 500 | Internal Server Error | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/coingecko/search?q=bitcoin&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"