Skip to main content
POST
/
copy-trades
Create Copy Trade
curl --request POST \
  --url https://api.copin.io/copy-trades \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "title": "<string>",
  "volume": 123,
  "account": "<string>",
  "leverage": 123,
  "protocol": "<string>",
  "exchange": "<string>",
  "copyWalletId": "<string>",
  "type": "<string>",
  "excludingTokenAddresses": [
    {}
  ],
  "tokenAddresses": [
    {}
  ],
  "reverseCopy": true,
  "enableStopLoss": true,
  "stopLossType": "<string>",
  "stopLossAmount": 123,
  "volumeProtection": true,
  "lookBackOrders": 123,
  "enableTakeProfit": true,
  "takeProfitType": "<string>",
  "takeProfitAmount": 123,
  "maxVolMultiplier": 123,
  "skipLowLeverage": true,
  "lowLeverage": 123,
  "skipLowCollateral": true,
  "lowCollateral": 123,
  "skipLowSize": true,
  "lowSize": 123,
  "copyAll": true,
  "hasExclude": true,
  "multipleCopy": true,
  "side": "<string>"
}
'
{
  "id": "<string>",
  "title": "<string>",
  "userId": "<string>",
  "account": "<string>",
  "accounts": [
    {}
  ],
  "copyWalletId": "<string>",
  "tokenAddresses": [
    {}
  ],
  "stopLossType": "<string>",
  "enableStopLoss": true,
  "stopLossAmount": 123,
  "takeProfitType": "<string>",
  "enableTakeProfit": true,
  "takeProfitAmount": 123,
  "maxVolMultiplier": 123,
  "leverage": 123,
  "volume": 123,
  "volumeProtection": true,
  "lookBackOrders": 123,
  "reverseCopy": true,
  "skipLowLeverage": true,
  "lowLeverage": 123,
  "skipLowCollateral": true,
  "lowCollateral": 123,
  "skipLowSize": true,
  "lowSize": 123,
  "copyAll": true,
  "status": "<string>",
  "multipleCopy": true,
  "exchange": "<string>",
  "side": "<string>",
  "type": "<string>",
  "protocol": "<string>",
  "excludingTokenAddresses": [
    {}
  ],
  "createdAt": "<string>"
}

Authentication

This endpoint requires authentication using a JWT token in the Authorization header.
Authorization
string
required
JWT token in the format: Authorization {token}

Request Body

title
string
required
Display name for the copy trade configuration
volume
number
required
Volume amount to use for copied trades
account
string
required
Address of the account to copy trades from
leverage
number
required
Leverage setting for copied trades
protocol
string
required
Protocol to use for copy trading (e.g., “KILOEX_OPBNB”)
exchange
string
required
Exchange platform to use (e.g., “HYPERLIQUID”)
copyWalletId
string
required
ID of the wallet to use for copy trading
type
string
required
Type of copy trading (e.g., “COPY_TRADER”)
excludingTokenAddresses
array
required
List of token addresses to exclude from copying
tokenAddresses
array
required
List of specific token addresses to copy trades for
reverseCopy
boolean
default:"false"
Whether to copy trades in reverse (opposite direction)
enableStopLoss
boolean
default:"false"
Enable automatic stop loss for copied positions
stopLossType
string
default:"USD"
Type of stop loss calculation (e.g., “PERCENT”, “USD”)
stopLossAmount
number
Value for stop loss (percentage or fixed amount)
volumeProtection
boolean
default:"true"
Enable volume protection to prevent over-sized positions
lookBackOrders
number
Number of past orders to analyze when starting copy trade
enableTakeProfit
boolean
default:"false"
Enable automatic take profit for copied positions
takeProfitType
string
default:"USD"
Type of take profit calculation (e.g., “PERCENT”, “USD”)
takeProfitAmount
number
Value for take profit (percentage or fixed amount)
maxVolMultiplier
number
Maximum volume multiplier for copied trades
skipLowLeverage
boolean
default:"false"
Skip copying trades with leverage below a threshold
lowLeverage
number
Minimum leverage threshold for copied trades
skipLowCollateral
boolean
default:"false"
Skip copying trades with collateral below a threshold
lowCollateral
number
Minimum collateral threshold for copied trades
skipLowSize
boolean
default:"false"
Skip copying trades with size below a threshold
lowSize
number
Minimum size threshold for copied trades
copyAll
boolean
default:"true"
Whether to copy all trades from the account
hasExclude
boolean
default:"false"
Whether exclusion rules are applied
multipleCopy
boolean
default:"false"
Whether to enable multiple copying from various accounts
side
string
default:"BOTH"
Which trade sides to copy (e.g., “BOTH”, “LONG”, “SHORT”)

Request Example

curl --request POST \
--url "https://api.copin.io/copy-trades" \
--header 'Content-Type: application/json' \
--header 'Authorization: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6IjB4MTUzNTQ4NGMxRWVjMUQyMDNmRTFBNTNFQTExYTYyMWE4ODRBRTA2NyIsInRpbWUiOjE3NDQ2MjYxNjIzODksImFjY2VzcyI6IlVmTkNiTWhMVVMxNzQ0NjI2MTYyMzkwIiwiaWF0IjoxNzQ0NjI2MTYyLCJleHAiOjE3NDUyMzA5NjJ9.LpvhBdxyfehzom-v5tKumAqCptSMkVk7HVKKVtjSpk8' \
--data '{
  "title": "Fish",
  "volume": 10,
  "tokenAddresses": [],
  "excludingTokenAddresses": [],
  "leverage": 2,
  "reverseCopy": false,
  "enableStopLoss": true,
  "stopLossType": "PERCENT",
  "stopLossAmount": 50,
  "volumeProtection": true,
  "lookBackOrders": 10,
  "enableTakeProfit": true,
  "takeProfitType": "PERCENT",
  "takeProfitAmount": 50,
  "maxVolMultiplier": 1,
  "skipLowLeverage": true,
  "lowLeverage": 5,
  "skipLowCollateral": true,
  "lowCollateral": 300,
  "skipLowSize": true,
  "lowSize": 20000,
  "protocol": "KILOEX_OPBNB",
  "exchange": "HYPERLIQUID",
  "copyWalletId": "6780e1a8cf5b4c9659f7a4cb",
  "copyAll": true,
  "hasExclude": false,
  "multipleCopy": false,
  "account": "0xa9Fec8d530AB6d96cB67E1E8fD53bA14E9A2AD79",
  "side": "BOTH",
  "type": "COPY_TRADER"
}'

Response

The API returns the created copy trade configuration object with all properties.
id
string
Unique identifier for the newly created copy trade
title
string
Display name of the copy trade configuration
userId
string
Identifier of the user who created this copy trade
account
string
The account address being copied
accounts
array
List of additional accounts for multiple copying
copyWalletId
string
Identifier of the wallet used for copying
tokenAddresses
array
List of specific token addresses to copy trades for
stopLossType
string
Type of stop loss calculation
enableStopLoss
boolean
Whether stop loss is enabled
stopLossAmount
number
Value for stop loss
takeProfitType
string
Type of take profit calculation
enableTakeProfit
boolean
Whether take profit is enabled
takeProfitAmount
number
Value for take profit
maxVolMultiplier
number
Maximum volume multiplier for copied trades
leverage
number
Leverage setting for copied trades
volume
number
Volume amount for copied trades
volumeProtection
boolean
Whether volume protection is enabled
lookBackOrders
number
Number of orders to look back when starting copy
reverseCopy
boolean
Whether to copy trades in reverse
skipLowLeverage
boolean
Whether to skip trades with low leverage
lowLeverage
number
Threshold for low leverage
skipLowCollateral
boolean
Whether to skip trades with low collateral
lowCollateral
number
Threshold for low collateral
skipLowSize
boolean
Whether to skip trades with low size
lowSize
number
Threshold for low size
copyAll
boolean
Whether to copy all trades from the account
status
string
Current status of the copy trade (RUNNING/STOPPED)
multipleCopy
boolean
Whether multiple copying is enabled
exchange
string
Exchange platform being used
side
string
Which trade sides to copy
type
string
Type of copy trading
protocol
string
Protocol being used for trading
excludingTokenAddresses
array
List of token addresses to exclude from copying
createdAt
string
Timestamp when the copy trade was created

Response Example

{
  "id": "67fe0ee36c6729db9c4b75f1",
  "title": "Fish",
  "userId": "654849d04857e1f744646cdd",
  "account": "0xa9Fec8d530AB6d96cB67E1E8fD53bA14E9A2AD79",
  "accounts": [],
  "copyWalletId": "6780e1a8cf5b4c9659f7a4cb",
  "tokenAddresses": [],
  "stopLossType": "PERCENT",
  "enableStopLoss": true,
  "stopLossAmount": 50,
  "takeProfitType": "PERCENT",
  "enableTakeProfit": true,
  "takeProfitAmount": 50,
  "maxVolMultiplier": 1,
  "leverage": 2,
  "volume": 10,
  "volumeProtection": true,
  "lookBackOrders": 10,
  "reverseCopy": false,
  "skipLowLeverage": true,
  "lowLeverage": 5,
  "skipLowCollateral": true,
  "lowCollateral": 300,
  "skipLowSize": true,
  "lowSize": 20000,
  "copyAll": true,
  "status": "RUNNING",
  "multipleCopy": false,
  "exchange": "HYPERLIQUID",
  "side": "BOTH",
  "type": "COPY_TRADER",
  "protocol": "KILOEX_OPBNB",
  "excludingTokenAddresses": [],
  "createdAt": "2025-04-15T07:46:43.940Z"
}