Use API credentials to view and manage instruments.
- OpenAPI Specs
- Transfer Position
- Transfer holdings between subaccounts
Transfer Position External API (1.0.0)
Bulk Transfer Request payload
If permitted, allows the caller to initiate transfer batches on behalf of another account holder, identifying that account holder by their system-assigned srcAcctId.
- https://optimalapi-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transfer
- https://optimalapi-uat-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transfer
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://optimalapi-ext.apx.com/transfer/v1/api/ledger/4b7375e9-79b0-4b8b-a89e-a21607f0239f/transfer \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"onBehalfOfSrcAcctId": "string",
"requests": [
{
"transfereeSrcAcctId": "b5d8d6b3-bcaf-11ef-ae69-b61606fd520c",
"holdingCriteria": [
{
"holdingIdentifier": "476099",
"quantity": 3
}
],
"correlationId": "string",
"requestConfirmation": true,
"toSubaccountIdentifier": "string",
"totalPrice": 0,
"currencyCode": "string",
"notes": "string"
}
]
}'{ "responses": [ { … } ] }
Populated ActionTransferBatches payload
If permitted, allows the caller to perform actions on open transfer batches on behalf of another account holder, identifying that account holder by their system-assigned srcAcctId.
Specifies code of action to take; same action for all transfer batches included in "items".
- https://optimalapi-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transferBatch/open/action
- https://optimalapi-uat-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transferBatch/open/action
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://optimalapi-ext.apx.com/transfer/v1/api/ledger/4b7375e9-79b0-4b8b-a89e-a21607f0239f/transferBatch/open/action \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"onBehalfOfSrcAcctId": "string",
"action": "WITHDRAW",
"items": [
{
"batchIdentifier": "7644439A-A56B-45E5-AFE6-94E149CF014E"
}
]
}'Populated TransferBatchRetrieveByIdentifierRequest
If permitted, allows the caller to initiate transfer batches on behalf of another account holder, identifying that account holder by their system-assigned srcAcctId.
- https://optimalapi-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transferBatch/byIdentifier
- https://optimalapi-uat-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transferBatch/byIdentifier
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://optimalapi-ext.apx.com/transfer/v1/api/ledger/4b7375e9-79b0-4b8b-a89e-a21607f0239f/transferBatch/byIdentifier \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"onBehalfOfSrcAcctId": "string",
"transferBatchIdentifiers": [
"string"
]
}'{ "transferBatches": [ { … } ] }
Bulk Subaccount Transfer request
If permitted, allows the caller to initiate subaccount transfers on behalf of another account holder, identifying that account holder by their system-assigned srcAcctId.
- https://optimalapi-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transfer/subaccount
- https://optimalapi-uat-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transfer/subaccount
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://optimalapi-ext.apx.com/transfer/v1/api/ledger/4b7375e9-79b0-4b8b-a89e-a21607f0239f/transfer/subaccount \
-H 'Authorization: Bearer <YOUR_JWT_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"onBehalfOfSrcAcctId": "string",
"requests": [
{
"subaccountIdentifier": "string",
"holdingCriteria": [
{
"holdingIdentifier": "476099",
"quantity": 3
}
],
"correlationId": "string"
}
]
}'{ "responses": [ { … } ] }
Specify whether you want only "in"bound or "out"bound pending transfers. If omitted, both types will be returned.
Include transfer related holdings details
If permitted, allows the caller to retrieve open transfer batches on behalf of another account holder, identifying that account holder by their system-assigned srcAcctId.
- https://optimalapi-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transferBatch/open
- https://optimalapi-uat-ext.apx.com/transfer/v1/api/ledger/{ledgerIdentifier}/transferBatch/open
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://optimalapi-ext.apx.com/transfer/v1/api/ledger/4b7375e9-79b0-4b8b-a89e-a21607f0239f/transferBatch/open?direction=direction%3D%22in%22&includeHoldings=%3FincludeHoldings%3Dtrue&onBehalfOfSrcAcctId=string&%24skip=0&%24top=0&%24filter=string&%24apply=string&%24orderby=string&%24count=true' \
-H 'Authorization: Bearer <YOUR_JWT_HERE>'{ "inbound": [ { … } ], "outbound": [ { … } ] }
subaccount-v1
View or create subaccounts. Use subaccounts to organize your account’s instruments. All accounts have a "Default" subaccount, where all new issuances and incoming transfers will be deposited. Subaccounts may also be used to delegate instrument management to an authorized third party.