Getting Started
Copy Trades
Position Statistics
Wallets
Copy Positions
Retrieve copy positions with pagination
curl --request POST \
--url https://api.copin.io/copy-positions/page \
--header 'Authorization: <authorization>'
{
"data": [
{
"id": "<string>",
"userId": "<string>",
"copyTradeId": "<string>",
"copyAccount": "<string>",
"positionIndex": 123,
"copyPositionIndex": 123,
"indexToken": "<string>",
"identifyKey": "<string>",
"pair": "<string>",
"key": "<string>",
"sourceOrderTxHashes": [
{}
],
"sourceSizeDelta": "<string>",
"sizeDelta": "<string>",
"totalSizeDelta": 123,
"sourceInitialVol": "<string>",
"initialVol": 123,
"isLong": true,
"entryPrice": 123,
"leverage": 123,
"stopLossPrice": 123,
"stopLossAmount": 123,
"takeProfitPrice": 123,
"takeProfitAmount": 123,
"pnl": 123,
"realisedPnl": 123,
"funding": 123,
"fee": 123,
"closeType": "<string>",
"status": "<string>",
"protocol": "<string>",
"exchange": "<string>",
"isReverse": true,
"lastOrderAt": "<string>",
"createdAt": "<string>",
"copyTradeTitle": "<string>"
}
],
"meta": {
"limit": 123,
"offset": 123,
"total": 123,
"totalPages": 123
}
}
Authentication
This endpoint requires authentication using a JWT token in the Authorization header.
JWT token in the format: Authorization {token}
Request
Number of records to return per page
Number of records to skip for pagination
Current status of the position (“OPEN/CLOSE”)
Position side
Request Example
curl --request POST \
--url "https://api.copin.io/copy-positions/page?limit=20&offset=0" \
--header 'Content-Type: application/json' \
--header 'Authorization: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VybmFtZSI6IjB4MTUzNTQ4NGMxRWVjMUQyMDNmRTFBNTNFQTExYTYyMWE4ODRBRTA2NyIsInRpbWUiOjE3NDQ2MjYxNjIzODksImFjY2VzcyI6IlVmTkNiTWhMVVMxNzQ0NjI2MTYyMzkwIiwiaWF0IjoxNzQ0NjI2MTYyLCJleHAiOjE3NDUyMzA5NjJ9.LpvhBdxyfehzom-v5tKumAqCptSMkVk7HVKKVtjSpk8'
Response
The response includes a data array containing position objects and a meta object with pagination information.
Array of copy position objects
Unique identifier for the copy position
Identifier of the user who owns this position
Identifier of the copy trade configuration that created this position
The wallet address being copied from
Index of the position in the original account
Index of the position in the copy account
Token identifier for the indexed token
Unique key to identify the position
Trading pair (e.g., “ETH-USDT”)
Unique key for the position
Array of transaction hashes for the source orders
Size delta in the source position
Size delta in the copy position
Total size delta for the position
Initial volume in the source position
Initial volume in the copy position
Whether the position is long (true) or short (false)
Entry price for the position
Leverage used for the position
Price at which stop loss is triggered
Amount for stop loss
Price at which take profit is triggered
Amount for take profit
Total profit and loss
Realised profit and loss
Funding payments for the position
Fees paid for the position
How the position was closed (COPY_TRADE/MANUAL/FORCE_CLOSE/TAKE_PROFIT/STOP_LOSS/LIQUIDATE/OVERWRITE)
Current status of the position (OPEN/CLOSE)
Protocol used for the position
Exchange where the position was opened
Whether this is a reverse copy position
Timestamp of the last order for this position
Timestamp when the position was created
Title of the copy trade configuration
Response Example
{
"data": [
{
"id": "67fa2a77839d60c22debe83e",
"userId": "654849d04857e1f744646cdd",
"copyTradeId": "67cd2e99b302b7331a29173a",
"copyAccount": "0x196ae16A9387a3Dc5De811467A2E37D7FeBeD304",
"positionIndex": 0,
"copyPositionIndex": 0,
"indexToken": "AVANTIS_BASE-0",
"identifyKey": "67b1a1df64f2f57162f1cab5",
"pair": "ETH-USDT",
"key": "4fdb8422d34b7bf718687652dd4b4e54",
"sourceOrderTxHashes": [
"0x317efa7839f5ab4fe6c6b81e5feb21d1c0909a0e6d0c833c2a9ebbe75e0327ae",
"0x82f26df0738da549e0491c298a4619da0b0b71797ce01a44ead626b2ea0ae240"
],
"sourceSizeDelta": "0",
"sizeDelta": "0",
"totalSizeDelta": 0.01,
"sourceInitialVol": "19.760",
"initialVol": 20,
"isLong": true,
"entryPrice": 1592.36,
"leverage": 10,
"stopLossPrice": 0,
"stopLossAmount": 0,
"takeProfitPrice": 0,
"takeProfitAmount": 0,
"pnl": -0.02711068,
"realisedPnl": -0.0096,
"funding": 0,
"fee": -0.01751068,
"closeType": "COPY_TRADE",
"status": "CLOSE",
"protocol": "AVANTIS_BASE",
"exchange": "BYBIT",
"isReverse": false,
"lastOrderAt": "2025-04-12T08:58:49.657Z",
"createdAt": "2025-04-12T08:55:19.786Z",
"copyTradeTitle": "Wink tongue"
}
],
"meta": {
"limit": 20,
"offset": 0,
"total": 1,
"totalPages": 1
}
}
curl --request POST \
--url https://api.copin.io/copy-positions/page \
--header 'Authorization: <authorization>'
{
"data": [
{
"id": "<string>",
"userId": "<string>",
"copyTradeId": "<string>",
"copyAccount": "<string>",
"positionIndex": 123,
"copyPositionIndex": 123,
"indexToken": "<string>",
"identifyKey": "<string>",
"pair": "<string>",
"key": "<string>",
"sourceOrderTxHashes": [
{}
],
"sourceSizeDelta": "<string>",
"sizeDelta": "<string>",
"totalSizeDelta": 123,
"sourceInitialVol": "<string>",
"initialVol": 123,
"isLong": true,
"entryPrice": 123,
"leverage": 123,
"stopLossPrice": 123,
"stopLossAmount": 123,
"takeProfitPrice": 123,
"takeProfitAmount": 123,
"pnl": 123,
"realisedPnl": 123,
"funding": 123,
"fee": 123,
"closeType": "<string>",
"status": "<string>",
"protocol": "<string>",
"exchange": "<string>",
"isReverse": true,
"lastOrderAt": "<string>",
"createdAt": "<string>",
"copyTradeTitle": "<string>"
}
],
"meta": {
"limit": 123,
"offset": 123,
"total": 123,
"totalPages": 123
}
}