> For the complete documentation index, see [llms.txt](https://www.pionex.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.pionex.com/docs/api-docs/futures-api/transfer.md).

# Transfer

Fund transfers between accounts (private)

## Get single transfer record

> Query a single transfer record by client ID. Requires Read permission. Weight: 5.

```json
{"openapi":"3.0.3","info":{"title":"Pionex Futures Open API","version":"1.0.0"},"tags":[{"name":"Transfer","description":"Fund transfers between accounts (private)"}],"servers":[{"url":"https://api.pionex.com","description":"Production"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","in":"header","name":"PIONEX-KEY","description":"API Key authentication. Requires two headers:\n- `PIONEX-KEY`: Your API Key\n- `PIONEX-SIGNATURE`: HMAC SHA256 hex signature\n\nAnd a `timestamp` query parameter (milliseconds).\n"}},"parameters":{"Timestamp":{"name":"timestamp","in":"query","required":true,"description":"Current timestamp in milliseconds (valid range +/- 20 seconds)","schema":{"type":"integer","format":"int64"}}},"schemas":{"BaseResponse":{"type":"object","properties":{"result":{"type":"boolean","description":"Request success indicator"},"timestamp":{"type":"integer","format":"int64","description":"Response timestamp in milliseconds"}}},"TransferRecord":{"type":"object","properties":{"transferId":{"type":"string","description":"Transfer ID"},"fromAccount":{"type":"string","description":"Source account","enum":["MAIN","TRADE"]},"toAccount":{"type":"string","description":"Destination account","enum":["MAIN","TRADE"]},"currency":{"type":"string","description":"Currency"},"amount":{"type":"string","description":"Transfer amount"},"clientId":{"type":"string","description":"Client request ID"},"status":{"type":"string","description":"Transfer status","enum":["COMPLETED","PROCESSING","FAILED"]},"reason":{"type":"string","description":"Transfer reason","enum":["USER_MANUAL","OPENAPI"]},"comment":{"type":"string","description":"Remark, limited to 32 characters"},"timestamp":{"type":"integer","format":"int64","description":"Operation time in milliseconds"}}},"ErrorResponse":{"type":"object","properties":{"result":{"type":"boolean"},"code":{"type":"string","description":"Error code"},"message":{"type":"string","description":"Human-readable error message"},"timestamp":{"type":"integer","format":"int64"}}}},"responses":{"BadRequest":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Authentication failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/api/v1/assets/transfer":{"get":{"tags":["Transfer"],"summary":"Get single transfer record","description":"Query a single transfer record by client ID. Requires Read permission. Weight: 5.","operationId":"getTransfer","parameters":[{"$ref":"#/components/parameters/Timestamp"},{"name":"clientId","in":"query","description":"Client request ID","schema":{"type":"string"}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/BaseResponse"},{"type":"object","properties":{"data":{"$ref":"#/components/schemas/TransferRecord"}}}]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```

## Create transfer

> Transfer funds between main account and trade account. Requires Transfer permission. Weight: 5.

```json
{"openapi":"3.0.3","info":{"title":"Pionex Futures Open API","version":"1.0.0"},"tags":[{"name":"Transfer","description":"Fund transfers between accounts (private)"}],"servers":[{"url":"https://api.pionex.com","description":"Production"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","in":"header","name":"PIONEX-KEY","description":"API Key authentication. Requires two headers:\n- `PIONEX-KEY`: Your API Key\n- `PIONEX-SIGNATURE`: HMAC SHA256 hex signature\n\nAnd a `timestamp` query parameter (milliseconds).\n"}},"parameters":{"Timestamp":{"name":"timestamp","in":"query","required":true,"description":"Current timestamp in milliseconds (valid range +/- 20 seconds)","schema":{"type":"integer","format":"int64"}}},"schemas":{"BaseResponse":{"type":"object","properties":{"result":{"type":"boolean","description":"Request success indicator"},"timestamp":{"type":"integer","format":"int64","description":"Response timestamp in milliseconds"}}},"ErrorResponse":{"type":"object","properties":{"result":{"type":"boolean"},"code":{"type":"string","description":"Error code"},"message":{"type":"string","description":"Human-readable error message"},"timestamp":{"type":"integer","format":"int64"}}}},"responses":{"BadRequest":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Authentication failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/api/v1/assets/transfer":{"post":{"tags":["Transfer"],"summary":"Create transfer","description":"Transfer funds between main account and trade account. Requires Transfer permission. Weight: 5.","operationId":"createTransfer","parameters":[{"$ref":"#/components/parameters/Timestamp"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["fromAccount","toAccount","currency","amount"],"properties":{"fromAccount":{"type":"string","description":"Source account","enum":["MAIN","TRADE"]},"toAccount":{"type":"string","description":"Destination account","enum":["MAIN","TRADE"]},"currency":{"type":"string","description":"Currency to transfer"},"amount":{"type":"string","description":"Transfer amount"},"clientId":{"type":"string","description":"Client request ID, must be unique"},"comment":{"type":"string","description":"Remark, limited to 32 characters"}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/BaseResponse"},{"type":"object","properties":{"data":{"type":"object","properties":{"transferId":{"type":"string","description":"Transfer ID"},"status":{"type":"string","description":"Transfer status","enum":["COMPLETED","PROCESSING","FAILED"]}}}}}]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```

## Get transfer records

> Query transfer record list sorted by time in descending order. Requires Read permission. Weight: 5.

```json
{"openapi":"3.0.3","info":{"title":"Pionex Futures Open API","version":"1.0.0"},"tags":[{"name":"Transfer","description":"Fund transfers between accounts (private)"}],"servers":[{"url":"https://api.pionex.com","description":"Production"}],"security":[{"apiKey":[]}],"components":{"securitySchemes":{"apiKey":{"type":"apiKey","in":"header","name":"PIONEX-KEY","description":"API Key authentication. Requires two headers:\n- `PIONEX-KEY`: Your API Key\n- `PIONEX-SIGNATURE`: HMAC SHA256 hex signature\n\nAnd a `timestamp` query parameter (milliseconds).\n"}},"parameters":{"Timestamp":{"name":"timestamp","in":"query","required":true,"description":"Current timestamp in milliseconds (valid range +/- 20 seconds)","schema":{"type":"integer","format":"int64"}}},"schemas":{"BaseResponse":{"type":"object","properties":{"result":{"type":"boolean","description":"Request success indicator"},"timestamp":{"type":"integer","format":"int64","description":"Response timestamp in milliseconds"}}},"TransferRecord":{"type":"object","properties":{"transferId":{"type":"string","description":"Transfer ID"},"fromAccount":{"type":"string","description":"Source account","enum":["MAIN","TRADE"]},"toAccount":{"type":"string","description":"Destination account","enum":["MAIN","TRADE"]},"currency":{"type":"string","description":"Currency"},"amount":{"type":"string","description":"Transfer amount"},"clientId":{"type":"string","description":"Client request ID"},"status":{"type":"string","description":"Transfer status","enum":["COMPLETED","PROCESSING","FAILED"]},"reason":{"type":"string","description":"Transfer reason","enum":["USER_MANUAL","OPENAPI"]},"comment":{"type":"string","description":"Remark, limited to 32 characters"},"timestamp":{"type":"integer","format":"int64","description":"Operation time in milliseconds"}}},"ErrorResponse":{"type":"object","properties":{"result":{"type":"boolean"},"code":{"type":"string","description":"Error code"},"message":{"type":"string","description":"Human-readable error message"},"timestamp":{"type":"integer","format":"int64"}}}},"responses":{"BadRequest":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"Unauthorized":{"description":"Authentication failed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}}},"paths":{"/api/v1/assets/transfers":{"get":{"tags":["Transfer"],"summary":"Get transfer records","description":"Query transfer record list sorted by time in descending order. Requires Read permission. Weight: 5.","operationId":"getTransfers","parameters":[{"$ref":"#/components/parameters/Timestamp"},{"name":"status","in":"query","description":"Filter by transfer status. Defaults to ALL.","schema":{"type":"string","enum":["ALL","COMPLETED","FAILED","PROCESSING"],"default":"ALL"}},{"name":"endTime","in":"query","description":"End time in milliseconds","schema":{"type":"integer","format":"int64"}},{"name":"limit","in":"query","description":"Number of results to return. Default 20, range 1-100.","schema":{"type":"integer","default":20,"minimum":1,"maximum":100}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/BaseResponse"},{"type":"object","properties":{"data":{"type":"object","properties":{"records":{"type":"array","description":"Transfer records sorted by time in descending order","items":{"$ref":"#/components/schemas/TransferRecord"}}}}}}]}}}},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"}}}}}}
```
