The Account List API endpoint (api/v2/account/accounts/list) has been updated to accept a new format for a POST body, and to support pagination of results. Please review the API documentation for the endpoint (https://www.orioneclipse.com/swagger/index.html) for the list of column names.
The suggested method of creating the POST body is to set the desired columns, filters, and sorting in the Eclipse application and observing the request as it is sent to the API.
Accounts for a single portfolio example: api/v2/account/accounts/list?portfolioId=123 will return only the accounts for portfolio 123.
Paging example: api/v2/account/accounts/list?limit=1000&offset=2500 will return 1,000 account records, skipping the first 2,500 records. This is useful if a subset of accounts is desired, instead of all accounts at once.
POST body format:
{
"matchAll": boolean,
"columns": [{
"colId": string,
"sort": string,
"sortIndex": number
"filters": [{
"comparator": string,
"dataType": string,
"values": [string]
}
]
}
]
}
Example: Get accounts with an Account Types of “IND”. Sort the results by Account Number, then by Account ID.
{
"matchAll": true,
"columns": [{
"colId": "status"
}, {
"colId": "accountId",
"sort": "asc",
"sortIndex": 1
}, {
"colId": "accountName"
}, {
"colId": "accountNumber",
"sort": "asc",
"sortIndex": 0
}, {
"colId": "custodian"
}, {
"colId": "accountTypeName",
"filters": [{
"comparator": "EQUALS",
"dataType": "String",
"values": [
"IND"
]
}
]
}
]
}
Example: Get accounts with a Managed Value >= 10,000 or Managed Value < 1,000.
{
"matchAll": false,
"columns": [{
"colId": "accountId",
"filters": []
}, {
"colId": "managedValue",
"sort": "desc",
"sortIndex": 0,
"filters": [{
"comparator": "GREATER_THAN_OR_EQUAL",
"dataType": "Number",
"values": [
10000000
]
}, {
"comparator": "LESS_THAN",
"dataType": "Number",
"values": [
-80000
]
}
]
}
]
}
Example: Get accounts with Account Numbers containing “abc”, “def”, or “ghi”
{
"matchAll": true,
"columns": [{
"colId": "accountId",
"filters": []
}, {
"colId": "accountNumber",
"sort": "asc",
"sortIndex": 0,
"filters": [{
"comparator": "CONTAINS",
"dataType": "String",
"values": [
"abc",
"def",
"ghi"
]
}
]
}
]
}
Example: Get accounts created today.
{
"matchAll": false,
"columns": [{
"colId": "accountId",
"filters": []
}, {
"colId": "createdDate",
"filters": [{
"comparator": "TODAY",
"dataType": "Date",
"values": [
"{blank}"
]
}
]
}
]
}
The below fields are marked as required, so these will always be returned:
accountId
accountModelId
accountName
accountNumber
astroEnabled
astroTemplateId
currentCash
id
isDisabled
model
needAnalyticsStatus
orionConnectExternalId
orionConnectFirmId
pendingTrades
portfolio
portfolioGroupId
portfolioId
portfolioModelId
sleeveType
sma
status
statusReason