GET
https://api.cryptohopper.com/v1/market/copybots
Returns the copy bots in the marketplace, sorted by profit percentage (highest first). Each item includes copy trading statistics for the last 30 days.
The list is under the key copybots, with the number of items in result. All values of the items are strings or null.
Example request
curl "https://api.cryptohopper.com/v1/market/copybots" \
-H "access-token: YOUR_ACCESS_TOKEN"
const response = await fetch('https://api.cryptohopper.com/v1/market/copybots', {
method: 'GET',
headers: {
"access-token": "YOUR_ACCESS_TOKEN"
}
});
const data = await response.json();
import requests
response = requests.get(
"https://api.cryptohopper.com/v1/market/copybots",
headers={
"access-token": "YOUR_ACCESS_TOKEN"
},
)
data = response.json()
$ch = curl_init('https://api.cryptohopper.com/v1/market/copybots');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'access-token: YOUR_ACCESS_TOKEN',
],
]);
$data = json_decode(curl_exec($ch), true);
Parameters
Headers
| Name | Type | Required | Description |
|---|---|---|---|
access-token |
string | Required | The OAuth access token of the user. |
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
start |
string | Optional | Offset for paging. Default 0. |
exchange |
string | Optional | Only return items for this exchange, for example binance. Only letters, digits and underscores are accepted; any other value is ignored. |
limit |
string | Optional | Maximum number of items to return, 1 to 500. Default 500; 0 or a value above 500 also returns 500. |
available_in_app |
string | Optional | Meant to limit the list to items sold in the mobile app. In the current code a value sent here is compared to an integer and never matches, so it does not filter the list. |
trial |
string | Optional | Set to 1 to only return copy bots that offer a free trial. |
quote_currency |
string | Optional | Only return items with this quote currency, for example USDT. Default all. |
Response
{
"data": {
"copybots": [
{
"exchange": "binance",
"quote_currency": "USDT",
"risk_level": "medium",
"allowed_coins": [
"BTC",
"ETH"
],
"free_trial": "1",
"description": "Trend following copy bot on large caps.",
"stats": {
"average_profit": "0.85",
"total_trades": "124",
"total_buys": "62",
"total_sells": "62",
"trades_win": "50",
"trades_loss": "12",
"highest_profit": "6.42",
"start_date": "2026-08-26",
"end_date": "2026-09-24",
"total_copiers": "37",
"chart_assets": {
"USDT": [
[
"1758672000000",
"1250.44"
]
],
"USD": [
[
"1758672000000",
"1250.44"
]
]
},
"drawdown": {
"in_value": "0",
"percentage": "0"
},
"trade_currencies": [
{
"cur": "BTC",
"count": "40",
"perc": "64.516129032258"
}
],
"trades_win_perc": "80.65",
"trades_loss_perc": "19.35",
"win_loss_ratio": "4.17",
"chart": [
[
"1758758399000",
"0.85"
]
],
"trade_currencies_stats": [
{
"cur": "BTC",
"count": "40",
"highest_profit": "6.42",
"lowest_profit": "-2.10",
"average_profit": "1.12",
"perc": "64.516129032258"
}
]
},
"profit": "12.34",
"id": "10900",
"item_id": "10900",
"type": "copybot",
"name": "Large Cap Trend",
"logo": "https://cdn.cryptohopper.com/images/marketplace/10900.png",
"feature_image": "https://cdn.cryptohopper.com/images/marketplace/10900_feature.png",
"top_item": "0",
"link": "https://www.cryptohopper.com/marketplace/item?item_id=10900",
"rating": "4.20000",
"total_votes": "9",
"sales": "37",
"price_id": "4",
"price": "29.00",
"created": "2025-09-10 12:00:00",
"price_currency": "USD",
"max_downloads": "0",
"seller_id": "321",
"seller_name": "Example Trading",
"seller_logo": "https://cdn.cryptohopper.com/images/marketplace/sellers/321.png",
"available_in_app": "1"
}
],
"result": 1
}
}