InternalTransferService
Create Internal Transfer
Create or return one authenticated Trading to Trading internal transfer.
Request
curl --request POST \ \
--url 'https://api.testnet.polyester.com/v1/trading/internal-transfers' \
--header 'Accept: */*' \
--header 'X-API-KEY-ID: YOUR_API_KEY_ID' \
--header 'X-API-TIMESTAMP: YOUR_API_TIMESTAMP' \
--header 'X-API-SIGNATURE: YOUR_API_SIGNATURE' \
--header 'Content-Type: application/json' \
--data '{
"amount": "18.446744073709551617",
"assetId": 100,
"destinationAccountId": "4Rh4iXdT",
"idempotencyKey": "idem_01J5EXAMPLE0000000000000",
"subaccountId": "45LUmqjT"
}'Responses
{
"acceptedAtTsNs": "1735689600000000000",
"amount": "18.446744073709551617",
"assetCode": "USDC",
"assetId": 100,
"destination": {
"rootAccountPublicId": "7563897446546",
"smartAccountAddress": "0x2222222222222222222222222222222222222222",
"subaccountPublicId": "6789012345678"
},
"requestId": "request_01J0EXAMPLE",
"status": "ACCEPTED",
"transferId": "9155001234569",
"uAssetId": "100"
}Transfer amount in canonical 18-decimal unified asset units. For example, 0.5 is encoded as 500000000000000000.
Canonical public unified asset id for the asset being transferred.
Destination root account public id.
Destination smart-account address.
Destination subaccount public id.
Stable client-supplied idempotency key used to collapse safe retries.
Optional source public subaccount ID. When omitted, subaccount-scoped API keys use their bound subaccount; other callers use their authenticated root account.
Acceptance timestamp in nanoseconds since epoch (server time).
1735689600000000000Echoed transfer amount in canonical 18-decimal unified asset units.
18.446744073709551617Resolved asset code for convenience.
USDCEchoed canonical public unified asset id.
100Destination root account public id.
7563897446546Destination smart-account address resolved by the server.
0x2222222222222222222222222222222222222222Destination subaccount public id when the destination targets a subaccount.
6789012345678Stable server-owned request identifier for this intake.
request_01J0EXAMPLEPublic status for the transfer request.
ACCEPTEDStable transfer identifier for the settled internal transfer.
9155001234569Resolved unified asset id used by downstream settlement.
100| Key | HTTP status | Connect code | Error | When |
|---|---|---|---|---|
| unauthenticated | 401 | unauthenticated | Unauthenticated | Authentication required. |
| permission-denied | 403 | permission_denied | Permission Denied | Permission denied. |
| invalid-argument | 400 | invalid_argument | Invalid Argument | Invalid argument. |
| not-found | 404 | not_found | Not Found | Not found. |
| unavailable | 503 | unavailable | Unavailable | Service unavailable. |