Loading

DFS Service Layer API (latest)

Download OpenAPI specification:Download

Accounts

Retrieve a specific account

Retrieve a specific account (active or inactive).

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that is part of the Account's Contact Group

accountId
required
integer <int32>

The ID of the account to be retrieved.

query Parameters
language
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/contacts/{contactId}/accounts/{accountId}
https://example-host/v1.1/contacts/{contactId}/accounts/{accountId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 7,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "AccountNumber": "00250007871200007549",
  • "Iban": "00250007871200007549",
  • "InternalId": "871200007549",
  • "Name": "00250007871200007549",
  • "Balance": 1854.09,
  • "BalanceLastUpdateDate": "2019-12-01T00:00:00",
  • "BranchId": 4,
  • "Currency":
    {
    },
  • "ContactGroupId": 5,
  • "Type":
    {
    },
  • "IsActive": true,
  • "OpeningDate": "2023-01-22T09:44:04.102448+00:00",
  • "ProductId": 3,
  • "Status":
    {
    },
  • "ClosingDate": "2024-07-22T09:44:04.1024518+00:00",
  • "IntegrationStatus":
    {
    },
  • "Attributes": "{\"Description\": \"This the Account the Client always wanted to have!\"}",
  • "SubAccounts": [ ],
  • "AvailableBalance": 3000,
  • "AvailableBalanceLastUpdateDate": "2022-08-18T00:00:00"
}

Retrieve all accounts of a contact

Retrieve all accounts of a contact (active or inactive).

Authorizations:
path Parameters
contactId
required
integer <int32>

The contactId of the contact

query Parameters
language
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/contacts/{contactId}/accounts
https://example-host/v1.1/contacts/{contactId}/accounts

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get account balance

Gets the account balance history (in the account currency).

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that belongs to the Account's contact group

accountId
required
integer <int32>

The ID of the account

query Parameters
fromDate
string <date-time>

The optional start date of the Account's balance history

toDate
string <date-time>

The optional end date of the Account's balance history

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/accounts/{accountId}/balance
https://example-host/v1.0/contacts/{contactId}/accounts/{accountId}/balance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ],
  • "Currency":
    {
    }
}

Modify account

Modifies an existing account.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that belongs to the Account's contact group

accountId
required
integer <int32>

The ID of the account to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

AccountNumber
string Nullable

The optional new account number of the account.

Iban
string Nullable

The optional new IBAN of the account.

InternalId
string Nullable

The optional new Internal Id of the account.

Name
string Nullable

The optional new name of the account.

BranchId
integer <int32> Nullable

The optional new branch id of the account.

AccountType
integer <int32> Nullable

The optional new account type id of the account.

Balance
number <double> Nullable

The optional new balance of the account.

BalanceDate
string <date-time> Nullable

The optional new date of the last balance update of the account.

IsActive
boolean Nullable

This determines whether the Account is active or not.

ParentId
integer <int32> Nullable

The optional new parent id of the account.

Product
integer <int32> Nullable

The optional new product id of the account.

Status
integer <int32> Nullable

The optional new status of the account.

OpeningDate
string <date-time> Nullable

The optional new date when the account was opened.

ClosingDate
string <date-time> Nullable

The optional new date when the account was closed.

IntegrationStatus
integer <int32> Nullable

The optional new integration status id of the account.

CustomAttributes
string Nullable

The optional new custom attributes of the account.

ContactGroupId
integer <int32>

The contact group associated with the Account

AvailableBalance
number <double> Nullable

The optional available balance of the Account

AvailableBalanceLastUpdateDate
string <date-time> Nullable

The optional last available balance update date of the Account

UpdateProperties
Array of strings Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.2/contacts/{contactId}/accounts/{accountId}
https://example-host/v1.2/contacts/{contactId}/accounts/{accountId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccountNumber": "string",
  • "Iban": "string",
  • "InternalId": "string",
  • "Name": "string",
  • "BranchId": 0,
  • "AccountType": 0,
  • "Balance": 0,
  • "BalanceDate": "2024-01-23T15:03:00Z",
  • "IsActive": true,
  • "ParentId": 0,
  • "Product": 0,
  • "Status": 0,
  • "OpeningDate": "2024-01-23T15:03:00Z",
  • "ClosingDate": "2024-01-23T15:03:00Z",
  • "IntegrationStatus": 0,
  • "CustomAttributes": "string",
  • "ContactGroupId": 0,
  • "AvailableBalance": 0,
  • "AvailableBalanceLastUpdateDate": "2024-01-23T15:03:00Z",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Create a new Account

Creates a new account.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact for the new account

query Parameters
language
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

AccountNumber
required
string non-empty

The account number for the new account.

Iban
string Nullable

The IBAN for the new account.

InternalId
string Nullable

The Internal Id for the new account.

Name
string Nullable

The name of the new account.

BranchId
required
integer <int32>

The id of the branch for the new account.

CurrencyId
required
integer <int32>

The id of the currency for the new account.

ContactGroupId
integer <int32> Nullable

The id of the contact group for the new account.

AccountType
required
integer <int32>

The id of the account type for the new account.

Balance
number <double> Nullable

The balance for the new account.

BalanceDate
string <date-time> Nullable

The date of the last update of the balance for the new account.

IsActive
boolean

This determines whether the Account is active or not.

ParentId
integer <int32> Nullable

The id of the parent for the new account.

Product
required
integer <int32>

The id of the product for the new account.

Status
required
integer <int32>

The id of the status for the new account.

OpeningDate
string <date-time> Nullable

The date when the account was opened.

ClosingDate
string <date-time> Nullable

The date when the account was closed.

IntegrationStatus
integer <int32> Nullable

The id of the integration status for the new account.

CustomAttributes
string Nullable

The custom attributes for the new account.

AvailableBalance
number <double> Nullable

This is the available balance of the Account

AvailableBalanceLastUpdateDate
string <date-time> Nullable

This is the last available balance update date of the Account

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/accounts/create
https://example-host/v1.1/contacts/{contactId}/accounts/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccountNumber": "002500078712000099999",
  • "Iban": "002500078712000099999",
  • "InternalId": "871200009999",
  • "Name": "002500078712000099999",
  • "BranchId": 4,
  • "CurrencyId": 2,
  • "ContactGroupId": 5,
  • "AccountType": 1,
  • "Balance": 1854.09,
  • "BalanceDate": "2019-12-01T00:00:00",
  • "IsActive": true,
  • "Product": 3,
  • "Status": 1,
  • "OpeningDate": "2018-11-28T00:00:00",
  • "ClosingDate": "2018-11-29T00:00:00",
  • "CustomAttributes": "{\"Description\": \"Is this the Account the Client always wanted to have?\"}",
  • "AvailableBalance": 3000,
  • "AvailableBalanceLastUpdateDate": "2024-01-22T09:44:04.2608541+00:00"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ContactId": 1,
  • "Account":
    {
    }
}

Allows the User to search for Accounts of an authenticated Contact for a given set of criteria

Allows the User to search for Accounts of an authenticated Contact for a given set of criteria

Authorizations:
path Parameters
contactId
required
integer <int32>

The contactId of the contact

query Parameters
language
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The search request parameters

BranchIds
Array of integers <int32> Nullable
CurrencyIds
Array of integers <int32> Nullable

Array with Currency Ids

ContactGroupIds
Array of integers <int32> Nullable

Array with Contact Group Ids

AccountTypes
Array of strings (Domain.Abstractions.Enums.AccountType) Nullable
Items Enum: "Cash" "Custody" "Savings" "Settlement" "Deposit"

Array with Account Type Ids

IsActive
boolean Nullable

If null, active or inactive accounts are returned

ProductIds
Array of integers <int32> Nullable

Array with Product Ids

AccountStatuses
Array of strings (AccountStatusId) Nullable
Items Enum: "Active" "Blocked" "Inactive" "Closed"

Array with Account Status Ids

Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/accounts/search
https://example-host/v1.1/contacts/{contactId}/accounts/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "BranchIds":
    [
    ],
  • "CurrencyIds":
    [
    ],
  • "ContactGroupIds":
    [
    ],
  • "AccountTypes":
    [
    ],
  • "IsActive": true,
  • "ProductIds":
    [
    ],
  • "AccountStatuses":
    [
    ],
  • "Page": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 1,
  • "PageSize": 10,
  • "PageCount": 1,
  • "TotalCount": 2
}

Search accounts

Searches for accounts and returns a list with accounts (and key attributes) matching the passed request parameters.
Sorting can be performed by specifying any property name or child property name using navigation (PortfolioChangeId, LimitPrice, ExternalId) in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

AccountNumber
string Nullable
Iban
string Nullable
InternalId
string Nullable
Name
string Nullable
Ids
Array of integers <int32> Nullable
BranchIds
Array of integers <int32> Nullable
BankIds
Array of integers <int32> Nullable
CurrencyIds
Array of integers <int32> Nullable
ContactIds
Array of integers <int32> Nullable
ContactGroupIds
Array of integers <int32> Nullable
AccountTypeIds
Array of integers <int32> Nullable
IsActive
boolean Nullable
ParentIds
Array of integers <int32> Nullable
ProductIds
Array of integers <int32> Nullable
AccountStatusIds
Array of integers <int32> Nullable
BalanceUpdateDateFrom
string <date-time> Nullable
BalanceUpdateDateTo
string <date-time> Nullable
OpeningDateFrom
string <date-time> Nullable
OpeningDateTo
string <date-time> Nullable
ClosingDateFrom
string <date-time> Nullable
ClosingDateTo
string <date-time> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/accounts/search
https://example-host/v1.0/accounts/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccountNumber": "string",
  • "Iban": "string",
  • "InternalId": "string",
  • "Name": "string",
  • "Ids":
    [
    ],
  • "BranchIds":
    [
    ],
  • "BankIds":
    [
    ],
  • "CurrencyIds":
    [
    ],
  • "ContactIds":
    [
    ],
  • "ContactGroupIds":
    [
    ],
  • "AccountTypeIds":
    [
    ],
  • "IsActive": true,
  • "ParentIds":
    [
    ],
  • "ProductIds":
    [
    ],
  • "AccountStatusIds":
    [
    ],
  • "BalanceUpdateDateFrom": "2024-01-23T15:03:00Z",
  • "BalanceUpdateDateTo": "2024-01-23T15:03:00Z",
  • "OpeningDateFrom": "2024-01-23T15:03:00Z",
  • "OpeningDateTo": "2024-01-23T15:03:00Z",
  • "ClosingDateFrom": "2024-01-23T15:03:00Z",
  • "ClosingDateTo": "2024-01-23T15:03:00Z",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Bank

Delete bank

Delete bank

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/banks/{id}
https://example-host/v1.0/banks/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get bank

Return a bank by id

Authorizations:
path Parameters
id
required
integer <int32>

Bank id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/banks/{id}
https://example-host/v1.0/banks/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Europe bank",
  • "Bic": "BARCGB22XXX",
  • "Code": "x9x9x9x"
}

Update bank

Update existing bank

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the bank to update

Name
string Nullable
Bic
string Nullable
Code
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/banks/{id}
https://example-host/v1.0/banks/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Bic": "string",
  • "Code": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Europe bank",
  • "Bic": "BARCGB22XXX",
  • "Code": "x9x9x9x"
}

Delete bank account type

Deletes bank account type

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank account type

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/bankaccounttypes/{id}
https://example-host/v1.0/bankaccounttypes/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get bank account type

Returns a bank account type by id

Authorizations:
path Parameters
id
required
integer <int32>

Bank account type id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/bankaccounttypes/{id}
https://example-host/v1.0/bankaccounttypes/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Update bank account type

Updates existing bank account type

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank account type

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the bank account type to update

Name
string Nullable
InternalId
string Nullable
Description
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/bankaccounttypes/{id}
https://example-host/v1.0/bankaccounttypes/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Delete bank branch

Delete bank branch from the system.

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank branch

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/bankbranches/{id}
https://example-host/v1.0/bankbranches/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get bank list

Returns the list of all banks in the system.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/banks
https://example-host/v1.0/banks

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create bank

Create a new bank

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the bank to create

Name
string Nullable
Bic
string Nullable
Code
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/banks
https://example-host/v1.0/banks

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Bic": "string",
  • "Code": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Europe bank",
  • "Bic": "BARCGB22XXX",
  • "Code": "x9x9x9x"
}

Get bank account type list

Returns the list of all bank account types in the system.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/bankaccounttypes
https://example-host/v1.0/bankaccounttypes

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create bank account type

Creates a new bank account type

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the bank account type to create

Name
string Nullable
InternalId
string Nullable
Description
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/bankaccounttypes
https://example-host/v1.0/bankaccounttypes

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "Cash",
  • "InternalId": "Cash",
  • "Description": "Cash account type"
}

Get bank branch by id

Returns bank branch by its id

Authorizations:
path Parameters
id
required
integer <int32>

Id of the bank branch

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/bankbranches/{id}
https://example-host/v1.1/bankbranches/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "0001 AD",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "PhoneNumber": "+3233356989"
}

Update bank branch

Update existing bank branch.

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing bank branch

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the bank branch to update

Name
string Nullable
BankId
integer <int32>
CountryId
integer <int32> Nullable
Code
string Nullable
AddressLine1
string Nullable
AddressLine2
string Nullable
AddressLine3
string Nullable
AddressLine4
string Nullable
Bic
string Nullable
PhoneNumber
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.1/bankbranches/{id}
https://example-host/v1.1/bankbranches/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Branch 1",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "PhoneNumber": "+32|33356989"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "0001 AD",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "PhoneNumber": "+3233356989"
}

Get bank branch list

Returns the list of all bank branches in the system.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.1/bankbranches
https://example-host/v1.1/bankbranches

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create bank branch

Create a new bank branch in the system.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the bank branch to create

Name
string Nullable
BankId
integer <int32>
CountryId
integer <int32> Nullable
Code
string Nullable
AddressLine1
string Nullable
AddressLine2
string Nullable
AddressLine3
string Nullable
AddressLine4
string Nullable
Bic
string Nullable
PhoneNumber
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/bankbranches
https://example-host/v1.1/bankbranches

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Branch 1",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "PhoneNumber": "+32|33356989"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "0001 AD",
  • "BankId": 1,
  • "CountryId": 2,
  • "Code": "227",
  • "AddressLine1": "Rue des Avenges",
  • "AddressLine2": "25",
  • "AddressLine3": "6356",
  • "AddressLine4": "Andorra",
  • "Bic": "AD63746",
  • "PhoneNumber": "+3233356989"
}

Common

Delete risk category

Deletes a risk category.

Authorizations:
path Parameters
id
required
integer <int32>

The Id of the risk category

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/riskcategories/{id}
https://example-host/v1.0/riskcategories/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Delete economical zone

Delete economical zone

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing economical zone

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/economicalzones/{id}
https://example-host/v1.0/economicalzones/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Delete rating agency

Deletes a rating agency.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating agency Id to be deleted

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/ratingagencies/{ratingAgencyId}
https://example-host/v1.0/ratingagencies/{ratingAgencyId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get rating agency

Returns a rating agency by its id.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating agency Id

query Parameters
language
string

Language to translate the resource. If null, returns xml for all languages

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/ratingagencies/{ratingAgencyId}
https://example-host/v1.0/ratingagencies/{ratingAgencyId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Description": "string"
}

Delete rating

Deletes a rating.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating agency Id

ratingId
required
integer <int32>

Rating Id to be deleted

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/ratingagencies/{ratingAgencyId}/ratings/{ratingId}
https://example-host/v1.0/ratingagencies/{ratingAgencyId}/ratings/{ratingId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get rating for rating agency

Returns a rating by its id.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating agency Id

ratingId
required
integer <int32>

Rating Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/ratingagencies/{ratingAgencyId}/ratings/{ratingId}
https://example-host/v1.0/ratingagencies/{ratingAgencyId}/ratings/{ratingId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Rating":
    {
    },
  • "RatingAgency":
    {
    }
}

Health check

Performs a health check of the system. Will return "OK" as "text/plain" if everything is working properly.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/health-check
https://example-host/v1.0/health-check

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get system settings

Returns system settings. If the optional group parameter is passed only settings for this group will be returned, otherwise all available settings.

Authorizations:
query Parameters
group
string
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/settings
https://example-host/v1.0/settings

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get system setting

Returns a specific system setting. The name of the group and the name of the key need to be supplied.

Authorizations:
path Parameters
group
required
string
key
required
string
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/settings/{group}/{key}
https://example-host/v1.0/settings/{group}/{key}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Key": "string",
  • "Value": "string",
  • "Group": "string"
}

Get current campaign configuration

Returns campaign configuration data. Returns data about the active campaign of the tenant, including a list of product offers and their products, the list of supported languages and the default language. The language DTOs also contain specifications that can be used for number formatting (NumberDecimalSeparator and NumberGroupSeparator).

Authorizations:
query Parameters
language
required
string
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.2/campaigns/current/configuration
https://example-host/v1.2/campaigns/current/configuration

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ProductOffers":
    [
    ],
  • "Languages":
    [
    ],
  • "DefaultLanguage":
    {
    },
  • "DefaultTimeZoneUtcOffsetMinutes": 0
}

Get product by id

Gets the details of a product.

Authorizations:
path Parameters
productId
required
integer <int32>

The id of the product

query Parameters
language
required
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/products/{productId}
https://example-host/v1.0/products/{productId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string",
  • "Name": "string",
  • "Description": "string",
  • "Image": "string",
  • "Factsheet": "string",
  • "MinimumInvestmentValue": 0,
  • "MaximumInvestmentValue": 0,
  • "ExternalId": "string",
  • "IsBlockOrderBookEnabled": true,
  • "IsOrderBookEnabled": true,
  • "Fees":
    [
    ],
  • "DefaultOrderBookStatus":
    {
    },
  • "PortfolioRebalancingType":
    {
    },
  • "OptimizationConstraintId": 0,
  • "IsActive": true,
  • "ProductOfferId": 0,
  • "ProductOffer":
    {
    },
  • "Settings": "string"
}

Get country list

Returns the list of all countries in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/countries/{language}
https://example-host/v1.0/countries/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get language list

Returns the list of all languages in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/languages/{language}
https://example-host/v1.0/languages/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get datasources

Returns a list of all available data sources.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/datasources/all
https://example-host/v1.0/datasources/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get stored procedure names

Returns a list of stored procedures available for the provided data source and schema

Authorizations:
path Parameters
dataSourceName
required
string

Name of the data source

schema
required
string

Name of the specific DB schema

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/datasources/{dataSourceName}/storedprocedures/{schema}
https://example-host/v1.0/datasources/{dataSourceName}/storedprocedures/{schema}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get risk categories

Gets all risk categories for a specific product

Authorizations:
path Parameters
productId
required
integer <int32>
query Parameters
language
required
string
active
boolean
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/products/{productId}/riskcategories
https://example-host/v1.1/products/{productId}/riskcategories

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get risk categories

Returns the list of all risk categories.

Authorizations:
query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/riskcategories
https://example-host/v1.1/riskcategories

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create risk category

Creates a risk category.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO.

Name
Array of objects (LocalizedValue) Nullable

The Name of the risk category

ExternalId
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/riskcategories
https://example-host/v1.1/riskcategories

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "ExternalId": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string"
}

Get risk category

Returns a risk cateogry by its id.

Authorizations:
path Parameters
id
required
integer <int32>

The id of the risk category.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.2/riskcategories/{id}
https://example-host/v1.2/riskcategories/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "ExternalId": "string",
  • "UId": "string"
}

Get product constraints

Gets the constraints of a product by ID

Authorizations:
path Parameters
productId
required
integer <int32>

The ID of the product to retrieve optimization constraints for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v3.0/products/{productId}/optimizationconstraints
https://example-host/v3.0/products/{productId}/optimizationconstraints

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "OptimizationConstraints":
    {
    }
}

Get assetclass tree

Returns the tree of all assetclasses in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/assetclasses/{language}
https://example-host/v1.0/assetclasses/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get continent list

Returns the list of all continents in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/continents/{language}
https://example-host/v1.0/continents/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get securitytype list

Returns the list of all securitytypes in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/securitytypes/{language}
https://example-host/v1.0/securitytypes/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get security sector tree

Returns the tree of all security sectors in the system.

Authorizations:
path Parameters
language
required
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/sectors/{language}
https://example-host/v1.0/sectors/{language}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get economical zones list

Returns the list of all economical zones in the system.

Authorizations:
query Parameters
language
required
string

Language value for xml fields

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/economicalzones
https://example-host/v1.0/economicalzones

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get economical zone

Return a economical zone by id

Authorizations:
path Parameters
id
required
integer <int32>

Economical zone id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/economicalzones/{id}
https://example-host/v1.1/economicalzones/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Color": "string"
}

Update economical zone

Update existing economical zone

Authorizations:
path Parameters
id
required
integer <int32>

Id of the existing economical zone

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the economical zone to update

Name
required
string non-empty
Color
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.1/economicalzones/{id}
https://example-host/v1.1/economicalzones/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Color": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Color": "string"
}

Get rating agencies

Returns the list of all rating agencies.

Authorizations:
query Parameters
language
string

Language to translate the resources. If null, returns xml for all languages

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/ratingagencies
https://example-host/v1.0/ratingagencies

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "RatingAgencies":
    [
    ]
}

Create rating agency

Creates a new rating agency.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Rating agency

Name
string Nullable
Description
string Nullable

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/ratingagencies
https://example-host/v1.0/ratingagencies

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Standard & Poor's",
  • "Description": "<root><en>EN description</en><de>DE description</de></root>"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string"
}

Get ratings for rating agency

Returns the list of all ratings for a rating agency.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating agency Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/ratingagencies/{ratingAgencyId}/ratings
https://example-host/v1.0/ratingagencies/{ratingAgencyId}/ratings

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "RatingAgencyId": 0,
  • "Ratings":
    [
    ]
}

Create rating

Creates a new rating for a rating agency.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating Agency Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Rating data

Value
string Nullable
Color
string Nullable

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/ratingagencies/{ratingAgencyId}/ratings
https://example-host/v1.0/ratingagencies/{ratingAgencyId}/ratings

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Value": "string",
  • "Color": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string"
}

Get order threshold type list

Returns the different threshold types for orders.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/orderthresholdtypes
https://example-host/v1.0/orderthresholdtypes

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OrderThresholdTypes":
    [
    ]
}

Get ESG component list

Returns the list of all ESG components in the system.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/esgcomponents
https://example-host/v1.0/esgcomponents

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "EsgComponents":
    [
    ]
}

Get offer by id

Gets the details of an offer.

Authorizations:
path Parameters
offerId
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/offers/{offerId}
https://example-host/v1.0/offers/{offerId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Description": "string",
  • "CreateDate": "2024-01-23T15:03:00Z",
  • "Picture": "string",
  • "IsActive": true,
  • "ProductOfferType":
    {
    },
  • "ExternalId": "string",
  • "UId": "string",
  • "Currencies":
    [
    ]
}

Update risk category

Updates a risk category.

Authorizations:
path Parameters
id
required
integer <int32>

The id of the risk category.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO.

Name
Array of objects (LocalizedValue) Nullable

The Name of the risk category

ExternalId
string Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/riskcategories/{id}
https://example-host/v1.1/riskcategories/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "ExternalId": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Update rating agency

Updates an existing rating agency.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating agency Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Request data

Name
string Nullable
Description
string Nullable
UpdateProperties
Array of strings Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/ratingagencies/{ratingAgencyId}
https://example-host/v1.1/ratingagencies/{ratingAgencyId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Description": "string",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Update rating

Updates an existing rating.

Authorizations:
path Parameters
ratingAgencyId
required
integer <int32>

Rating agency Id

ratingId
required
integer <int32>

Rating Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Request data

Value
string Nullable
Color
string Nullable
UpdateProperties
Array of strings Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/ratingagencies/{ratingAgencyId}/ratings/{ratingId}
https://example-host/v1.1/ratingagencies/{ratingAgencyId}/ratings/{ratingId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Value": "string",
  • "Color": "string",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Reset system settings cache

Clears the cache which stores all the global settings.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

post/v1.0/settings/reset-cache
https://example-host/v1.0/settings/reset-cache

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Clear caches

Clears all caches

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

post/v1.0/caches/clear
https://example-host/v1.0/caches/clear

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Clear cache entries by key

Clears all cache entries with the key passed

Authorizations:
path Parameters
key
required
string

The cache key. Can be appended by an asterisk (*) to indicate that all existing keys starting with this key should be deleted.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/caches/clear/{key}
https://example-host/v1.0/caches/clear/{key}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Clear cache entries by tags

Clears all cache entries that are tagged with any of the tags passed

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Tags
required
Array of strings

The list of tags

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/caches/clear-by-tags
https://example-host/v1.0/caches/clear-by-tags

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Tags":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Publish integration event

Publishes an integration event to the event bus

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Name
required
string non-empty

The actual name of the integration event. Since an event is something that happened in the past, the name of the event should be represented as a past-tense verb, like “OrderCreated”.

Group
string Nullable

An ID defining the group the integration event belongs to. This makes it easier to identify events that are all dealing with the same part of an application. An example would be “Ordering”. Not to be mistaken with the ContextId which identifies a unique context.

ContextId
string Nullable

Should contain a unique ID to identify the current context. It will be used to identify events belonging to the same context.

Data
string Nullable

The payload of the integration event serialized as JSON

EntityName
string Nullable

The optional entity name of the event bus. If not passed the default name 'DfsEventBus' will be used

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/integrationevents/publish
https://example-host/v1.0/integrationevents/publish

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "OrderCreated",
  • "Group": "Ordering",
  • "ContextId": "12345",
  • "Data": "{ 'ChangeSetId': 1 }"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Publish notification event

Publishes a notification event to the service bus

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

PersonId
integer <int32>

The ID of the person (contact ID or member ID) that is the recipient of the notification.

Name
required
string non-empty

The actual name of the notification event. Since an event is something that happened in the past, the name of the event should be represented as a past-tense verb, like “MessageReceived”.

Group
string Nullable

An ID defining the group the notification event belongs to. This makes it easier to identify events that are all dealing with the same part of an application. An example would be “Messaging”. Not to be mistaken with the ContextId which identifies a unique context.

ContextId
string Nullable

Should contain a unique ID to identify the current context. It will be used to identify events belonging to the same context.

Data
string Nullable

The payload of the notification event serialized as JSON. Needs to contain the rendering data if template rendering is to be used to generate the notification texts.

Subject
string Nullable

The subject text of the notification. Needs to be set if template rendering is not to be used to generate the notification texts (Data is null).

Text
string Nullable

The body text of the notification. Needs to be set if template rendering is not to be used to generate the notification texts (Data is null).

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/notificationevents/publish
https://example-host/v1.0/notificationevents/publish

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PersonId": 1,
  • "Name": "MessageReceived",
  • "Group": "Messaging",
  • "ContextId": "12345",
  • "Subject": "New message in your inbox",
  • "Text": "Message text: test"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Create economical zone

Create a new economical zone

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the economical zone to create

Name
required
string non-empty
Color
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/economicalzones
https://example-host/v1.1/economicalzones

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Color": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Color": "string",
  • "UId": "string"
}

Search for objects associated to a category

Searches for objects associated to a category and either an array of UIds or a search string

Authorizations:
query Parameters
language
string

Language to translate the resource. If null, returns xml for all languages

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Search data.

Category
required
string (SearchCategory)
Enum: "Security" "Portfolio" "Product" "RiskCategory" "Sector" "Currency" "AssetClass" "Country" "Focus" "EconomicalZone" "Rating" "RatingAgency" "ModelPortfolio"
UIds
Array of strings <uuid> Nullable

The list of uid's.

RelatedTo
string Nullable
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/relatedobjects/search
https://example-host/v1.0/relatedobjects/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Category": "Security",
  • "UIds":
    [
    ],
  • "RelatedTo": "Equity",
  • "Page": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Get enumerations from multiple tables

Retrieves a list of enumerations for multiple tables. The tables available are:
AccountStatus, AccountTransactionStatus, AccountTransactionType, AccountType, BondCouponFrequency, ContactType, ContactAccessPolicy, CouponType, FeeRecurrenceType, FundingType, GoalType, IssuerType, ModelPortfolioAllocationType, ModelPortfolioOptimisationType, ModelPortfolioType, NotificationRecipientType, OptionExerciseType, OrderBookStatus, OrderThresholdType, OrderType, ParticipantRoleType, PortfolioChangeType, PortfolioProposalStatus, PortfolioRebalancingType, PortfolioStatus, PortfolioType, RecurrenceType, SeverityLevel, StockExchangeOrderType and StockExchangeOrderValidity

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Request data.

EnumerationTypes
Array of strings (EnumerationType) Nullable
Items Enum: "AccountStatus" "AccountTransactionStatus" "AccountTransactionType" "AccountType" "BondCouponFrequency" "ContactType" "ContactAccessPolicy" "CouponType" "FeeRecurrenceType" "FundingType" "FundInvestmentType" "FundManagementType" "FundType" "GoalType" "IssuerType" "ModelPortfolioAllocationType" "ModelPortfolioOptimisationType" "ModelPortfolioType" "NotificationChannel" "NotificationRecipientType" "OptionExerciseType" "OrderBookStatus" "OrderThresholdType" "OrderType" "ParticipantRoleType" "PortfolioChangeType" "PortfolioProposalStatus" "PortfolioRebalancingType" "PortfolioStatus" "PortfolioType" "RecurrenceType" "SeverityLevel" "StockExchangeOrderType" "StockExchangeOrderValidity"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/enumerations
https://example-host/v1.0/enumerations

Request samples

Content type
Copy
Expand all Collapse all
{
  • "EnumerationTypes":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Enumerations":
    [
    ]
}

Get localized definitions from multiple tables

Retrieves a list of localized definitions for multiple tables. The tables available are:
EconomicalZone, FeeType, GoalStatus, InteractionTopic, InteractionType, ProductCategory, ProductOfferType, RelativeType and Salutation

Authorizations:
query Parameters
language
string

Language to translate the resources.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Request data.

DefinitionTypes
Array of strings (DefinitionType) Nullable
Items Enum: "EconomicalZone" "FeeType" "GoalStatus" "InteractionTopic" "InteractionType" "ProductCategory" "ProductOfferType" "RelativeType" "Salutation"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/definitions
https://example-host/v1.0/definitions

Request samples

Content type
Copy
Expand all Collapse all
{
  • "DefinitionTypes":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Definitions":
    [
    ]
}

Search product offerings

Searches for product offerings and returns a list with product offering (and key attributes) matching the passed request parameters.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Ids
Array of integers <int32> Nullable
CreateDateFrom
string <date-time> Nullable
CreateDateTo
string <date-time> Nullable
IsActive
boolean Nullable
ProductOfferTypeIds
Array of integers <int32> Nullable
ExternalIds
Array of strings Nullable
UIds
Array of strings <uuid> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/productoffers/search
https://example-host/v1.0/productoffers/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Ids":
    [
    ],
  • "CreateDateFrom": "2024-01-23T15:03:00Z",
  • "CreateDateTo": "2024-01-23T15:03:00Z",
  • "IsActive": true,
  • "ProductOfferTypeIds":
    [
    ],
  • "ExternalIds":
    [
    ],
  • "UIds":
    [
    ],
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search products

Searches for products and returns a list with products (and key attributes) matching the passed request parameters.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Ids
Array of integers <int32> Nullable
ProductOfferIds
Array of integers <int32> Nullable
IsActive
boolean Nullable
ExternalIds
Array of strings Nullable
UIds
Array of strings <uuid> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/products/search
https://example-host/v1.0/products/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Ids":
    [
    ],
  • "ProductOfferIds":
    [
    ],
  • "IsActive": true,
  • "ExternalIds":
    [
    ],
  • "UIds":
    [
    ],
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search country subdivisions

Searches for country subdivisions and returns a list with country subdivisions (and key attributes) matching the passed request parameters (i.e. country two letter ISO codes). If no request parameters are passed then the entire list of country subdivisions (grouped by country) are returned.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
CountryTwoLetterIsoCodes
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/countries/subdivisions
https://example-host/v1.0/countries/subdivisions

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CountryTwoLetterIsoCodes":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CountriesSubdivisions":
    [
    ]
}

CommonContent

Delete render template type

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/rendertemplates/types/{id}
https://example-host/v1.0/rendertemplates/types/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get render template type

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/types/{id}
https://example-host/v1.0/rendertemplates/types/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Delete render template category

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/rendertemplates/categories/{id}
https://example-host/v1.0/rendertemplates/categories/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get render template category

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/categories/{id}
https://example-host/v1.0/rendertemplates/categories/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Delete render template generation data set

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/rendertemplates/datasets/{id}
https://example-host/v1.0/rendertemplates/datasets/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get render template generation data set

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/datasets/{id}
https://example-host/v1.0/rendertemplates/datasets/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "StoredProcedure": "string",
  • "Alias": "string",
  • "ConnectionString": "string",
  • "InputParams": "string",
  • "IsCustom": true
}

Delete render template metadata

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/rendertemplates/metadatas/{id}
https://example-host/v1.0/rendertemplates/metadatas/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get render template metadata

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/metadatas/{id}
https://example-host/v1.0/rendertemplates/metadatas/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Category":
    {
    },
  • "DataSet":
    {
    },
  • "ShowToCustomer": true,
  • "Icon": "string",
  • "ShowHeaderPerEachPage": true,
  • "ShowFooterPerEachPage": true,
  • "LastModifiedDate": "2024-01-23T15:03:00Z",
  • "Key": "string",
  • "Name": "string",
  • "Order": 0,
  • "Types":
    [
    ],
  • "SelectionParameters":
    [
    ],
  • "AdvancedProperties":
    {
    }
}

Delete render template

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/rendertemplates/{id}
https://example-host/v1.0/rendertemplates/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get render template

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/{id}
https://example-host/v1.0/rendertemplates/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Title": "string",
  • "Header": "string",
  • "Body": "string",
  • "Footer": "string",
  • "LanguageId": 0,
  • "Metadata":
    {
    },
  • "LastUpdateDate": "2024-01-23T15:03:00Z"
}

Delete render document schema

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/rendertemplates/documentschema/{id}
https://example-host/v1.0/rendertemplates/documentschema/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get render document schema

Authorizations:
path Parameters
id
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/documentschema/{id}
https://example-host/v1.0/rendertemplates/documentschema/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Key": "string",
  • "ShowToCustomer": true,
  • "IsMerged": true,
  • "TypeId": 0,
  • "Metadatas":
    [
    ]
}

Get common content

Gets a collection of content artifacts (assets) by asset type

Authorizations:
query Parameters
language
required
string
assetType
integer <int32>
startRowIndex
integer <int32>
pageSize
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/common/assets
https://example-host/v1.0/common/assets

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get all render template types

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/rendertemplates/types/all
https://example-host/v1.0/rendertemplates/types/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get all render template categories

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/rendertemplates/categories/all
https://example-host/v1.0/rendertemplates/categories/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get all render template generation data sets

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/rendertemplates/datasets/all
https://example-host/v1.0/rendertemplates/datasets/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get all render template metadatas

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/rendertemplates/metadatas/all
https://example-host/v1.0/rendertemplates/metadatas/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get all render templates

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/rendertemplates/all
https://example-host/v1.0/rendertemplates/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get render document schema by key

Authorizations:
query Parameters
key
required
string
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/documentschema/getByKey
https://example-host/v1.0/rendertemplates/documentschema/getByKey

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Key": "string",
  • "ShowToCustomer": true,
  • "IsMerged": true,
  • "TypeId": 0,
  • "Metadatas":
    [
    ]
}

Get all render document schemas

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/rendertemplates/documentschema/all
https://example-host/v1.0/rendertemplates/documentschema/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get all render document schemas by included metadata

Authorizations:
path Parameters
metadataId
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/rendertemplates/documentschema/all/{metadataId}
https://example-host/v1.0/rendertemplates/documentschema/all/{metadataId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get all selection parameters

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/rendertemplates/selectionparameters/all
https://example-host/v1.0/rendertemplates/selectionparameters/all

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Html to pdf

Receives an HTML template, a JSON object, renders the HTML, then generates the PDF from it
To introduce page numbering in footer or header, the following should be used:

  • Page number: &p;
  • Total number of pages: &P;
  • Example: Page &p; of &P; pages
Authorizations:
query Parameters
downloadFileName
required
string
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema: multipart/form-data
html
string
model
string
pageOrientation
string (PageOrientation)
Enum: "Portrait" "Landscape"
header
string
footer
string
pageSize
string (PageSize)
Enum: "A0" "A1" "A2" "A3" "A4" "A5" "A6" "A7" "A8" "A9" "A10" "B0" "B1" "B2" "B3" "B4" "B5" "ArchA" "ArchB" "ArchC" "ArchD" "ArchE" "Flsa" "HalfLetter" "Ledger" "Letter" "Note" "Letter11x17" "Legal"
pageMarginTop
number <float>
pageMarginLeft
number <float>
pageMarginBottom
number <float>
pageMarginRight
number <float>
headerHeight
number <float>
footerHeight
number <float>
pageNumberStartIndex
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/htmlToPdf
https://example-host/v1.0/htmlToPdf

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Generate document schema template

Generates the document schema template using the specified parameters in the request.

Includes the schema, language, contentType, parameters, model and whether to include plain properties.
Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
SchemaId
integer <int32> Nullable
SchemaKey
string Nullable
LanguageId
integer <int32>
ContentType
string Nullable
Parameters
object Nullable
Model
string Nullable
IncludePlainProperties
boolean
AdvancedProperties
object (GenerateRenderDocumentSchemaAdvancedProperties)

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/templates/generateDocumentSchema
https://example-host/v1.0/templates/generateDocumentSchema

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SchemaId": 0,
  • "SchemaKey": "string",
  • "LanguageId": 0,
  • "ContentType": "string",
  • "Parameters":
    {
    },
  • "Model": "string",
  • "IncludePlainProperties": true,
  • "AdvancedProperties":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ContentType": "string",
  • "Templates":
    [
    ]
}

Generate template

Generates a template using the specified parameters in the request.

Includes the metadata, language, contentType, parameters, model and whether to include plain properties.
Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
TemplateMetadataId
integer <int32> Nullable
TemplateMetadataKey
string Nullable
LanguageId
integer <int32>
FallbackLanguageId
integer <int32> Nullable
ContentType
string Nullable
Parameters
object Nullable
Model
string Nullable
IncludePlainProperties
boolean
IsPreview
boolean Nullable
AdvancedProperties
object (GenerateRenderTemplateAdvancedProperties)

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/templates/generateTemplate
https://example-host/v1.1/templates/generateTemplate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "TemplateMetadataId": 0,
  • "TemplateMetadataKey": "string",
  • "LanguageId": 0,
  • "FallbackLanguageId": 0,
  • "ContentType": "string",
  • "Parameters":
    {
    },
  • "Model": "string",
  • "IncludePlainProperties": true,
  • "IsPreview": true,
  • "AdvancedProperties":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Base64Content": "string",
  • "Model": null,
  • "PlainProperties":
    {
    }
}

Preview template v2.1

Returns a preview of a generated template.

Includes the header, body, footer, contentType, pageOrientation, dataSet and parameters.
Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
AdvancedProperties
object (PdfOptions)
Header
string Nullable
Body
string Nullable
Footer
string Nullable
ContentType
string Nullable
PageOrientation
string (additiv.Dfs.Templating.Api.Common.Dto.PageOrientation)
Enum: "Portrait" "Landscape"
DataSetId
integer <int32> Nullable
DataSourceParameters
object Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.1/templates/preview
https://example-host/v2.1/templates/preview

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AdvancedProperties":
    {
    },
  • "Header": "string",
  • "Body": "string",
  • "Footer": "string",
  • "ContentType": "application/pdf",
  • "PageOrientation": "Portrait",
  • "DataSetId": 0,
  • "DataSourceParameters": { }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Base64Content": "string",
  • "Model": null,
  • "PlainProperties":
    {
    }
}

Create render template types

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
Name
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/rendertemplates/types/create
https://example-host/v1.0/rendertemplates/types/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Create render template category

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
Name
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/rendertemplates/categories/create
https://example-host/v1.0/rendertemplates/categories/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Create render template generation data set

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
StoredProcedure
string Nullable
Alias
string Nullable
ConnectionString
string Nullable
InputParams
string Nullable
IsCustom
boolean

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/rendertemplates/datasets/create
https://example-host/v1.0/rendertemplates/datasets/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "StoredProcedure": "string",
  • "Alias": "string",
  • "ConnectionString": "string",
  • "InputParams": "string",
  • "IsCustom": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "StoredProcedure": "string",
  • "Alias": "string",
  • "ConnectionString": "string",
  • "InputParams": "string",
  • "IsCustom": true
}

Create render template metadata

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
CategoryId
integer <int32>
DataSetId
integer <int32> Nullable
ShowToCustomer
boolean
Icon
string Nullable
Key
string Nullable
Name
string Nullable
ShowHeaderPerEachPage
boolean
ShowFooterPerEachPage
boolean
MemberId
integer <int32>
Types
Array of integers <int32> Nullable
SelectionParameters
Array of integers <int32> Nullable
AdvancedProperties
object (CreateRenderTemplateAdvancedProperties)

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/rendertemplates/metadatas/create
https://example-host/v1.0/rendertemplates/metadatas/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "CategoryId": 0,
  • "DataSetId": 0,
  • "ShowToCustomer": true,
  • "Icon": "string",
  • "Key": "string",
  • "Name": "string",
  • "ShowHeaderPerEachPage": true,
  • "ShowFooterPerEachPage": true,
  • "MemberId": 0,
  • "Types":
    [
    ],
  • "SelectionParameters":
    [
    ],
  • "AdvancedProperties":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Category":
    {
    },
  • "DataSet":
    {
    },
  • "ShowToCustomer": true,
  • "Icon": "string",
  • "ShowHeaderPerEachPage": true,
  • "ShowFooterPerEachPage": true,
  • "LastModifiedDate": "2024-01-23T15:03:00Z",
  • "Key": "string",
  • "Name": "string",
  • "Order": 0,
  • "Types":
    [
    ],
  • "SelectionParameters":
    [
    ],
  • "AdvancedProperties":
    {
    }
}

Create render template

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
LanguageId
integer <int32>
MetadataId
integer <int32>
Title
string Nullable
Header
string Nullable
Body
string Nullable
Footer
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/rendertemplates/create
https://example-host/v1.0/rendertemplates/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "LanguageId": 0,
  • "MetadataId": 0,
  • "Title": "string",
  • "Header": "string",
  • "Body": "string",
  • "Footer": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Title": "string",
  • "Header": "string",
  • "Body": "string",
  • "Footer": "string",
  • "LanguageId": 0,
  • "Metadata":
    {
    },
  • "LastUpdateDate": "2024-01-23T15:03:00Z"
}

Create render document schema

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Name
string Nullable
Key
string Nullable
ShowToCustomer
boolean
IsMerged
boolean
TypeId
integer <int32>
RenderTemplateMetadatas
Array of objects (OrderedRenderTemplateMetadataRequest) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/rendertemplates/documentschema/create
https://example-host/v1.0/rendertemplates/documentschema/create

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "Key": "string",
  • "ShowToCustomer": true,
  • "IsMerged": true,
  • "TypeId": 0,
  • "RenderTemplateMetadatas":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Key": "string",
  • "ShowToCustomer": true,
  • "IsMerged": true,
  • "TypeId": 0,
  • "Metadatas":
    [
    ]
}

Update render template type

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
Name
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/rendertemplates/types/update
https://example-host/v1.0/rendertemplates/types/update

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Update render template category

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
Name
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/rendertemplates/categories/update
https://example-host/v1.0/rendertemplates/categories/update

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string"
}

Update render template generation data set

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
StoredProcedure
string Nullable
Alias
string Nullable
ConnectionString
string Nullable
InputParams
string Nullable
IsCustom
boolean

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/rendertemplates/datasets/update
https://example-host/v1.0/rendertemplates/datasets/update

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "StoredProcedure": "string",
  • "Alias": "string",
  • "ConnectionString": "string",
  • "InputParams": "string",
  • "IsCustom": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "StoredProcedure": "string",
  • "Alias": "string",
  • "ConnectionString": "string",
  • "InputParams": "string",
  • "IsCustom": true
}

Update render template metadata

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
CategoryId
integer <int32>
DataSetId
integer <int32> Nullable
ShowToCustomer
boolean
Icon
string Nullable
Key
string Nullable
Name
string Nullable
ShowHeaderPerEachPage
boolean
ShowFooterPerEachPage
boolean
MemberId
integer <int32>
Types
Array of integers <int32> Nullable
SelectionParameters
Array of integers <int32> Nullable
AdvancedProperties
object (CreateRenderTemplateAdvancedProperties)

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/rendertemplates/metadatas/update
https://example-host/v1.0/rendertemplates/metadatas/update

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "CategoryId": 0,
  • "DataSetId": 0,
  • "ShowToCustomer": true,
  • "Icon": "string",
  • "Key": "string",
  • "Name": "string",
  • "ShowHeaderPerEachPage": true,
  • "ShowFooterPerEachPage": true,
  • "MemberId": 0,
  • "Types":
    [
    ],
  • "SelectionParameters":
    [
    ],
  • "AdvancedProperties":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Category":
    {
    },
  • "DataSet":
    {
    },
  • "ShowToCustomer": true,
  • "Icon": "string",
  • "ShowHeaderPerEachPage": true,
  • "ShowFooterPerEachPage": true,
  • "LastModifiedDate": "2024-01-23T15:03:00Z",
  • "Key": "string",
  • "Name": "string",
  • "Order": 0,
  • "Types":
    [
    ],
  • "SelectionParameters":
    [
    ],
  • "AdvancedProperties":
    {
    }
}

Update render template

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
LanguageId
integer <int32>
MetadataId
integer <int32>
Title
string Nullable
Header
string Nullable
Body
string Nullable
Footer
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/rendertemplates/update
https://example-host/v1.0/rendertemplates/update

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "LanguageId": 0,
  • "MetadataId": 0,
  • "Title": "string",
  • "Header": "string",
  • "Body": "string",
  • "Footer": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Title": "string",
  • "Header": "string",
  • "Body": "string",
  • "Footer": "string",
  • "LanguageId": 0,
  • "Metadata":
    {
    },
  • "LastUpdateDate": "2024-01-23T15:03:00Z"
}

Update render document schema

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Id
integer <int32>
Name
string Nullable
Key
string Nullable
ShowToCustomer
boolean
IsMerged
boolean
TypeId
integer <int32>
RenderTemplateMetadatas
Array of objects (OrderedRenderTemplateMetadataRequest) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/rendertemplates/documentschema/update
https://example-host/v1.0/rendertemplates/documentschema/update

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Key": "string",
  • "ShowToCustomer": true,
  • "IsMerged": true,
  • "TypeId": 0,
  • "RenderTemplateMetadatas":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Key": "string",
  • "ShowToCustomer": true,
  • "IsMerged": true,
  • "TypeId": 0,
  • "Metadatas":
    [
    ]
}

Communication

Delete message

Marks a message as deleted.

Authorizations:
path Parameters
personId
required
integer <int32>

Person id who sent or received the message

messageId
required
integer <int64>

Message identifier

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/persons/{personId}/messages/{messageId}
https://example-host/v1.0/persons/{personId}/messages/{messageId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get message by id

Retrieves a message by message id and person id. If the person is a contact then he must be either the sender or a recipient of the message and the list of the recipients is filtered by personId (if person is recipient). If the person is a member then all the recipients are retrieved and the message can be accessed by any member who has hierarchy access to the sender or to one of the recipients. The subject and the text of the message retrieved from the database are sanitized for better formatting.

Authorizations:
path Parameters
personId
required
integer <int32>

The sender or the recipient identifier of the message or a member who has hierarchy access.

messageId
required
integer <int64>

Message identifier

query Parameters
language
string

Language

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v2.0/persons/{personId}/messages/{messageId}
https://example-host/v2.0/persons/{personId}/messages/{messageId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "SenderId": 1,
  • "SenderUId": "00000000-0000-0000-0000-000000000000",
  • "SenderFullName": "Zaria Jarvis",
  • "Subject": "Important meeting",
  • "IsRead": false,
  • "IsDeleted": false,
  • "CreateDate": "2024-01-22T09:44:05.2193476Z",
  • "SubtypeId": 0,
  • "Recipients":
    [
    ],
  • "Attachments":
    [
    ]
}

Get message attachment

Retrieves a message attachment by person id, message id and document id. The attachment can be accessed by the sender, by one of the recipients or by a member who has hierarchy access.

Authorizations:
path Parameters
personId
required
integer <int32>

The person identifier who is the owner of the document (sender or recipient or a member with hierarchy access).

messageId
required
integer <int64>

The message identifier who contains the attachment.

attachmentId
required
integer <int32>

The attachment identifier - externalId. This id identifies the document stored in DMS system.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v2.0/persons/{personId}/messages/{messageId}/attachments/{attachmentId}
https://example-host/v2.0/persons/{personId}/messages/{messageId}/attachments/{attachmentId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "FileName": "TestFile.pdf",
  • "Content": "CYl2",
  • "DocumentId": "2001",
  • "MimeType": "application/pdf"
}

Get message attachments

Retrieves the message attachments by person id and message id. The attachments can be accessed by the sender, by one of the recipients or by a member who has hierarchy access.

Authorizations:
path Parameters
personId
required
integer <int32>

The person identifier which is the owner of the document (sender or recipient or a member with hierarchy access).

messageId
required
integer <int64>

The message identifier that contains the attachment.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v2.0/persons/{personId}/messages/{messageId}/attachments
https://example-host/v2.0/persons/{personId}/messages/{messageId}/attachments

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Count unread messages count

Retrieves the number of unread messages. If count is greater than 99 then return 99+

Authorizations:
path Parameters
personId
required
integer <int32>

Person id who received the messages

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/persons/{personId}/messages/unread/count
https://example-host/v1.0/persons/{personId}/messages/unread/count

Response samples

Content type
application/json
Copy
Expand all Collapse all
"string"

Get message types

Retrieves all types of messages that belong to a campaign.

Authorizations:
query Parameters
language
string

Language

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v2.0/message-types
https://example-host/v2.0/message-types

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Set message read status

Marks a message as read or unread.

Authorizations:
path Parameters
personId
required
integer <int32>

Person id who sent or received the message.

messageId
required
integer <int64>

Message identifier

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The payload containing the flag which marks the message as read or unread.

IsRead
boolean

A flag to specify whether the message is read or not.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/persons/{personId}/messages/{messageId}
https://example-host/v1.1/persons/{personId}/messages/{messageId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "IsRead": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get threads by contact id

Retrieves all messages of a contact grouped by threads. The endpoint can be accessed by the RM of the contact. The impersonation of the member should be allowed. Only the following filters are supported: PageNumber, PageSize, Text, TextLength, ThreadId, IsRead, IsDeleted, SenderIds, RecipientIds, PageNumber and PageSize. Sorting can be performed by the following columns: Id of thread, Id, CreateDate, Subject and CategoryName of person message. If the SenderIds filter is provided then it will be applied for the contactId as recipient. If the RecipientIds filter is provided then it will be applied for the contactId as sender. The messages from each thread are ordered descending.

Authorizations:
path Parameters
contactId
required
integer <int32>

Contact id who sent or received the messages.

query Parameters
language
string

Language

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

A list of filters applied to messages like: text, isRead, isDeleted etc

ParticipantsIds
Array of integers <int32> Nullable

Receives an array of PersonIds, and return all threads that have any of these IDs in the SenderId or RecipientId in the first message of the thread.

CreatedByIds
Array of integers <int32> Nullable

Receives an array of PersonIds, and return all threads that have any of these IDs in the SenderId in the first message of the thread.

StartDate
string <date-time> Nullable
EndDate
string <date-time> Nullable
ThreadId
integer <int32> Nullable
IsRead
boolean Nullable
IsDeleted
boolean Nullable
Text
string Nullable
TextLength
integer <int32> Nullable

Number of characters returned from the body of each message. Enter 0 to return unlimited characters (full body of each message)

SortColumn
string Nullable

Sorting is possible by SubTypeId, CreateDate and Subject fields

SortOrder
string Nullable
SubtypeIds
Array of integers <int32> Nullable
PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.2/contacts/{contactId}/messages/threads
https://example-host/v2.2/contacts/{contactId}/messages/threads

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ParticipantsIds":
    [
    ],
  • "CreatedByIds":
    [
    ],
  • "StartDate": "2024-01-21T09:44:05.2682129Z",
  • "EndDate": "2024-01-22T09:44:05.2682134Z",
  • "ThreadId": 1,
  • "IsRead": false,
  • "IsDeleted": false,
  • "Text": "football",
  • "TextLength": 10,
  • "SortColumn": "Id",
  • "SortOrder": "desc",
  • "SubtypeIds":
    [
    ],
  • "PageNumber": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Data":
    [
    ],
  • "PageCount": 1,
  • "Total": 2,
  • "PageNumber": 1,
  • "PageSize": 10
}

Get message threads by member id

Retrieves all messages of a member that he has access to directly (sender or recipient) or through hierarchy access from other members. The messages are grouped by threads. The endpoint can be accessed by the RM of the contact. The impersonation of the member should be allowed. The following filters are supported: PageNumber, PageSize, Text, TextLength, ThreadId, IsRead, IsDeleted, SenderIds, RecipientIds, PageNumber and PageSize. Sorting can be performed by the following columns: Id of thread, Id, CreateDate, Subject and CategoryName of person message. If the SenderIds filter is provided then it should contain only the member ids from the hierarchy of the member. The final filter will contain the memberIds + direct their contacts + sendersIds which are not of type member. If the RecipientIds filter is provided then it should contain only the member ids from the hierarchy of the member. The final filter will contain the memberIds + direct their contacts + recipientIds which are not of type member. The messages from each thread are ordered descending.

Authorizations:
path Parameters
memberId
required
integer <int32>

Member id who sent or received the messages or has access to other members.

query Parameters
language
string

Language

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

A list of filters applied to messages like: text, senderIds, recipientIds etc

ParticipantsIds
Array of integers <int32> Nullable

Receives an array of PersonIds, and return all threads that have any of these IDs in the SenderId or RecipientId in the first message of the thread

CreatedByIds
Array of integers <int32> Nullable

Receives an array of PersonIds, and return all threads that have any of these IDs in the SenderId in the first message of the thread.

DateFrom
string <date-time> Nullable

The first message in the thread was sent after this date.

DateTo
string <date-time> Nullable

The last message in the thread was sent before this date.

SubtypeIds
Array of integers <int32> Nullable

The first message of the thread has one of the specified subTypeIds.

StartDate
string <date-time> Nullable
EndDate
string <date-time> Nullable
ThreadId
integer <int32> Nullable
IsRead
boolean Nullable
IsDeleted
boolean Nullable
Text
string Nullable
TextLength
integer <int32> Nullable

Number of characters returned from the body of each message. Enter 0 to return unlimited characters (full body of each message)

SortColumn
string Nullable

Sorting is possible by SubTypeId, CreateDate and Subject fields

SortOrder
string Nullable
PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.2/members/{memberId}/hierarchy/messages/threads
https://example-host/v2.2/members/{memberId}/hierarchy/messages/threads

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ParticipantsIds":
    [
    ],
  • "CreatedByIds":
    [
    ],
  • "DateFrom": "2024-01-21T09:44:05.2857011Z",
  • "DateTo": "2024-01-22T09:44:05.2857011Z",
  • "SubtypeIds":
    [
    ],
  • "StartDate": "2024-01-21T09:44:05.2856973Z",
  • "EndDate": "2024-01-22T09:44:05.2856977Z",
  • "ThreadId": 1,
  • "IsRead": false,
  • "IsDeleted": false,
  • "Text": "football",
  • "TextLength": 10,
  • "SortColumn": "Id",
  • "SortOrder": "desc",
  • "PageNumber": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Data":
    [
    ],
  • "PageCount": 1,
  • "Total": 2,
  • "PageNumber": 1,
  • "PageSize": 10
}

Retrieve messages sent to or by the specified contact

Retrieves messages sent to or by the specified contact. Further filtering supports retrieving “inbox” and “outbox” lists.

Authorizations:
path Parameters
contactId
required
integer <int32>

Contact id who sent or received the messages.

query Parameters
language
string

Language

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

A list of filters applied to messages like: text for search, createDate, isRead, isDeleted etc

StartDate
string <date-time> Nullable
EndDate
string <date-time> Nullable
ThreadId
integer <int32> Nullable
IsRead
boolean Nullable
IsDeleted
boolean Nullable
Text
string Nullable
TextLength
integer <int32> Nullable

Number of characters returned from the body of each message. Enter 0 to return unlimited characters (full body of each message)

SortColumn
string Nullable

Sorting is possible by SubTypeId, CreateDate and Subject fields

SortOrder
string Nullable
SenderIds
Array of integers <int32> Nullable
RecipientIds
Array of integers <int32> Nullable
SubtypeIds
Array of integers <int32> Nullable
PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.1/contacts/{contactId}/messages
https://example-host/v2.1/contacts/{contactId}/messages

Request samples

Content type
Copy
Expand all Collapse all
{
  • "StartDate": "2024-01-21T09:44:05.3054578Z",
  • "EndDate": "2024-01-22T09:44:05.3054584Z",
  • "ThreadId": 1,
  • "IsRead": false,
  • "IsDeleted": false,
  • "Text": "football",
  • "TextLength": 10,
  • "SortColumn": "Id",
  • "SortOrder": "desc",
  • "SenderIds":
    [
    ],
  • "RecipientIds":
    [
    ],
  • "SubtypeIds":
    [
    ],
  • "PageNumber": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Data":
    [
    ],
  • "PageCount": 1,
  • "Total": 3,
  • "PageNumber": 1,
  • "PageSize": 10
}

Get hierarchy messages by member id

Retrieves the messages that a member has access to through Hierarchy Access.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member who has access to through Hierarchy Access.

query Parameters
language
string

Language

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

A list of filters applied to messages like: text for search, CreateDate, IsActive, IsRead, IsDelete

SenderType
integer <int32> Nullable
ContactType
integer <int32> Nullable
StartDate
string <date-time> Nullable
EndDate
string <date-time> Nullable
ThreadId
integer <int32> Nullable
IsRead
boolean Nullable
IsDeleted
boolean Nullable
Text
string Nullable
TextLength
integer <int32> Nullable

Number of characters returned from the body of each message. Enter 0 to return unlimited characters (full body of each message)

SortColumn
string Nullable

Sorting is possible by SubTypeId, CreateDate and Subject fields

SortOrder
string Nullable
SenderIds
Array of integers <int32> Nullable
RecipientIds
Array of integers <int32> Nullable
SubtypeIds
Array of integers <int32> Nullable
PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.1/members/{memberId}/hierarchy/messages
https://example-host/v2.1/members/{memberId}/hierarchy/messages

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SenderType": 2,
  • "ContactType": 1,
  • "StartDate": "2024-01-21T09:44:05.3227759Z",
  • "EndDate": "2024-01-22T09:44:05.3227763Z",
  • "ThreadId": 1,
  • "IsRead": false,
  • "IsDeleted": false,
  • "Text": "football",
  • "TextLength": 10,
  • "SortColumn": "Id",
  • "SortOrder": "desc",
  • "SenderIds":
    [
    ],
  • "RecipientIds":
    [
    ],
  • "SubtypeIds":
    [
    ],
  • "PageNumber": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Data":
    [
    ],
  • "PageCount": 1,
  • "Total": 3,
  • "PageNumber": 1,
  • "PageSize": 10
}

Retrieve messages sent to or by the specified member

Retrieves messages sent to or by the specified member. Further filtering supports retrieving “inbox” and “outbox” lists.

Authorizations:
path Parameters
memberId
required
integer <int32>

Member id who sent or received the messages.

query Parameters
language
string

Language

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

A list of filters applied to messages like: text for search, createDate, isRead, isDeleted etc

SenderType
integer <int32> Nullable
ContactType
integer <int32> Nullable
StartDate
string <date-time> Nullable
EndDate
string <date-time> Nullable
ThreadId
integer <int32> Nullable
IsRead
boolean Nullable
IsDeleted
boolean Nullable
Text
string Nullable
TextLength
integer <int32> Nullable

Number of characters returned from the body of each message. Enter 0 to return unlimited characters (full body of each message)

SortColumn
string Nullable

Sorting is possible by SubTypeId, CreateDate and Subject fields

SortOrder
string Nullable
SenderIds
Array of integers <int32> Nullable
RecipientIds
Array of integers <int32> Nullable
SubtypeIds
Array of integers <int32> Nullable
PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.1/members/{memberId}/messages
https://example-host/v2.1/members/{memberId}/messages

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SenderType": 2,
  • "ContactType": 1,
  • "StartDate": "2024-01-21T09:44:05.340033Z",
  • "EndDate": "2024-01-22T09:44:05.3400333Z",
  • "ThreadId": 1,
  • "IsRead": false,
  • "IsDeleted": false,
  • "Text": "football",
  • "TextLength": 10,
  • "SortColumn": "Id",
  • "SortOrder": "desc",
  • "SenderIds":
    [
    ],
  • "RecipientIds":
    [
    ],
  • "SubtypeIds":
    [
    ],
  • "PageNumber": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Data":
    [
    ],
  • "PageCount": 1,
  • "Total": 3,
  • "PageNumber": 1,
  • "PageSize": 10
}

Send message to all contacts RM

Sends a new message to all RMs of a specific contact.

Authorizations:
path Parameters
contactId
required
integer <int32>

Contact id who sends the message.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Send message parameter

SubtypeId
integer <int32>

The subtype identifier of the message.

CustomAttributes
string Nullable

The custom attributes of the message represented as json.

Subject
string Nullable

The subject of the message. It will be sanitized in order to avoid XSS attacks.

Text
string Nullable

The content/text body of the message. It will be sanitized in order to avoid XSS attacks.

Attachments
Array of objects (MessageAttachment) Nullable

The list of the message attachments (file name and content of the file).

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.0/contacts/{contactId}/messages/send
https://example-host/v2.0/contacts/{contactId}/messages/send

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SubtypeId": 1,
  • "CustomAttributes": "{\"RecipientClientFilters\" : [19, 20]}",
  • "Subject": "2018 FIFA WORLD CUP RUSSIA",
  • "Text": "The 2018 FIFA World Cup is the 21st FIFA World Cup, a quadrennial international football tournament contested by the men's national teams of the member associations of FIFA",
  • "Attachments":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "RemovedElements":
    [
    ],
  • "MessageId": 1,
  • "MessageThreadId": 1
}

Send message to member

Sends a new message to a specific member.

Authorizations:
path Parameters
contactId
required
integer <int32>

Contact id who sends the message.

memberId
required
integer <int32>

Member id who receives the message.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Send message parameter

SubtypeId
integer <int32>

The subtype identifier of the message.

CustomAttributes
string Nullable

The custom attributes of the message represented as json.

Subject
string Nullable

The subject of the message. It will be sanitized in order to avoid XSS attacks.

Text
string Nullable

The content/text body of the message. It will be sanitized in order to avoid XSS attacks.

Attachments
Array of objects (MessageAttachment) Nullable

The list of the message attachments (file name and content of the file).

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.0/contacts/{contactId}/members/{memberId}/messages/send
https://example-host/v2.0/contacts/{contactId}/members/{memberId}/messages/send

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SubtypeId": 1,
  • "CustomAttributes": "{\"RecipientClientFilters\" : [19, 20]}",
  • "Subject": "2018 FIFA WORLD CUP RUSSIA",
  • "Text": "The 2018 FIFA World Cup is the 21st FIFA World Cup, a quadrennial international football tournament contested by the men's national teams of the member associations of FIFA",
  • "Attachments":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "RemovedElements":
    [
    ],
  • "MessageId": 1,
  • "MessageThreadId": 1
}

Send message

Sends a new message to a subset of recipients. The list of the recipients is mandatory.

Authorizations:
path Parameters
memberId
required
integer <int32>

Member identifier who sends the message.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Send message parameter including the list of the recipients.

RecipientIds
Array of integers <int32> Nullable

The person identifiers who receive the message. The recipients can be both contacts and members. The message will be sent to all recipients.

SubtypeId
integer <int32>

The subtype identifier of the message.

CustomAttributes
string Nullable

The custom attributes of the message represented as json.

Subject
string Nullable

The subject of the message. It will be sanitized in order to avoid XSS attacks.

Text
string Nullable

The content/text body of the message. It will be sanitized in order to avoid XSS attacks.

Attachments
Array of objects (MessageAttachment) Nullable

The list of the message attachments (file name and content of the file).

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.0/members/{memberId}/messages/send
https://example-host/v2.0/members/{memberId}/messages/send

Request samples

Content type
Copy
Expand all Collapse all
{
  • "RecipientIds":
    [
    ],
  • "SubtypeId": 1,
  • "CustomAttributes": "{\"RecipientClientFilters\" : [19, 20]}",
  • "Subject": "2018 FIFA WORLD CUP RUSSIA",
  • "Text": "The 2018 FIFA World Cup is the 21st FIFA World Cup, a quadrennial international football tournament contested by the men's national teams of the member associations of FIFA",
  • "Attachments":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "RemovedElements":
    [
    ],
  • "MessageId": 1,
  • "MessageThreadId": 1
}

Reply message

Replies with a new message to a sender of a given message.

Authorizations:
path Parameters
personId
required
integer <int32>

The person recipient of the original message or the sender of the new message.

messageId
required
integer <int64>

The original message identifier.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Reply message parameter.

Subject
string Nullable

The subject of the message. It will be sanitized in order to avoid XSS attacks.

Text
string Nullable

The content/text body of the message. It will be sanitized in order to avoid XSS attacks.

Attachments
Array of objects (MessageAttachment) Nullable

The list of the message attachments (file name and content of the file).

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.0/persons/{personId}/messages/{messageId}/reply
https://example-host/v2.0/persons/{personId}/messages/{messageId}/reply

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Subject": "2018 FIFA WORLD CUP RUSSIA",
  • "Text": "The 2018 FIFA World Cup is the 21st FIFA World Cup, a quadrennial international football tournament contested by the men's national teams of the member associations of FIFA",
  • "Attachments":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success",
  • "RemovedElements":
    [
    ],
  • "MessageId": 1,
  • "MessageThreadId": 1
}

Compliance

Retrieve calculated and chosen risk

Retrieves calculated and chosen risk for the contact and for the groups that the specific contact is part of.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact

query Parameters
language
string

The language of the localized resources.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/riskcategories
https://example-host/v1.0/contacts/{contactId}/riskcategories

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CalculatedRiskCategory":
    {
    },
  • "ChosenRiskCategory":
    {
    },
  • "GroupsRiskCategories":
    [
    ]
}

Calculate risk profile

Returns the risk profile associated with the user's last complete/incomplete questionnaire. If the contact has no questionnaire available, a validation exception will be returned. If a groupKey is specified, only the risk details for that group are returned. If riskAccepted is set to false, the risk will not be automatically assigned to the contact (the client would need to POST to contacts/acceptrisk separately in order to make this association)

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact

query Parameters
productId
required
integer <int32>

The id of the product

completeQuestionnaire
required
boolean

The flag which specifies whether the questionnaire is completed or not

riskAccepted
required
boolean

The flag which specifies whether the risk will be automatically assigned to the contact or not.

language
required
string

The language of the questionnaire

groupKey
string

The key of the group for which risk details are returned

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/calculaterisk
https://example-host/v1.0/contacts/{contactId}/calculaterisk

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Score": 20,
  • "RiskCategory":
    {
    },
  • "Groups":
    [
    ]
}

Get contact constraints

Gets the constraints of a contact.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v3.0/contacts/{contactId}/optimizationconstraints
https://example-host/v3.0/contacts/{contactId}/optimizationconstraints

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "OptimizationConstraints":
    {
    }
}

Get questionnaires

Returns all active questionnaires filtered by the optional parameters. If 'productId' is not passed, the results include only questionnaires that are not associated with any product. If 'ContactTypeId' is not passed, the results include questionnaires of both types (privates, corporates). If 'QuestionnaireTypeId' is not passed, the results include questionnaires of all questionnaire types available. Some answers might have follow-up steps which should translate into the client having to present an additional group of questions if that specific answer was picked by the contact.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Language
required
string non-empty

The returned language of the questionnaire's resources

ProductId
integer <int32> Nullable

The id of the product related to a questionnaire

ContactTypeId
integer <int32> Nullable

The id of the contact type related to a questionnaire

QuestionnaireTypeId
integer <int32> Nullable

The id of the questionnaire type related to a questionnaire

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.0/questionnaires
https://example-host/v2.0/questionnaires

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Language": "en",
  • "ProductId": 1,
  • "ContactTypeId": 1,
  • "QuestionnaireTypeId": 1
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Save contact questionnaire

Stores either a complete or an incomplete questionnaire. The questionnaire should be passed in full, regardless of it being complete or not in terms of answered questions. Each of the answered questions should have either a list of Ids (for single/multi-answer questions) or a Value (for free-text questions) as Value. The response will state whether or not the questionnaire was complete in terms of each question having an answer and, if not, include details as to which QuestionIds caused the questionnaire to be deemed as incomplete. The response can also be a validation exception (HTTP 422) but only if the answer type does not match the question type (e.g.: multiple answers for a single answer type question) or if the answerIds provided are not part the question's answers.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact identifier for which the questionnaire is passed.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The questionnaire passed in full, regardless of it being complete or not in terms of answered questions.

Id
integer <int32>
Name
string Nullable
Description
string Nullable
ContactTypeId
integer <int32> Nullable
ContactTypeName
string Nullable
ProductId
integer <int32> Nullable
QuestionnaireTypeId
integer <int32> Nullable
Groups
Array of objects (QuestionGroup) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/questionnaires
https://example-host/v1.0/contacts/{contactId}/questionnaires

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "Description": "string",
  • "ContactTypeId": 0,
  • "ContactTypeName": "string",
  • "ProductId": 0,
  • "QuestionnaireTypeId": 0,
  • "Groups":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "IsComplete": false,
  • "IncompleteQuestionIds":
    [
    ]
}

Returns a contact's questionnaire

Returns the contact’s latest questionnaire which answers the conditions provided. If no questionnaire was found, a new questionnaire will be returned.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The filter

Language
required
string non-empty

The returned language of the questionnaire's resources in case a new questionnaire is returned.

ProductId
integer <int32> Nullable

Returns a questionnaire associated with this product. If no product was specified, the latest submission which answers other conditions will be returned.

IsComplete
boolean

Returns the latest partial/completed questionnaire which answers other conditions. If submission status is not specified, the latest submission which answers other conditions will be returned.

QuestionnaireTypeId
integer <int32> Nullable

Returns a questionnaire associated with this questionnaire type. If no questionnaire type was specified, the latest submission which answers other conditions will be returned.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/questionnaires/search
https://example-host/v1.1/contacts/{contactId}/questionnaires/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Language": "string",
  • "ProductId": 0,
  • "IsComplete": true,
  • "QuestionnaireTypeId": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Questionnaire":
    {
    },
  • "RiskCategory":
    {
    },
  • "Score": 0,
  • "IsComplete": true,
  • "CreatedDate": "2024-01-23T15:03:00Z",
  • "ExpiryDate": "2024-01-23T15:03:00Z"
}

Accept risk

Attaches the calculated risk to the contact's profile. In order for this action to be successful, the contact needs to have a risk associated with his questionnaire; otherwise, a validation exception is returned.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/acceptrisk
https://example-host/v1.0/contacts/{contactId}/acceptrisk

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Set contact chosen risk

Stores the contact's chosen risk. A validation exception is thrown if the chosenRiskId is invalid.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact

chosenRiskId
required
integer <int32>

The id of the risk category that whill be set to the contact

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/setchosenrisk/{chosenRiskId}
https://example-host/v1.0/contacts/{contactId}/setchosenrisk/{chosenRiskId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

ContactInteraction

Get interaction by id

A person can retrieve an interaction, if they have access to it. A contact can retrieve an interaction if they are participating in it. A member can retrieve an interaction in the following cases: a) member has initiated the interaction or has hierarchy access to a member who initiated it, b) member has created the interaction or has hierarchy access to a member who created it, c) member is a participant in the interaction or has hierarchy access to at least a member who is participant in it, d) a contact (or contacts) that the member has access to is a participant to the interaction.

Authorizations:
path Parameters
id
required
integer <int32>

The id of the interaction

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/interactions/{id}
https://example-host/v1.0/interactions/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "DateFrom": "2020-01-10T12:00:00",
  • "DateTo": "2020-01-10T13:00:00",
  • "InitiatedBy": 1,
  • "CreatedBy": 1,
  • "OtherParticipants": "James Deer, Albert Johnson",
  • "InteractionTypeId": 15,
  • "InteractionTopicId": 10,
  • "MessageThreadId": 1500,
  • "FirstReminder": "30 11 1 1 *",
  • "SecondReminder": "45 11 1 1 *",
  • "IsCanceled": false,
  • "IsEditable": true,
  • "EmailDataIsInsufficient": false,
  • "Participants":
    [
    ]
}

Return the journals of an interaction

Returns the journals of an interaction. A member who can see an interaction, can use this endpoint to retrieve the list of journals related to the interaction. Optionally, can pass the contactId to filter only the journals related to the contact. Contacts cannot use this endpoint.

Authorizations:
path Parameters
interactionId
required
integer <int32>

The id of the interaction

query Parameters
contactId
integer <int32>

The id of a contact. If passed, it filters journals that are created for the contact (CreatedForId)

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/interactions/{interactionId}/journals
https://example-host/v1.0/interactions/{interactionId}/journals

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    },
  • {
    }
]

Return the profiles of the contact's interacted advisors

Return member profiles of members which interacted with the specified contact

Authorizations:
path Parameters
contactId
required
integer <int32>

Contact Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/interactedmemberprofiles
https://example-host/v1.0/contacts/{contactId}/interactedmemberprofiles

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "InteractedMemberProfiles":
    [
    ]
}

Edit an existing journal

Edits a journal. Only the creator of the journal can edit it.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contactId the journal was created for

journalId
required
integer <int32>

The journalId to be edited

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the journal to edit

Content
required
string non-empty
RelatedTo
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/contacts/{contactId}/journals/{journalId}
https://example-host/v1.0/contacts/{contactId}/journals/{journalId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Content": "string",
  • "RelatedTo": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "UId": "a4a9c411-dbcd-4bda-88c3-f24156578a06",
  • "Content": "Note for the contact",
  • "CreatorId": 1,
  • "CreateDate": "2024-01-22T09:44:05.5615217Z",
  • "RelatedTo": "[1,2,3,4]",
  • "CreatedForId": 5
}

Accept/Reject participation in interaction

A person (member or contact) who participates in an interaction can accept or reject his/her participation to it.

Authorizations:
path Parameters
personId
required
integer <int32>

The person id who is participant of interaction

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the interaction to update

InteractionId
integer <int32>
IsAccepted
boolean

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/persons/{personId}/interactions/accept
https://example-host/v1.0/persons/{personId}/interactions/accept

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InteractionId": 0,
  • "IsAccepted": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Edit an interaction

Edits an interaction. Contacts cannot edit interactions, while members can edit interactions if they are the creator or initiator, as well as if they have hierarchy access to a contact that is the creator/initiator of an interaction. Only a few parameters of an interaction can be edited; in the case the rest of the parameters need to be modified, the correct approach is to cancel the interaction and create a new one with the correct values.

Authorizations:
path Parameters
id
required
integer <int32>

The id of the interaction to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

DateFrom
string <date-time> Nullable

The starting date and time of the interaction (YYYY-MM-DD HH:MM).

DateTo
string <date-time> Nullable

The ending date and time of the interaction (YYYY-MM-DD HH:MM).

FirstReminder
string Nullable

The date and time for the first reminder for the interaction (YYYY-MM-DD HH:MM).

SecondReminder
string Nullable

The date and time for the second reminder for the interaction (YYYY-MM-DD HH:MM).

IsCanceled
boolean Nullable

Defines the status of the interaction (Valid/Canceled).

SendEmail
boolean

Send interaction calendar details to contact participants

UpdateProperties
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/interactions/{id}
https://example-host/v1.1/interactions/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "DateFrom": "2020-01-10T12:00:00",
  • "DateTo": "2020-01-10T13:00:00",
  • "FirstReminder": "30 11 1 1 *",
  • "SecondReminder": "45 11 1 1 *",
  • "IsCanceled": false,
  • "SendEmail": false,
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "DateFrom": "2020-01-10T12:00:00",
  • "DateTo": "2020-01-10T13:00:00",
  • "InitiatedBy": 1,
  • "CreatedBy": 1,
  • "OtherParticipants": "James Deer, Albert Johnson",
  • "InteractionTypeId": 15,
  • "InteractionTopicId": 10,
  • "MessageThreadId": 1500,
  • "FirstReminder": "30 11 1 1 *",
  • "SecondReminder": "45 11 1 1 *",
  • "IsCanceled": false,
  • "IsEditable": true,
  • "EmailDataIsInsufficient": false,
  • "Participants":
    [
    ]
}

Search journals of a contact

Search journals of a contact with filtering and sorting

Authorizations:
path Parameters
contactId
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
UId
string <uuid> Nullable
CreatedByIds
Array of integers <int32> Nullable
CreateDateFrom
string <date-time> Nullable
CreateDateTo
string <date-time> Nullable
Content
string Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/journals/search
https://example-host/v1.1/contacts/{contactId}/journals/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "UId": "39c50079-751e-400e-a258-b8e6aaba12a4",
  • "CreatedByIds":
    [
    ],
  • "CreateDateFrom": "2000-06-20T00:00:00",
  • "CreateDateTo": "2010-06-20T00:00:00",
  • "Content": "Note",
  • "SortBy": "Id",
  • "SortOrder": "Ascending",
  • "Page": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Create a journal for a contact

Creates a journal for a contact. The 'contactId' in the signature identifies the contact for whom the journal is created.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contact id for whom create a journal

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the journal to create

Content
required
string non-empty
RelatedTo
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/journal
https://example-host/v1.0/contacts/{contactId}/journal

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Content": "string",
  • "RelatedTo": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "UId": "030c8421-cb0c-4a5d-8ccf-9b61d7d5dbed",
  • "Content": "Note for the contact",
  • "CreatorId": 1,
  • "CreateDate": "2024-01-22T09:44:05.6011255Z",
  • "RelatedTo": "[1,2,3,4]",
  • "CreatedForId": 5
}

Get journals of a member

Returns the journals of a member (journals of all contacts the member has direct access to) for a provided time range

Authorizations:
path Parameters
memberId
required
integer <int32>

Member id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the request

FromDate
required
string <date-time>

The datetime from which to search

ToDate
required
string <date-time>

The datetime to which to search

TextLength
integer <int32> Nullable

The length of the 'Content' text to be returned (0 means the whole 'Content' will be returned, positive integers truncate the 'Content' to the same size)

SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.2/members/{memberId}/journals
https://example-host/v1.2/members/{memberId}/journals

Request samples

Content type
Copy
Expand all Collapse all
{
  • "FromDate": "2024-01-23T15:03:00Z",
  • "ToDate": "2024-01-23T15:03:00Z",
  • "TextLength": 0,
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 1,
  • "PageSize": 10,
  • "PageCount": 2,
  • "TotalCount": 15
}

Create an interaction

Creates an interaction related to 1 or more contacts. A member can create an interaction for one or more contacts that they have access to, while a contact can create an interaction only for himself/herself.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the interaction to create

DateFrom
string <date-time>

The starting date and time of the interaction (YYYY-MM-DD HH:MM).

DateTo
string <date-time>

The ending date and time of the interaction (YYYY-MM-DD HH:MM).

InitiatedById
integer <int32>

The person who initiated the interaction (personId).

Participants
Array of integers <int32> Nullable

The list of participants for the interaction (list of person ids). A contact can only add themselves in the list (the advisor or the Helpdesk member will automatically be added as per the global settings). A member can add any contact(s) that they have access to plus any member(s) without restriction.

OtherParticipants
string Nullable

Other participants for the interaction - not in the system.

InteractionTypeId
integer <int32>

The type of the interaction (id).

InteractionTopicId
integer <int32>

The topic of the interaction (id).

MessageThreadId
integer <int32> Nullable

The id of the message thread related to the interaction.

FirstReminder
string <date-time> Nullable

The date and time for the first reminder for the interaction (YYYY-MM-DD HH:MM).

SecondReminder
string <date-time> Nullable

The date and time for the second reminder for the interaction (YYYY-MM-DD HH:MM).

SendEmail
boolean

Send interaction calendar details to contact participants

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/interactions
https://example-host/v1.0/interactions

Request samples

Content type
Copy
Expand all Collapse all
{
  • "DateFrom": "2020-01-10T12:00:00",
  • "DateTo": "2020-01-10T13:00:00",
  • "InitiatedById": 1,
  • "Participants":
    [
    ],
  • "OtherParticipants": "James Deer, Albert Johnson",
  • "InteractionTypeId": 10,
  • "InteractionTopicId": 12,
  • "MessageThreadId": 1500,
  • "FirstReminder": "2020-01-10T11:30:00",
  • "SecondReminder": "2020-01-10T11:45:00",
  • "SendEmail": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "DateFrom": "2020-01-10T12:00:00",
  • "DateTo": "2020-01-10T13:00:00",
  • "InitiatedBy": 1,
  • "CreatedBy": 1,
  • "OtherParticipants": "James Deer, Albert Johnson",
  • "InteractionTypeId": 15,
  • "InteractionTopicId": 10,
  • "MessageThreadId": 1500,
  • "FirstReminder": "30 11 1 1 *",
  • "SecondReminder": "45 11 1 1 *",
  • "IsCanceled": false,
  • "EmailDataIsInsufficient": false
}

Return the interactions of a contact filtered by given criteria

Returns a list of a contact's interactions based on the criteria entered. A contact can retrieve interactions only if they are participants. A member can retrieve interactions if they have hierarchy access to the contactId. Depending on business rule defined in the Global Settings, the details of some interactions will be hidden. No journals are returned.

Authorizations:
path Parameters
contactId
required
integer <int32>

The contactId the interaction was created for

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The search filter with parameters

DateFrom
string <date-time> Nullable

The starting date and time of an interaction (YYYY-MM-DD HH:MM). When the time is not defined, the endpoint assumes 00:00 by default.

DateTo
string <date-time> Nullable

The ending date and time of an interaction (YYYY-MM-DD HH:MM). When the time is not defined, the endpoint assumes 00:00 by default.

IncludePartialDateMatch
boolean

Set to true if specifying a date range and want to include interactions which are not fully within the date range.

InitiatedById
integer <int32> Nullable

The person who initiated an interaction (personId)

CreatedBy
integer <int32> Nullable

The person who created an interaction (personId)

Participants
Array of integers <int32> Nullable

The list of participants of an interaction (list of person ids)

InteractionTypeId
integer <int32> Nullable

The type of an interaction (id)

InteractionTopicId
integer <int32> Nullable

The topic of an interaction (id)

IsCanceled
boolean Nullable

The parameter that defines is an interaction is active or canceled

SortColumn
string Nullable

The result sorted by column

SortDescending
boolean Nullable

The result sorted descending

PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/interactions
https://example-host/v1.0/contacts/{contactId}/interactions

Request samples

Content type
Copy
Expand all Collapse all
{
  • "DateFrom": "2020-11-25T11:00:00",
  • "DateTo": "2020-11-25T12:00:00",
  • "IncludePartialDateMatch": false,
  • "InitiatedById": 1,
  • "CreatedBy": 5,
  • "Participants":
    [
    ],
  • "InteractionTypeId": 10,
  • "InteractionTopicId": 12,
  • "IsCanceled": false,
  • "SortColumn": "Id",
  • "SortDescending": true,
  • "PageNumber": 1,
  • "PageSize": 1000
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Interactions":
    [
    ],
  • "TotalNumberOfResults": 3
}

Connect journals to an interaction

Connects one or more (existing) journals to an interaction. Members that have access to see an interaction are allowed to connect journals to the interaction. For example, a member can create a journal for a contact (using POST /v1.0/contacts/{contactId}/journal) and then call this endpoint to connect the journal to the interaction.

Authorizations:
path Parameters
interactionId
required
integer <int32>

The id of the interaction

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Ids of the journals to connect to the interaction

JournalIds
Array of integers <int32> Nullable

The id/ids of the journals to connect to the interaction.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/interactions/{interactionId}/journals/link
https://example-host/v1.0/interactions/{interactionId}/journals/link

Request samples

Content type
Copy
Expand all Collapse all
{
  • "JournalIds":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Remove a journal from an interaction

Removes the connection of an existing journal to an interaction. Members that have access to edit an interaction are allowed to remove the connection to the interaction. Contacts do not have the ability for such action.

Authorizations:
path Parameters
interactionId
required
integer <int32>

The id of the interaction

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Id of a journal to remove from an interaction

JournalId
integer <int32>

The id of the journal to remove from the interaction.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/interactions/{interactionId}/journals/unlink
https://example-host/v1.0/interactions/{interactionId}/journals/unlink

Request samples

Content type
Copy
Expand all Collapse all
{
  • "JournalId": 1
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Return the interactions of a member filtered by given criteria

Returns a list of a member's interactions based on the criteria entered. Members can retrieve interactions if they have initiated or created them, as well as when they are participants. No journals are returned.
When the DateFrom parameter is not passed, the default behavior of the endpoint is to return interactions that take place between today() and the future.
When the IsCanceled parameter is not passed, the default behavior of the endpoint is to return only the 'active' interactions.

Authorizations:
path Parameters
memberId
required
integer <int32>

The memberId the interaction is creator or initiator or participant

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The search filter with parameters

DateFrom
string <date-time> Nullable

The starting date and time of an interaction (YYYY-MM-DD HH:MM). When the time is not defined, the endpoint assumes 00:00 by default.

DateTo
string <date-time> Nullable

The ending date and time of an interaction (YYYY-MM-DD HH:MM). When the time is not defined, the endpoint assumes 00:00 by default.

IncludePartialDateMatch
boolean

Set to true if specifying a date range and want to include interactions which are not fully within the date range.

InitiatedById
integer <int32> Nullable

The person who initiated an interaction (personId)

CreatedBy
integer <int32> Nullable

The person who created an interaction (personId)

Participants
Array of integers <int32> Nullable

The list of participants of an interaction (list of person ids)

InteractionTypeId
integer <int32> Nullable

The type of an interaction (id)

InteractionTopicId
integer <int32> Nullable

The topic of an interaction (id)

IsCanceled
boolean Nullable

The parameter that defines is an interaction is active or canceled

SortColumn
string Nullable

The result sorted by column

SortDescending
boolean Nullable

The result sorted descending

PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.2/members/{memberId}/interactions
https://example-host/v1.2/members/{memberId}/interactions

Request samples

Content type
Copy
Expand all Collapse all
{
  • "DateFrom": "2020-11-25T11:00:00",
  • "DateTo": "2020-11-25T12:00:00",
  • "IncludePartialDateMatch": false,
  • "InitiatedById": 1,
  • "CreatedBy": 5,
  • "Participants":
    [
    ],
  • "InteractionTypeId": 10,
  • "InteractionTopicId": 12,
  • "IsCanceled": false,
  • "SortColumn": "Id",
  • "SortDescending": true,
  • "PageNumber": 1,
  • "PageSize": 1000
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Interactions":
    [
    ],
  • "TotalNumberOfResults": 2
}

Currencies

Delete a currency

Deletes a currency.

Authorizations:
path Parameters
currencyId
required
integer <int32>

The id of the currency.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/currencies/{currencyId}
https://example-host/v1.0/currencies/{currencyId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ResultTypes":
    [
    ],
  • "DeletedSuccessfully": true
}

Get currency by id

Gets the details of a currency.

Authorizations:
path Parameters
currencyId
required
integer <int32>

The id of the currency.

query Parameters
language
string

The language of the localized resource

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/currencies/{currencyId}
https://example-host/v1.0/currencies/{currencyId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string",
  • "Name": "string",
  • "CurrencyCode": "string",
  • "Symbol": "string",
  • "RiskFreeRate": 0,
  • "SubCurrencyName": "string",
  • "SubCurrencyFactor": 0
}

Update a currency

Updates a currency

Authorizations:
path Parameters
currencyId
required
integer <int32>

The id of the currency.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

Name
string Nullable
CurrencyCode
string Nullable
Symbol
string Nullable
RiskFreeRate
number <double> Nullable
SubCurrencyName
string Nullable
SubCurrencyFactor
number <double> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/currencies/{currencyId}
https://example-host/v1.0/currencies/{currencyId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "CurrencyCode": "string",
  • "Symbol": "string",
  • "RiskFreeRate": 0,
  • "SubCurrencyName": "string",
  • "SubCurrencyFactor": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ResultTypes":
    [
    ],
  • "UpdatedSuccessfully": true
}

Get currency exchange rates

Retrieves the latest currency exchange rates for the currency pairs specified in the parameters. Automatically tries to convert exchange rates that are not available for the requested currency pairs by using indirect quotes (if available).

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

CurrencyExchangeRateRequests
required
Array of objects (CurrencyExchangeRateRequest)
PriceDate
string <date-time> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/currencies/exchangerates
https://example-host/v1.0/currencies/exchangerates

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyExchangeRateRequests":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CurrencyExchangeRates":
    [
    ]
}

Update fx rates history

Loads and saves all the available currencies fx rates from a price feed provider given a list of currency pairs. FX Rates history queried for a currency pair varies depending on the currency pair latest valuation date.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Contains the list of currency pairs to import FX rates history for. If an empty currency pair list is passed then this will trigger the import of fx rates history for all currency pairs from the database which have an IntegrationIdentifier and an IntegrationIdentifierType.

CurrenciesPairs
Array of objects (CurrencyPair) Nullable

The list of currencies pairs to import FX rates history for

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/currencies/updatefxrateshistory
https://example-host/v1.1/currencies/updatefxrateshistory

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrenciesPairs":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "LongRunningRequestId": "string"
}

Calculate the performance for each set of passed cross-rates

For each currency pair return the latest rate and the rate latest date and calculate the 1Day and YTD performance of the currency cross-rate

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
CurrencyExchangeRateRequests
required
Array of objects (CurrencyExchangeRateRequest)
PriceDate
string <date-time> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/currencies/exchangerates/kpi/calculate
https://example-host/v1.0/currencies/exchangerates/kpi/calculate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyExchangeRateRequests":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CurrencyExchangeRatesPerformance":
    [
    ]
}

Update latest fx rates

Saves the latest fx rates provided by the User. Note that these are not saved in the fx rates history.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Contains a list of currency pairs, each pair with the newest rate.

Array
BaseIsoCode
string Nullable

The ISO code of the base currency

QuoteIsoCode
string Nullable

The ISO code of the quote currency

Rate
number <double>

The rate of the fx pair

Date
string <date-time>

The datetime of the rate of the fx pair

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/currencies/updatefxrateslatest
https://example-host/v1.0/currencies/updatefxrateslatest

Request samples

Content type
Copy
Expand all Collapse all
[
  • {
    },
  • {
    }
]

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Message": "string"
}

Get exchange rate historical prices

Returns the historical prices of the passed currency cross-pair.
The user optionally can pass a date range of interest for which to obtain these.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO.

BaseCurrencyCode
required
string non-empty

The ISO code of the currency pair base currency

QuoteCurrencyCode
required
string non-empty

The ISO code of the currency pair quote currency

FromDate
string <date-time> Nullable
ToDate
string <date-time> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/currencies/exchangerates/pricehistory
https://example-host/v1.0/currencies/exchangerates/pricehistory

Request samples

Content type
Copy
Expand all Collapse all
{
  • "BaseCurrencyCode": "EUR",
  • "QuoteCurrencyCode": "USD",
  • "FromDate": "2022-01-22T09:44:05.7562075Z",
  • "ToDate": "2023-12-22T09:44:05.7562089Z"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "HistoricalData":
    [
    ]
}

Create a new currency

Creates new currency

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

Name
string Nullable
CurrencyCode
string Nullable
Symbol
string Nullable
RiskFreeRate
number <double> Nullable
SubCurrencyName
string Nullable
SubCurrencyFactor
number <double> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/currencies
https://example-host/v1.0/currencies

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "string",
  • "CurrencyCode": "string",
  • "Symbol": "string",
  • "RiskFreeRate": 0,
  • "SubCurrencyName": "string",
  • "SubCurrencyFactor": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ResultTypes":
    [
    ],
  • "CreatedSuccessfully": true,
  • "Id": 0,
  • "UId": "string"
}

Search currencies

Searches currencies

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The search parameters.

Ids
Array of integers <int32> Nullable
Name
string Nullable
ThreeLetterIsoCode
string Nullable
Symbol
string Nullable
RiskFreeRateFrom
number <double> Nullable
RiskFreeRateTo
number <double> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/currencies/search
https://example-host/v1.0/currencies/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Ids":
    [
    ],
  • "Name": "Swiss",
  • "ThreeLetterIsoCode": "CH",
  • "Symbol": "€",
  • "RiskFreeRateFrom": 10,
  • "RiskFreeRateTo": 20,
  • "SortBy": "Id",
  • "SortOrder": "Ascending",
  • "Page": 1,
  • "PageSize": 10
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 1,
  • "PageSize": 10,
  • "PageCount": 10,
  • "TotalCount": 100
}

DataAggregation

Retrieves flat data for a member

Preview API
Additiv publishes preview features as APIs for feedback and early adopters.Preview APIs may change or discontinue at any time without notice.
We also may choose not to release a Preview into GA.

Retrieves the latest flat member data for a member id in the application currency.

Authorizations:
path Parameters
memberId
required
integer <int32>

The id of the member

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/data/flat/members/{memberId}
https://example-host/v1.0/data/flat/members/{memberId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ReferenceId": 4,
  • "CreateDate": "2019-11-29T00:00:00",
  • "Data": "{\"ContactId\":4,\"Date\":\"2019-09-19T00:00:00\",\"Portfolios\":[{\"Id\":1,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":483032.800000000000,\"Cash\":352319.300000000000,\"Investment\":130713.500000000000},\"KPI\":{\"Risk\":0.187089534319,\"InceptionPerf\":0.000501779870,\"DailyPerf\":0.000001358000,\"SharpeRatio\":0.002682030676,\"DailyPerfAmount\":3.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.1711283995,\"Quantity\":5167.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.2402913632,\"Quantity\":1026.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.3179702496,\"Quantity\":10265.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0118283892,\"Quantity\":1.000000,\"AccountId\":147}},{\"Instrument\":{\"Id\":112,\"Weight\":0.2587815982,\"Quantity\":1.000000,\"AccountId\":27}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.3179702496}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.4232481519}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.2587815982}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.7597086365}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.2402913632}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.8288716002}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.1711283995}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.3179702496}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.4114197627}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.2706099874}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.2706099874}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.1711283995}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.2402913632}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.3179702496}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.7293900123}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.2706099874}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":9,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":1230354.679000000000,\"Cash\":792002.149000000000,\"Investment\":438352.530000000000},\"KPI\":{\"Risk\":0.101329210276,\"InceptionPerf\":0.014927129359,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.147313191510,\"DailyPerfAmount\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.0588822079,\"Quantity\":407.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0653987800,\"Quantity\":4537.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":33,\"Isin\":\"ES0178430E18\",\"Weight\":0.0586347215,\"Quantity\":11244.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0601777692,\"Quantity\":6000.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":55,\"Isin\":\"LU0048579410\",\"Weight\":0.0261802556,\"Quantity\":13500.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":56,\"Isin\":\"LU0048580004\",\"Weight\":0.0105686597,\"Quantity\":24.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":57,\"Isin\":\"LU0048581077\",\"Weight\":0.1225807099,\"Quantity\":515.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":58,\"Isin\":\"LU0048584766\",\"Weight\":0.0770184416,\"Quantity\":800.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0690991804,\"Quantity\":1930.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0566909698,\"Quantity\":1125.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":103,\"Isin\":\"US5949181045\",\"Weight\":0.0384868695,\"Quantity\":3250.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":110,\"Weight\":0.0580259507,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0928866463,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":112,\"Weight\":0.0980917145,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":113,\"Weight\":0.0455195570,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":114,\"Weight\":0.0617575657,\"Quantity\":1.000000,\"AccountId\":3}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.1169081586}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.5806014125}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.1952133055}},{\"Currency\":{\"Id\":4,\"Code\":\"GBP\",\"Weight\":0.0455195570}},{\"Currency\":{\"Id\":5,\"Code\":\"JPY\",\"Weight\":0.0617575657}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9433090295}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0566909698}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9346012193}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0653987800}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.0588822079}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.2793891100}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.3054472472}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.3562814342}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.3562814342}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0601777692}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0653987800}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.3054472472}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0566909698}},{\"Country\":{\"Id\":66,\"Name\":\"Spain\",\"Weight\":0.0586347215}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.0588822079}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.0384868695}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.3382713179}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.3054472472}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.3562814342}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.2500000000}},{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":33,\"Isin\":\"ES0178430E18\",\"Weight\":0.1500000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":103,\"Isin\":\"US5949181045\",\"Weight\":0.3000000000}},{\"Instrument\":{\"Id\":110,\"Weight\":0.1500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.4000000000}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.1500000000}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.4500000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9500000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0500000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9500000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0500000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.2500000000}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.6000000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.1500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.1500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":66,\"Name\":\"Spain\",\"Weight\":0.1500000000}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.2500000000}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.3000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.8500000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.1500000000}}],\"OptimisationConstraints\":[{\"Id\":1614}]}}},{\"Id\":10,\"Values\":{\"Information\":{\"ProductId\":1},\"MarketValue\":{\"Total\":61472.220000000000,\"Cash\":61282.350000000000,\"Investment\":189.870000000000},\"KPI\":{\"Risk\":0.000266320272,\"InceptionPerf\":0.017230583371,\"DailyPerf\":0.000000000000,\"SharpeRatio\":64.698729988052,\"DailyPerfAmount\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":45,\"Isin\":\"FR0010344960\",\"Weight\":0.7248802792,\"Quantity\":1000.000000,\"AccountId\":51}},{\"Instrument\":{\"Id\":102,\"Isin\":\"US4642888519\",\"Weight\":0.2720310084,\"Quantity\":280.000000,\"AccountId\":51}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0005890465,\"Quantity\":1.000000,\"AccountId\":23}},{\"Instrument\":{\"Id\":112,\"Weight\":0.0024996657,\"Quantity\":1.000000,\"AccountId\":28}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.7254693257}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.2745306741}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9999999998}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9999999998}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9969112876}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0030887122}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0030887122}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.7248802792}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.2720310084}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9969112876}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0030887122}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":25,\"Values\":{\"Information\":{\"ProductId\":1},\"MarketValue\":{\"Total\":-42.890000000000,\"Cash\":-42.890000000000,\"Investment\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0000000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0000000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.0000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.0000000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.0000000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0000000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0000000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.0000000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0000000000}}]}},{\"Id\":26,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":28,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":29,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":31,\"Values\":{\"Information\":{\"ProductId\":1},\"KPI\":{\"Risk\":0.164024004413,\"InceptionPerf\":0.000000000000,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.000000000000}}},{\"Id\":39,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":40,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":41,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":48,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":49,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":50,\"Values\":{\"Information\":{\"ProductId\":2}}},{\"Id\":51,\"Values\":{\"Information\":{\"ProductId\":2}}},{\"Id\":52,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":55,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":56,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":57,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":60,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":61,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":10502.110000000000,\"Cash\":0.000000000000,\"Investment\":10502.110000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":111,\"Weight\":1.0000000000,\"Quantity\":1.000000,\"AccountId\":209}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":1.0000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":1.0000000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":1.0000000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":1.0000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":1.0000000000}}]}},{\"Id\":63,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":65,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":367344.370000000000,\"Cash\":356842.260000000000,\"Investment\":10502.110000000000},\"KPI\":{\"Risk\":0.287288189949,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.000000000000,\"DailyPerfAmount\":-2905.510000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0755674845,\"Quantity\":3799.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0079883625,\"Quantity\":2.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0032163008,\"Quantity\":3799.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8846385749,\"Quantity\":1990.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0285892771,\"Quantity\":1.000000,\"AccountId\":220}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.9999999998}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.1153614249}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8846385749}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9244325153}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0755674845}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9681944219}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0032163008}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0285892771}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0285892771}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0079883625}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0755674845}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0032163008}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8846385749}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9681944219}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0032163008}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0285892771}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":67,\"Values\":{\"Information\":{\"ProductId\":1}}}]}"
}

Retrieves flat personal data for a contact

Preview API
Additiv publishes preview features as APIs for feedback and early adopters.Preview APIs may change or discontinue at any time without notice.
We also may choose not to release a Preview into GA.

Retrieves the latest flat personal data for a contact id

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/data/flat/contacts/{contactId}/personal-data
https://example-host/v1.0/data/flat/contacts/{contactId}/personal-data

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ReferenceId": 4,
  • "CreateDate": "2019-11-29T00:00:00",
  • "Data": "{\"ContactId\":4,\"Date\":\"2019-09-19T00:00:00\",\"Portfolios\":[{\"Id\":1,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":483032.800000000000,\"Cash\":352319.300000000000,\"Investment\":130713.500000000000},\"KPI\":{\"Risk\":0.187089534319,\"InceptionPerf\":0.000501779870,\"DailyPerf\":0.000001358000,\"SharpeRatio\":0.002682030676,\"DailyPerfAmount\":3.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.1711283995,\"Quantity\":5167.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.2402913632,\"Quantity\":1026.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.3179702496,\"Quantity\":10265.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0118283892,\"Quantity\":1.000000,\"AccountId\":147}},{\"Instrument\":{\"Id\":112,\"Weight\":0.2587815982,\"Quantity\":1.000000,\"AccountId\":27}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.3179702496}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.4232481519}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.2587815982}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.7597086365}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.2402913632}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.8288716002}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.1711283995}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.3179702496}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.4114197627}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.2706099874}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.2706099874}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.1711283995}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.2402913632}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.3179702496}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.7293900123}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.2706099874}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":9,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":1230354.679000000000,\"Cash\":792002.149000000000,\"Investment\":438352.530000000000},\"KPI\":{\"Risk\":0.101329210276,\"InceptionPerf\":0.014927129359,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.147313191510,\"DailyPerfAmount\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.0588822079,\"Quantity\":407.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0653987800,\"Quantity\":4537.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":33,\"Isin\":\"ES0178430E18\",\"Weight\":0.0586347215,\"Quantity\":11244.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0601777692,\"Quantity\":6000.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":55,\"Isin\":\"LU0048579410\",\"Weight\":0.0261802556,\"Quantity\":13500.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":56,\"Isin\":\"LU0048580004\",\"Weight\":0.0105686597,\"Quantity\":24.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":57,\"Isin\":\"LU0048581077\",\"Weight\":0.1225807099,\"Quantity\":515.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":58,\"Isin\":\"LU0048584766\",\"Weight\":0.0770184416,\"Quantity\":800.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0690991804,\"Quantity\":1930.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0566909698,\"Quantity\":1125.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":103,\"Isin\":\"US5949181045\",\"Weight\":0.0384868695,\"Quantity\":3250.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":110,\"Weight\":0.0580259507,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0928866463,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":112,\"Weight\":0.0980917145,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":113,\"Weight\":0.0455195570,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":114,\"Weight\":0.0617575657,\"Quantity\":1.000000,\"AccountId\":3}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.1169081586}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.5806014125}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.1952133055}},{\"Currency\":{\"Id\":4,\"Code\":\"GBP\",\"Weight\":0.0455195570}},{\"Currency\":{\"Id\":5,\"Code\":\"JPY\",\"Weight\":0.0617575657}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9433090295}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0566909698}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9346012193}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0653987800}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.0588822079}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.2793891100}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.3054472472}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.3562814342}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.3562814342}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0601777692}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0653987800}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.3054472472}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0566909698}},{\"Country\":{\"Id\":66,\"Name\":\"Spain\",\"Weight\":0.0586347215}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.0588822079}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.0384868695}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.3382713179}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.3054472472}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.3562814342}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.2500000000}},{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":33,\"Isin\":\"ES0178430E18\",\"Weight\":0.1500000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":103,\"Isin\":\"US5949181045\",\"Weight\":0.3000000000}},{\"Instrument\":{\"Id\":110,\"Weight\":0.1500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.4000000000}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.1500000000}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.4500000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9500000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0500000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9500000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0500000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.2500000000}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.6000000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.1500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.1500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":66,\"Name\":\"Spain\",\"Weight\":0.1500000000}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.2500000000}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.3000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.8500000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.1500000000}}],\"OptimisationConstraints\":[{\"Id\":1614}]}}},{\"Id\":10,\"Values\":{\"Information\":{\"ProductId\":1},\"MarketValue\":{\"Total\":61472.220000000000,\"Cash\":61282.350000000000,\"Investment\":189.870000000000},\"KPI\":{\"Risk\":0.000266320272,\"InceptionPerf\":0.017230583371,\"DailyPerf\":0.000000000000,\"SharpeRatio\":64.698729988052,\"DailyPerfAmount\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":45,\"Isin\":\"FR0010344960\",\"Weight\":0.7248802792,\"Quantity\":1000.000000,\"AccountId\":51}},{\"Instrument\":{\"Id\":102,\"Isin\":\"US4642888519\",\"Weight\":0.2720310084,\"Quantity\":280.000000,\"AccountId\":51}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0005890465,\"Quantity\":1.000000,\"AccountId\":23}},{\"Instrument\":{\"Id\":112,\"Weight\":0.0024996657,\"Quantity\":1.000000,\"AccountId\":28}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.7254693257}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.2745306741}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9999999998}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9999999998}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9969112876}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0030887122}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0030887122}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.7248802792}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.2720310084}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9969112876}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0030887122}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":25,\"Values\":{\"Information\":{\"ProductId\":1},\"MarketValue\":{\"Total\":-42.890000000000,\"Cash\":-42.890000000000,\"Investment\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0000000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0000000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.0000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.0000000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.0000000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0000000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0000000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.0000000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0000000000}}]}},{\"Id\":26,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":28,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":29,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":31,\"Values\":{\"Information\":{\"ProductId\":1},\"KPI\":{\"Risk\":0.164024004413,\"InceptionPerf\":0.000000000000,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.000000000000}}},{\"Id\":39,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":40,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":41,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":48,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":49,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":50,\"Values\":{\"Information\":{\"ProductId\":2}}},{\"Id\":51,\"Values\":{\"Information\":{\"ProductId\":2}}},{\"Id\":52,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":55,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":56,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":57,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":60,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":61,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":10502.110000000000,\"Cash\":0.000000000000,\"Investment\":10502.110000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":111,\"Weight\":1.0000000000,\"Quantity\":1.000000,\"AccountId\":209}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":1.0000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":1.0000000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":1.0000000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":1.0000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":1.0000000000}}]}},{\"Id\":63,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":65,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":367344.370000000000,\"Cash\":356842.260000000000,\"Investment\":10502.110000000000},\"KPI\":{\"Risk\":0.287288189949,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.000000000000,\"DailyPerfAmount\":-2905.510000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0755674845,\"Quantity\":3799.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0079883625,\"Quantity\":2.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0032163008,\"Quantity\":3799.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8846385749,\"Quantity\":1990.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0285892771,\"Quantity\":1.000000,\"AccountId\":220}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.9999999998}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.1153614249}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8846385749}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9244325153}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0755674845}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9681944219}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0032163008}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0285892771}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0285892771}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0079883625}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0755674845}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0032163008}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8846385749}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9681944219}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0032163008}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0285892771}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":67,\"Values\":{\"Information\":{\"ProductId\":1}}}]}"
}

Retrieves flat portfolio data for a contact

Preview API
Additiv publishes preview features as APIs for feedback and early adopters.Preview APIs may change or discontinue at any time without notice.
We also may choose not to release a Preview into GA.

Retrieves the latest flat portfolio data for a contact id in the application currency.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/data/flat/contacts/{contactId}/portfolio-data
https://example-host/v1.0/data/flat/contacts/{contactId}/portfolio-data

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ReferenceId": 4,
  • "CreateDate": "2019-11-29T00:00:00",
  • "Data": "{\"ContactId\":4,\"Date\":\"2019-09-19T00:00:00\",\"Portfolios\":[{\"Id\":1,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":483032.800000000000,\"Cash\":352319.300000000000,\"Investment\":130713.500000000000},\"KPI\":{\"Risk\":0.187089534319,\"InceptionPerf\":0.000501779870,\"DailyPerf\":0.000001358000,\"SharpeRatio\":0.002682030676,\"DailyPerfAmount\":3.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.1711283995,\"Quantity\":5167.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.2402913632,\"Quantity\":1026.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.3179702496,\"Quantity\":10265.000000,\"AccountId\":34}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0118283892,\"Quantity\":1.000000,\"AccountId\":147}},{\"Instrument\":{\"Id\":112,\"Weight\":0.2587815982,\"Quantity\":1.000000,\"AccountId\":27}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.3179702496}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.4232481519}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.2587815982}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.7597086365}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.2402913632}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.8288716002}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.1711283995}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.3179702496}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.4114197627}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.2706099874}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.2706099874}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.1711283995}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.2402913632}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.3179702496}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.7293900123}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.2706099874}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":9,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":1230354.679000000000,\"Cash\":792002.149000000000,\"Investment\":438352.530000000000},\"KPI\":{\"Risk\":0.101329210276,\"InceptionPerf\":0.014927129359,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.147313191510,\"DailyPerfAmount\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.0588822079,\"Quantity\":407.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0653987800,\"Quantity\":4537.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":33,\"Isin\":\"ES0178430E18\",\"Weight\":0.0586347215,\"Quantity\":11244.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0601777692,\"Quantity\":6000.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":55,\"Isin\":\"LU0048579410\",\"Weight\":0.0261802556,\"Quantity\":13500.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":56,\"Isin\":\"LU0048580004\",\"Weight\":0.0105686597,\"Quantity\":24.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":57,\"Isin\":\"LU0048581077\",\"Weight\":0.1225807099,\"Quantity\":515.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":58,\"Isin\":\"LU0048584766\",\"Weight\":0.0770184416,\"Quantity\":800.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0690991804,\"Quantity\":1930.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0566909698,\"Quantity\":1125.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":103,\"Isin\":\"US5949181045\",\"Weight\":0.0384868695,\"Quantity\":3250.000000,\"AccountId\":41}},{\"Instrument\":{\"Id\":110,\"Weight\":0.0580259507,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0928866463,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":112,\"Weight\":0.0980917145,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":113,\"Weight\":0.0455195570,\"Quantity\":1.000000,\"AccountId\":3}},{\"Instrument\":{\"Id\":114,\"Weight\":0.0617575657,\"Quantity\":1.000000,\"AccountId\":3}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.1169081586}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.5806014125}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.1952133055}},{\"Currency\":{\"Id\":4,\"Code\":\"GBP\",\"Weight\":0.0455195570}},{\"Currency\":{\"Id\":5,\"Code\":\"JPY\",\"Weight\":0.0617575657}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9433090295}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0566909698}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9346012193}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0653987800}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.0588822079}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.2793891100}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.3054472472}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.3562814342}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.3562814342}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0601777692}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0653987800}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.3054472472}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0566909698}},{\"Country\":{\"Id\":66,\"Name\":\"Spain\",\"Weight\":0.0586347215}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.0588822079}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.0384868695}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.3382713179}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.3054472472}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.3562814342}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":17,\"Isin\":\"CH0244767585\",\"Weight\":0.2500000000}},{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":33,\"Isin\":\"ES0178430E18\",\"Weight\":0.1500000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0500000000}},{\"Instrument\":{\"Id\":103,\"Isin\":\"US5949181045\",\"Weight\":0.3000000000}},{\"Instrument\":{\"Id\":110,\"Weight\":0.1500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":1,\"Code\":\"CHF\",\"Weight\":0.4000000000}},{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.1500000000}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.4500000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9500000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0500000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9500000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0500000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":2,\"Name\":\"Bond\",\"Weight\":0.2500000000}},{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.6000000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.1500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.1500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":66,\"Name\":\"Spain\",\"Weight\":0.1500000000}},{\"Country\":{\"Id\":42,\"Name\":\"Switzerland\",\"Weight\":0.2500000000}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.3000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.8500000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.1500000000}}],\"OptimisationConstraints\":[{\"Id\":1614}]}}},{\"Id\":10,\"Values\":{\"Information\":{\"ProductId\":1},\"MarketValue\":{\"Total\":61472.220000000000,\"Cash\":61282.350000000000,\"Investment\":189.870000000000},\"KPI\":{\"Risk\":0.000266320272,\"InceptionPerf\":0.017230583371,\"DailyPerf\":0.000000000000,\"SharpeRatio\":64.698729988052,\"DailyPerfAmount\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":45,\"Isin\":\"FR0010344960\",\"Weight\":0.7248802792,\"Quantity\":1000.000000,\"AccountId\":51}},{\"Instrument\":{\"Id\":102,\"Isin\":\"US4642888519\",\"Weight\":0.2720310084,\"Quantity\":280.000000,\"AccountId\":51}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0005890465,\"Quantity\":1.000000,\"AccountId\":23}},{\"Instrument\":{\"Id\":112,\"Weight\":0.0024996657,\"Quantity\":1.000000,\"AccountId\":28}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.7254693257}},{\"Currency\":{\"Id\":3,\"Code\":\"USD\",\"Weight\":0.2745306741}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.9999999998}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9999999998}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9969112876}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0030887122}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0030887122}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.7248802792}},{\"Country\":{\"Id\":227,\"Name\":\"United States of America (USA)\",\"Weight\":0.2720310084}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9969112876}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0030887122}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":25,\"Values\":{\"Information\":{\"ProductId\":1},\"MarketValue\":{\"Total\":-42.890000000000,\"Cash\":-42.890000000000,\"Investment\":0.000000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0000000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.0000000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.0000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.0000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.0000000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.0000000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0000000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0000000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.0000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.0000000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0000000000}}]}},{\"Id\":26,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":28,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":29,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":31,\"Values\":{\"Information\":{\"ProductId\":1},\"KPI\":{\"Risk\":0.164024004413,\"InceptionPerf\":0.000000000000,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.000000000000}}},{\"Id\":39,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":40,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":41,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":48,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":49,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":50,\"Values\":{\"Information\":{\"ProductId\":2}}},{\"Id\":51,\"Values\":{\"Information\":{\"ProductId\":2}}},{\"Id\":52,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":55,\"Values\":{\"Information\":{\"ProductId\":3}}},{\"Id\":56,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":57,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":60,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":61,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":10502.110000000000,\"Cash\":0.000000000000,\"Investment\":10502.110000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":111,\"Weight\":1.0000000000,\"Quantity\":1.000000,\"AccountId\":209}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":1.0000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":1.0000000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":1.0000000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":1.0000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":1.0000000000}}]}},{\"Id\":63,\"Values\":{\"Information\":{\"ProductId\":1}}},{\"Id\":65,\"Values\":{\"Information\":{\"ProductId\":2},\"MarketValue\":{\"Total\":367344.370000000000,\"Cash\":356842.260000000000,\"Investment\":10502.110000000000},\"KPI\":{\"Risk\":0.287288189949,\"DailyPerf\":0.000000000000,\"SharpeRatio\":0.000000000000,\"DailyPerfAmount\":-2905.510000000000},\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0755674845,\"Quantity\":3799.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0079883625,\"Quantity\":2.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0032163008,\"Quantity\":3799.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8846385749,\"Quantity\":1990.000000,\"AccountId\":219}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0285892771,\"Quantity\":1.000000,\"AccountId\":220}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":0.9999999998}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.1153614249}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8846385749}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9244325153}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0755674845}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9681944219}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0032163008}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0285892771}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0285892771}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0079883625}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0755674845}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0032163008}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8846385749}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9681944219}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0032163008}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0285892771}}]},\"Reference\":{\"ModelPortfolio\":{\"InstrumentAllocation\":[{\"Instrument\":{\"Id\":20,\"Isin\":\"DE0005557508\",\"Weight\":0.0850000000}},{\"Instrument\":{\"Id\":41,\"Isin\":\"FR0000133308\",\"Weight\":0.0250000000}},{\"Instrument\":{\"Id\":59,\"Isin\":\"LU0061175625\",\"Weight\":0.0400000000}},{\"Instrument\":{\"Id\":94,\"Isin\":\"NL0000235190\",\"Weight\":0.8000000000}},{\"Instrument\":{\"Id\":111,\"Weight\":0.0500000000}}],\"CurrencyAllocation\":[{\"Currency\":{\"Id\":2,\"Code\":\"EUR\",\"Weight\":1.0000000000}}],\"GeofocusAllocation\":[{\"Geofocus\":{\"Name\":\"\",\"Weight\":0.2000000000}},{\"Geofocus\":{\"Id\":2,\"Name\":\"Asia\",\"Weight\":0.8000000000}}],\"SectorAllocation\":[{\"Sector\":{\"Id\":20,\"Name\":\"Energy\",\"Weight\":0.9150000000}},{\"Sector\":{\"Id\":30,\"Name\":\"Materials\",\"Weight\":0.0850000000}}],\"TypeAllocation\":[{\"Type\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"Type\":{\"Id\":4,\"Name\":\"Fund\",\"Weight\":0.0400000000}},{\"Type\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"CountryAllocation\":[{\"Country\":{\"Id\":1,\"Name\":\"Andorra\",\"Weight\":0.0500000000}},{\"Country\":{\"Id\":73,\"Name\":\"France\",\"Weight\":0.0250000000}},{\"Country\":{\"Id\":55,\"Name\":\"Germany\",\"Weight\":0.0850000000}},{\"Country\":{\"Id\":131,\"Name\":\"Luxembourg\",\"Weight\":0.0400000000}},{\"Country\":{\"Id\":163,\"Name\":\"Netherlands\",\"Weight\":0.8000000000}}],\"AssetClassAllocation\":[{\"AssetClass\":{\"Id\":3,\"Name\":\"Equity\",\"Weight\":0.9100000000}},{\"AssetClass\":{\"Id\":18,\"Name\":\"Exchange Traded Funds\",\"Weight\":0.0400000000}},{\"AssetClass\":{\"Id\":1,\"Name\":\"Liquidity\",\"Weight\":0.0500000000}}],\"OptimisationConstraints\":[{\"Id\":2769,\"SecurityConstraints\":[{\"Id\":2769,\"SecurityId\":41,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0000000000},{\"Id\":2769,\"SecurityId\":57,\"MinWeight\":0.0700000000,\"MaxWeight\":0.0770000000},{\"Id\":2769,\"SecurityId\":59,\"MinWeight\":0.1000000000,\"MaxWeight\":0.1200000000},{\"Id\":2769,\"SecurityId\":94,\"MinWeight\":0.5000000000,\"MaxWeight\":0.6000000000},{\"Id\":2769,\"SecurityId\":111,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0900000000}],\"AssetClassConstraints\":[{\"Id\":2769,\"AssetClassId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":1.0000000000}],\"CurrencyConstraints\":[{\"Id\":2769,\"CurrencyId\":2,\"MinWeight\":0.7000000000,\"MaxWeight\":1.0000000000}],\"EconomicalZoneConstraints\":[{\"Id\":2769,\"EconomicalZoneId\":1,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000}],\"SectorConstraints\":[{\"Id\":2769,\"SecuritySectorId\":20,\"MinWeight\":0.2000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecuritySectorId\":31,\"MinWeight\":0.0000000000,\"MaxWeight\":0.0100000000}],\"SecurityTypeConstraints\":[{\"Id\":2769,\"SecurityTypeId\":3,\"MinWeight\":0.6000000000,\"MaxWeight\":0.6050000000},{\"Id\":2769,\"SecurityTypeId\":5,\"MinWeight\":0.1000000000,\"MaxWeight\":0.2000000000},{\"Id\":2769,\"SecurityTypeId\":7,\"MinWeight\":0.0200000000,\"MaxWeight\":0.0200000000}]}],\"Information\":[{\"RiskCategoryId\":4,\"RiskCategoryDefinitionId\":1,\"MinValue\":0.000000000000,\"MaxValue\":0.100000000000}]}}},{\"Id\":67,\"Values\":{\"Information\":{\"ProductId\":1}}}]}"
}

DataManagement

Import file

Uploads a file to the server and imports it into the database using BulkCopy mechanism.

The content of the request must be MIME Multipart. The name of the file must contain the name of the table (e.g. Import_Specification_CbsCashTransactions_20180626T083050.csv). Tables used for importing: CbsCashPositions, CbsCashTransactions, CbsSecurityPositions, CbsSecurityPriceHistory, CbsSecurityTransactions.
Maximum file size is 256MB

Authorizations:
query Parameters
isComplete
boolean

If set to true, it will take the BatchId of the last-imported data and set the LastImportFlag of all data (across potentially multiple imports) with that BatchId to true.

batchId
string <uuid>

By default is null. If isComplete equals true and the batchId is null then a new batchId will be generated internally. If the file is split and isComplete equals false and batchId is null a BadRequest response will be returned, keep in mind that the same batchId should be pass for all parts of a file that was split. If on the last part of a split file you pass isComplete equals true and batchId is null, then a new batchId will be generated internally which will results in a inconsistent import data for the file that was split.

hasHeader
boolean
Default: true

By default is true. If it exists and is set to true, the first row of the file will map the columns of the table, otherwise the configuration from the database will be used.

separator
string

By default is null. If it exists and is set, it will be used for import otherwise the parameter in the GlobalSettings table will be used.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/import/import-file
https://example-host/v1.0/import/import-file

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "FileName": "Import_Specification_CbsCashPositions_20240122T094405.csv",
  • "FileLength": 289644
}

Sync data import

Triggers the import and transformation mechanism that will copy the data from the staging tables to the main internal ones

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Daily
boolean

Specifies the type of Import: can be a daily import or an initial import

HasJoinedAccounts
boolean Nullable

Specifies if the bank has joined accounts: multiple clients share the same account or portfolio

CustodianCountryId
integer <int32> Nullable

Only used in the initial import, it adds cash securities in the requested country for simulating cash portfolio positions

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/import/sync-data
https://example-host/v1.1/import/sync-data

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Daily": false,
  • "HasJoinedAccounts": false,
  • "CustodianCountryId": 42
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "LongRunningRequestId": "string"
}

Match transactions to orders

Matches the transactions received with the orders and sets the status of the later to “Executed” if a match is found. In more detail, the Orders that are in status “Released” are located, their ExternalIds are extracted and matched against the transactions received (i.e. the ExternalId present in the AccountTransaction table which in turn comes from the ExternalTransactionId in the Cash / Securities transactions staging table). If a match is found then the status of the Order is updated from “Released” to “Executed”

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

post/v1.0/orders/match
https://example-host/v1.0/orders/match

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Orders":
    [
    ]
}

GoalManagement

Delete goal template

Deletes a goal template.

Authorizations:
path Parameters
id
required
integer <int32>

The id of the goal template.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/goals/templates/{id}
https://example-host/v1.0/goals/templates/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get goal template by id

Gets a goal template.

Authorizations:
path Parameters
id
required
integer <int32>

The id of the goal template.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/goals/templates/{id}
https://example-host/v1.0/goals/templates/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Name": "<root><en>Name</en></root>",
  • "Description": "<root><en>Description</en></root>",
  • "CustomAttributes": "{\"Description\": \"Some custom attributes.\"}",
  • "ProductId": 1,
  • "IsDefault": true
}

Update goal template

Updates a goal template.

Authorizations:
path Parameters
id
required
integer <int32>

The id of the goal template.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Existing goal template.

Name
Array of objects (LocalizedValue) Nullable

The name of the goal template.

Description
Array of objects (LocalizedValue) Nullable

The description of the goal template.

CustomAttributes
string Nullable

The customAttributes of the goal template.

ProductId
integer <int32>

The id of the product of the goal template.

IsDefault
boolean

Define if the goaltemplate is default.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/goals/templates/{id}
https://example-host/v1.0/goals/templates/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "Description":
    [
    ],
  • "CustomAttributes": "{\"Description\": \"Custom Attributes of Goal Template.\"}",
  • "ProductId": 1,
  • "IsDefault": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Delete goal

Deletes a specific goal of a given contact.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact.

goalId
required
integer <int32>

The id of the goal.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/contacts/{contactId}/goals/{goalId}
https://example-host/v1.0/contacts/{contactId}/goals/{goalId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get goal by id

Gets a specific goal by id and a contact id.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact.

goalId
required
integer <int32>

The id of the goal.

query Parameters
language
required
string

The language of the localized resources.

currencyId
integer <int32>

The optional currencyId which will be used for the goals KPI calculation.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/goals/{goalId}
https://example-host/v1.0/contacts/{contactId}/goals/{goalId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 5,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "Name": "Car",
  • "TargetAmount": 100000,
  • "Currency":
    {
    },
  • "DueDate": "2025-01-21T00:00:00+00:00",
  • "CreateDate": "0001-01-01T00:00:00",
  • "FirstInvestmentDate": "2023-12-23T00:00:00+00:00",
  • "Image": "Custom.jpg",
  • "Status": 1,
  • "GoalType": 1,
  • "GoalTemplateId": 8,
  • "Portfolios":
    [
    ],
  • "Attributes": "{\"Description\": \"Build the boat that Jimmy always wanted to have.\"}",
  • "Valuation": 250000
}

Deletes the goal template picture

Deletes the goal template picture for the goal template id specified

Authorizations:
path Parameters
goalTemplateId
required
integer <int32>

Goal TemplateId id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/goals/templates/{goalTemplateId}/picture
https://example-host/v1.0/goals/templates/{goalTemplateId}/picture

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get goal template picture

Gets the goal template picture for the goal template id specified

Authorizations:
path Parameters
goalTemplateId
required
integer <int32>

Goal TemplateId id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/goals/templates/{goalTemplateId}/picture
https://example-host/v1.0/goals/templates/{goalTemplateId}/picture

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ImageContentBase64": "string",
  • "IsDefaultImage": true
}

Upload goal template picture

Uploads and stores a goal template picture for the goal template id specified

Authorizations:
path Parameters
goalTemplateId
required
integer <int32>

Goal TemplateId id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Goal template picture payload

ImageContentBase64
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/goals/templates/{goalTemplateId}/picture
https://example-host/v1.0/goals/templates/{goalTemplateId}/picture

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ImageContentBase64": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get goal templates

Gets all goal templates of a product.

Authorizations:
query Parameters
language
required
string

The language of the localized resources.

productId
integer <int32>

The id of the product.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/goals/templates
https://example-host/v1.0/goals/templates

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create goal template

Creates a goal template.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

New goal template.

Name
Array of objects (LocalizedValue) Nullable

The name of the goal template.

Description
Array of objects (LocalizedValue) Nullable

The description of the goal template.

CustomAttributes
string Nullable

The customAttributes of the goal template.

ProductId
integer <int32>

The id of the product of the goal template.

IsDefault
boolean

Define if the goaltemplate is default.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/goals/templates
https://example-host/v1.0/goals/templates

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "Description":
    [
    ],
  • "CustomAttributes": "{\"Description\": \"Custom Attributes of Goal Template.\"}",
  • "ProductId": 1,
  • "IsDefault": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0
}

Get goals

Gets all goals of a given contact.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact.

query Parameters
language
required
string

The language of the localized resources.

currencyId
integer <int32>

The optional currencyId needed for the goals KPI calculation.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/goals
https://example-host/v1.0/contacts/{contactId}/goals

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Modify goal

Modifies a goal.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact.

goalId
required
integer <int32>

The id of the goal.

query Parameters
language
required
string

The language of the localized resources.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the goal to update.

Name
string Nullable

The name of the goal.

TargetAmount
number <double> Nullable

The amount to be reached by the investment in the goal.

DueDate
string <date-time> Nullable

The date to reach the goal.

FirstInvestmentDate
string <date-time> Nullable

The first invesment date of the goal.

Status
integer <int32>

The status of the goal (e.g. 1-InProgress, 2-InExecution, 3-Completed, 4-Closed).

GoalType
integer <int32>

The type of the goal (e.g. GeneralInvestment).

GoalTemplateId
integer <int32>

The goal template identifier based on which the goal is created.

CurrencyId
integer <int32> Nullable

The id of the currency on which the goal is created.

CustomAttributes
string Nullable

The custom attributes of the new goal

UpdateProperties
Array of strings Nullable

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/contacts/{contactId}/goals/{goalId}
https://example-host/v1.1/contacts/{contactId}/goals/{goalId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Winter Holiday",
  • "TargetAmount": 15000,
  • "DueDate": "2024-08-09T09:44:05.9005255Z",
  • "FirstInvestmentDate": "2024-01-25T09:44:05.9005258Z",
  • "Status": 1,
  • "GoalType": 1,
  • "GoalTemplateId": 8,
  • "CurrencyId": 4,
  • "CustomAttributes": "{\"Description\": \"Build the boat that Kostas always wanted to have.\"}",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 5,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "Name": "Car",
  • "TargetAmount": 100000,
  • "Currency":
    {
    },
  • "DueDate": "2025-01-21T00:00:00+00:00",
  • "CreateDate": "0001-01-01T00:00:00",
  • "FirstInvestmentDate": "2023-12-23T00:00:00+00:00",
  • "Image": "Custom.jpg",
  • "Status": 1,
  • "GoalType": 1,
  • "GoalTemplateId": 8,
  • "Portfolios":
    [
    ],
  • "Attributes": "{\"Description\": \"Build the boat that Jimmy always wanted to have.\"}",
  • "Valuation": 250000
}

Create a goal

Creates a new goal for a given contact.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact.

query Parameters
language
required
string

The language of the localized resources.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the goal to create

Name
string Nullable

The name of the goal.

TargetAmount
number <double> Nullable

The amount to be reached by the investment in the goal.

DueDate
string <date-time> Nullable

The date to reach the goal.

FirstInvestmentDate
string <date-time> Nullable

The first invesment date of the goal.

Status
integer <int32>

The status of the goal (e.g. 1-InProgress, 2-InExecution, 3-Completed, 4-Closed).

GoalType
integer <int32>

The type of the goal (e.g. GeneralInvestment).

GoalTemplateId
integer <int32>

The goal template identifier based on which the goal is created.

CurrencyId
integer <int32> Nullable

The id of the currency on which the goal is created.

Attributes
string Nullable

The custom attributes of the new goal

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/goals
https://example-host/v1.1/contacts/{contactId}/goals

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Holidays in Switzerland",
  • "TargetAmount": 10000,
  • "DueDate": "2025-01-22T09:44:05.9105019+00:00",
  • "FirstInvestmentDate": "2024-01-23T09:44:05.9105039Z",
  • "Status": 1,
  • "GoalType": 1,
  • "GoalTemplateId": 8,
  • "CurrencyId": 2,
  • "Attributes": "{\"Description\": \"Travel to Switzerland\"}"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 5,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "Name": "Car",
  • "TargetAmount": 100000,
  • "Currency":
    {
    },
  • "DueDate": "2025-01-21T00:00:00+00:00",
  • "CreateDate": "0001-01-01T00:00:00",
  • "FirstInvestmentDate": "2023-12-23T00:00:00+00:00",
  • "Image": "Custom.jpg",
  • "Status": 1,
  • "GoalType": 1,
  • "GoalTemplateId": 8,
  • "Portfolios":
    [
    ],
  • "Attributes": "{\"Description\": \"Build the boat that Jimmy always wanted to have.\"}",
  • "Valuation": 250000
}

Create goal and portfolios

This service:
Creates, optionally, a new Goal for a given Contact or ContactGroup.
Creates, optionally, a new Real Portfolio of type Real.
Creates a new Portfolio of type Slice linked to the Real Portfolio.
Links the Goal created to the Slice Portfolio created.
Generates (depending on configuration) a Portfolio ChangeSet for the Slice Portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact.

query Parameters
goalId
integer <int32>

The ID of the goal to whom the Portfolio of type Slice will be associated

portfolioId
integer <int32>

The ID of the portfolio to whom a goal will be associated

contactGroupId
integer <int32>

The ID of the contact group that has access to the portfolio

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
CurrencyId
required
integer <int32>

The id of the currency on which the goal is created.

GoalAttributes
required
object (CreateGoal)
PortfolioAttributes
object (CreatePortfolioRequest)
GoalAllocation
object (GoalAllocation)

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.2/contacts/{contactId}/goalportfolios
https://example-host/v1.2/contacts/{contactId}/goalportfolios

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyId": 3,
  • "GoalAttributes":
    {
    },
  • "PortfolioAttributes":
    {
    },
  • "GoalAllocation":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "GoalId": 0,
  • "Portfolios":
    [
    ]
}

Order goal

Orders a portfolio of type slice. Orders an existing portfolio of type slice that has not been implemented yet or it is implemented and there are only instruments of type liquidity in the portfolio. The portfolio positions can be modified based on a set of instrument allocation orders (passed in the AllocationsOrder property), on an existing model portfolio (passed in the ModelPortfolioId property) or based on an existing portfolio proposal (passed in the PortfolioProposalId property). The change will not become effective immediately, only after the order was executed successfully.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

goalId
required
integer <int32>

The ID of the goal to order

query Parameters
portfolioId
integer <int32>

The ID of the portfolio of type slice to order.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

CurrencyId
integer <int32> Nullable

The optional new currency ID of the portfolio.

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the ordered portfolio should be based on (having the same instruments and allocations). If set, the AllocationsOrder property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the ordered portfolio should be based on (having the same instruments and allocations). If set, the AllocationsOrder property is ignored.

AllocationsOrder
object (InstrumentSetOrder)

Holds information about an order for an instrument set

ForceOrderGeneration
boolean

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/goals/{goalId}/order
https://example-host/v1.0/contacts/{contactId}/goals/{goalId}/order

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyId": 2,
  • "ModelPortfolioId": 4,
  • "PortfolioProposalId": 25,
  • "AllocationsOrder":
    {
    },
  • "ForceOrderGeneration": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResults":
    [
    ]
}

Top up goal

Adds a specific amount to a portfolio of type slice. Doesn't trigger a cash transaction from an external account to the portfolio's cash account. Instead cash is moved from the portfolio's cash account to the custody account by issuing buy orders. The new amount will be distributed amongst the portfolio securities based on their allocation values and a buy order will be created. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the goal

goalId
required
integer <int32>

The ID of the goal to top up

query Parameters
topUpAmount
number <double>

The amount to add to the portfolio in portfolio currency. Must be > 0.

forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

portfolioId
integer <int32>

The ID of the portfolio of type slice to top up

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/goals/{goalId}/topup
https://example-host/v1.0/contacts/{contactId}/goals/{goalId}/topup

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResults":
    [
    ]
}

Sell amount from goal

Sells a specific amount from a portfolio of type slice. Doesn't trigger a cash transaction from the portfolio's cash account to an external account. Instead cash is moved from the portfolio's custody account to the cash account by issuing sell orders. The reduction amount will be distributed amongst the portfolio securities based on their allocation values and a sell order will be created. Depending on the allocation values and actual prices it is possible that not the exact amount will be sold. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

goalId
required
integer <int32>

The ID of the goal to sell from

query Parameters
amount
required
number <double>

The amount to sell from the portfolio in portfolio currency. Must be > 0.

forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

portfolioId
integer <int32>

The ID of the portfolio to sell from

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/goals/{goalId}/sell
https://example-host/v1.0/contacts/{contactId}/goals/{goalId}/sell

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResults":
    [
    ]
}

Sell all from goal

Sells a whole portfolio of type slice. Doesn't trigger a cash transaction from the portfolio's cash account to an external account. Instead cash is moved from the portfolio's custody account to the cash account by issuing sell orders. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

goalId
required
integer <int32>

The ID of the goal to sell from

query Parameters
forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

portfolioId
integer <int32>

The ID of the portfolio to sell completely

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/goals/{goalId}/sellall
https://example-host/v1.0/contacts/{contactId}/goals/{goalId}/sellall

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResults":
    [
    ]
}

Instruments

Get security details

Gets a security by ID and returns all details about it.

Authorizations:
path Parameters
securityId
required
integer <int32>
query Parameters
language
required
string
currencyId
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/securities/{securityId}
https://example-host/v1.1/securities/{securityId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ExpectedRisk": 0,
  • "ProjectedExpectedReturn": 0,
  • "CalculatedRisk": 0,
  • "CalculatedExpectedReturn": 0,
  • "SharpeRatio": 0,
  • "DownsideVolatility": 0,
  • "SortinoRatio": 0,
  • "Story": "string",
  • "Factsheet": "string",
  • "Kiid": "string",
  • "MaxPrice": 0,
  • "MinPrice": 0,
  • "YearToDateReturn": 0,
  • "CalculationCurrency":
    {
    },
  • "RiskCategory":
    {
    },
  • "Issuer": "string",
  • "CumulativeReturns":
    [
    ],
  • "SecurityComponents":
    [
    ],
  • "HomeStockExchange":
    {
    },
  • "Id": 0,
  • "Name": "string",
  • "Isin": "string",
  • "TradingPrice": 0,
  • "FaceValue": 0,
  • "ExternalId": "string",
  • "AssetClass":
    {
    },
  • "Type":
    {
    },
  • "Sector":
    {
    },
  • "Country":
    {
    },
  • "Currency":
    {
    },
  • "BondExtension":
    {
    },
  • "OptionExtension":
    {
    },
  • "FutureExtension":
    {
    },
  • "FundExtension":
    {
    },
  • "Ratings":
    [
    ],
  • "Focus":
    {
    },
  • "SecurityStockExchanges":
    [
    ],
  • "IsInvestable": true,
  • "IsActive": true,
  • "IsShariahCompliant": true,
  • "CustomAttributes": "string",
  • "TradingUnit": 0,
  • "RoundingLot": 0,
  • "BenchmarkId": 0,
  • "Factor": 0,
  • "IsPricePercentage": true,
  • "LogoUrl": "string",
  • "UId": "string"
}

Search securities in product instrument universe

Searches for securities in the product instrument universe for a number of passed criteria. If multiple search parameters are passed then all of them must match.

Authorizations:
path Parameters
productId
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:
Page
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

SearchTerm
string Nullable
SecurityTypeIds
Array of integers <int32> Nullable
SecuritySectorIds
Array of integers <int32> Nullable
CurrencyIds
Array of integers <int32> Nullable
AssetClassIds
Array of integers <int32> Nullable
CountryIds
Array of integers <int32> Nullable
RiskCategoryIds
Array of integers <int32> Nullable
ContactId
integer <int32> Nullable
IsActive
boolean Nullable
IsInvestable
boolean Nullable
RatingAgencyIds
Array of integers <int32> Nullable
RatingIds
Array of integers <int32> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/products/{productId}/securities/search
https://example-host/v1.1/products/{productId}/securities/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Page": 1,
  • "PageSize": 10,
  • "SearchTerm": "Index",
  • "SecurityTypeIds":
    [
    ],
  • "SecuritySectorIds":
    [
    ],
  • "CurrencyIds":
    [
    ],
  • "AssetClassIds":
    [
    ],
  • "CountryIds":
    [
    ],
  • "RiskCategoryIds":
    [
    ],
  • "ContactId": 2,
  • "IsActive": true,
  • "IsInvestable": false,
  • "RatingAgencyIds":
    [
    ],
  • "RatingIds":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Update securities price history

Loads and saves all the available price history from a price feed provider by security IDs. Price history queried for a security varies depending on the security date range.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Contains the list of security IDs to import price history for. If security IDs list is passed as an empty list then this will trigger the import of price history for all securities from database which have a PriceFeedIntegrationIdentifier and a PriceFeedIntegrationIdentifierType.

SecurityIds
Array of integers <int32> Nullable

The list of security IDs to import price history for

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/securities/updatepricehistory
https://example-host/v1.1/securities/updatepricehistory

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SecurityIds":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "LongRunningRequestId": "string"
}

Update latest securities price

Saves the latest securities prices provided by the User. Note that these are not saved in the securities prices history.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Contains a list of securities, each with price and update date.

Array
SecurityId
integer <int32>
Price
number <double>
Date
string <date-time>

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/securities/updatepricelatest
https://example-host/v1.0/securities/updatepricelatest

Request samples

Content type
Copy
Expand all Collapse all
[
  • {
    }
]

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

MemberManagement

Delete member profile picture

Deletes the profile picture of the member specified

Authorizations:
path Parameters
memberId
required
integer <int32>

Member id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/members/{memberId}/profilepicture
https://example-host/v1.0/members/{memberId}/profilepicture

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Return member profile picture

Returns the stored profile picture of member specified

Authorizations:
path Parameters
memberId
required
integer <int32>

Member id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/members/{memberId}/profilepicture
https://example-host/v1.0/members/{memberId}/profilepicture

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ImageContentBase64": "iVBORw0KGgoAAAANSUhEUgAAALgAAAA8CAYAAADVEnAJAAAOvklEQVR42u1dCZBcRRluyM4Sbg9QuUTFYAhy7Zs3G2Nw5r2ZTWKMWBCXQ5QzIncEFIqjGGtnZpdwaEUOIYcFlBwVRBA5wh7hUIIQCFgkJCAWBUWSnZ3N9d7MXgk7/p/sZje72/3umR2rv6quDOyb1zXd3/v77+///37MD0STxapYY6FWT+ev0zP5h7W0sTqWyWdjGaNA/13UU0Yf/ZvT08bbWjr/GH2+Qc8YJyv3FUNMQmK8Qk8XIrGM+Qc9ld8CIjttn33PvC/elD+JSUiMFxAp64igL4GkvrW08TytADVMouIQfnRucazGKg11qe6v62nzryBkIC1l9NO/d0eT2f2YhCR4ia32T2MpMw8iBt20TP79eIN5HJOQBA8a9cuKE8h1uAfEK3EzY+n8TCYhCR4QoI5MJMv9pF1SxlLGTrLyK+nzQvreZfGUeYbWWDhFy5inU7uCFJS7Ymnjdbgidu6Ha/GAMQlJ8ADIXaWlzSdsqiHv6JnCL6Y3bfu8LV8+aX6JHoD59L1/Czadb8cbt3+RSUiCBwHId5YWNmN8AuucTBb3dPsQkfszDxr57vc23pLklgQPDES68yw3gqn8I7OSnQcw+xBb9LTxDO6LIJEktyR4sFJgyuiyUDluYsXiHsxHYBUgCfKXM5LbvsAkJMGDAEhL7sFyC+t9A5OQqESCQ5YTk9tcymC5JSQqjeAgLiQ+AcHXz0kW92ESEpVIcGQDihUTM84kJCqV4JAFBZvKFiYhUakER7SQ8rc38wgeb8zPYhWOjkTtpGxcvSQbDy+m1tauK6vQ8JnaEvytI64ezQJCT3P1pL7mqkt2tExY3NsSatvRGlqF9r/PzROW4G89LdWB9Z+4ZcuBlN58KgXvMhRge4hW5KeQm09y7+0UMZ47bUFu/3ITvKgooQ5N/V5WV69r19WlHbr6JM3LUzQvD3bo4Ztpvuren/XNvZhTaE0Fhe+eGBsrNVyOAcvGI+eAyDRIRTutPa6+SQN8Hr7ruf83WGhnS+icATIX7TQi+5u9raHz8F2fYho1tAI/SkG5XougXYGu/f30jHHwZ98z6xFNHtlQ0OI3wbNR9Ssd8fACGv+c9fyEt+DaDVHlIGYXlDNyNd89MRezCkQ2oUzPxpW1GBQ3LauF34U1YS7R11I1nci6FqR11ya829dW5bp/BMvIOD3gNMktlsp3YsUma38xJ4XiDb8IXkyyPTviylU0znmn8wOi5+Lq2fYseNpcwiV4On9ORVltxvYgl+P6dk39lDc4Dqx5Py2TN+Ke9sUotgeR+3qywp+CqF5ab3Oov6+16kbc0+mKrGWMj8VkFifNYd8VJMGz0Sn7tevhp73OEc317XhQmAj01L7M+7FY4iqJ3DRoC/HDfW26ejfubYfcRMyFIKfP7W67JEetK1KN/UhZDorgm+qO35es9t/9mh/MOeZHRPC1vB/kNS8kiEGmDfGdbAzA2uIHB9RuYhaAtQUhg2i0Klj2rzWYx9LYbMcYjVeCg4g0lo/5PT8QCRgPouWsPlmsHm8ER9kcG4FcXInBpRBbYuUt2p1fDLUEu3G03AxlclZXLidfcI2lu5IIRxkHpI7E4FJY+NVv0UNwMdSS/mfZXmg9y6sn0/+7nPz1NZbuSnMVt38E4UgdWWdhGDYTQW9DTS1yjqK3FA5PpIzptM/6DSkpG0pB8A49cqF476P20ib/PrruZLgxeCA2zjrx4Jwe/iEUFe53NbUHc/l/QXC4VLtZhfop1UTA9fyBU7rIus/DYIk3POqVGGD+UqiuG0tdKS5j1UTQ9QJydpFPPq9YFPdPVvpKuq5X8ICs46krRNpGYYJc2rwX2Z+iB4QegN8FSfCt0RM+l9WUzSIFC3IuE4B87rm8OYLkizmucBcFzVjFhoEUj/MFT3YhW6d8l9kEtFYRySE7shHobQudzyMlEbbQ93yV7f6JxHUikkN2ZCNwcjp/CG0MewRjdq13Rc07wbH558+TsjI3bZotLR6GSKCuJLxvMsvvovyTDQNcD94PJinpJ8wh4MYIBnDUBMP14BKyOeS4f7gxXCveEhrVP7kYacFY/dFpThK0bl8JPiQJfsix3FtziZMOtRUI0iP1NAcvCx6U50Z9EVp3UDJhMMdL5FvZAOB3Cfy5F/huiVifFQWHslrNUYPXwocWWO8XikV3/YuCQ91tex21e5Kc8RHvYCV7ZYSjVwRaJbv9JHhOq1UEKtWNTACQnyKZSZJ+N1htNiEPI3A0kuBXCXy3JaxMgFrCmbiHdi17evgyrvXWwqcwlyBLcBZ3IBPqz4dZ28u41rat2nX/O9tCZwl8+l39JxqMYwTW9jbmElrauN9PgtO4Xc0dz5k1h4yltkA4oKjlsva4ssOumgL5sTNRe8yocK5gkDahdrIsBE/lV3Aeuswwv24xZ2PZbZW3YBmI0JSdPF18mHqymEPCbqgkrjX9F9h+tALs5OnidsoL441d33FN8Ixxmq8E18L3c9yT9WwY4IfTnF4KVcsBqfOksNzbrtcezy0XQ4iWa8Ub87NZiYGDOXkBCy1lnjWM4G28HTnzCAyylZ+HZCleTgnzCJ50SMTf1T8edt4pYbMW9rt+wKJN3V/zkeCYpxWisdykqcfCcND/M+0SG6oWEfuKLQnlQGYFHKIpkOVWlCF9V+MXPG/b5YPCV+YQ/FnPBNfUFt6Of/Aa+MocC+65fyJyC8eC7+ofR91x3LgO5gGQh/0kOAwOL+eHiPqibVJjVdXVx3NaRIcb4+ikWPyA8ZIyi90/J0/io+Flc7SRfL3MBH+9PAQXGyYcX+31XBxfCa6pq71FK5V22m81dEYjh3soODZfEZD8g6Gc4WCBCBtP10VK5wiJsJWzm15dAhcFJGzlBGVWl8hFWcBLmPKyd0osKBzqJ8Fhpd0lvCkv0UbzDATz/DkWWXxcxJ9KUXQs0mGj6UJ4N99OVxbxQr4fT526N3MJbHY4m0y0O4dp4Is4JOztX8lc99//D7Y/d5PZEtrVP04U449V/kTmElixfd1k6uEHnGwa6fp72uM1xwVwbIT5tEVlfUPA5L5Q0PerbASQZCNIpZzLXAIBIkGu+PmD16EShx+UqXbdPwJEvPsicjp4HR54QZAuyVwCK2WQMiHPH0deUOesyAEsKGD3jOoOi0hiEx6GYI5oNnYKJuz7Y4RtjxaFf90GehCx5N1384zwEYPXInFKkCS10m2gBxFL3n37l088wl65obHRzUkIyFmh72/1VUWpU08UqCEbc3pEczVX0ahzN4xkwZ9Zp6yaT/l1ChV8RawM4mQh4znOQ8XdoaMhyYo5BHRYUSBhDF/5TUE0c56LaqBLBQ/NqP5xaq+PwR5Y79/6HqpHrr6mvMfL1OzUlYiLYNxs3JMs/zRmFzz5iSdF0eBe4GUzg+oT5JZY9LV1RqrrCD4h1XNF6ZftCTVuv9RNnUkD3ufE7aEEqHMFBO+lByDuYGM5kxSYPiduj9aw/VuiI6kRDGI2gcNUA0q2gh8+X+CifIC0WGYTIDU088HwPOo0P4xGJzo9+fVxm/khHyALDTkMzAYQgIil8z/AKmDjBNtPEWiyLi5W1opIjgy0Yn09t3gaf4OfKAoLw22B+zBWcTHqL0UkRyospdVy+8ff6Jqridw7RIlW6J/j3i21cCtTotRnuDp0j2sw3kERfMMcZR8a30944zswh0dbVW1hVUaketQ9oHrpNTUMsE3EjPkXh7na/6LBXITBQqIWjiRA5BEH4mO5pL83O3wVyoV2i4yH6jCFA3hlpx6ZgqcdDZ9hWRAVsyh46MPgiYqMreow8RCA6D2t1VMoFD8RDZ8pn2U+cr0tCh766P7c/lENj7QK8YprfohXPWpN+RPgmyNanGjYPglKDOatFAUPNM6nWigoPVCp2hORqZAGB0ndqU89jKz0BXBHxd8PZ/EgOTozhbOjDrRhs+lkaQWyeuTaoErWoNbYSHO9NqiSNag11tFoI4p3ko7nkjUAIXlbGjgMlqZ0QjZ0cP1stwrHmeRzG6UgN1QBaPKuKuq18B1+kxupmgywV3R8h+/kbq1KOvGhYRzGM8GhfJA1fsLPOcJGFRbe4+lIXV+lH/nnYAluLOdsKG2TPKer1wwFadw3+O65ePgi5gAgORHyGk6QhtNEvnvoIhcq2GxyObZ5Wz2N570TXLxvGsoE9dhQtaUrP/Y1EQoJWD4XMayDv+6Xvr4pVlOLSh8PVvvVrBY5gblE34qq2qFKH1ftVQrouO4/3tT9DRSGuKh33UZRzDm+H/wjDqjlPLiOrw3lf/sMRNEGihJyLi1FD97ihjexuX3PDyBURhLq6TQQrzhIwXyRdvo/GlIr3APKCEUkT9/RHHrFAbFfJCnQl/5hLKBWoSTRptV+kIh92EA++CVjX2eu9PvoNqS74uxBUkE2OTlij75zJsapJId3Qs8m1eTXyFdBUTB29FBLoM/iXDxo5tipg9CoIcQyWso3Gm/UTjpyoDj5LmQagvRo9PkZ7NpRTIydOgsI/W0Tj0SInaS+u5BpCNKjUT75M8gtQTFxf+vehwX5ahpYZZQnwrKTOvYaXseOyh2oKNFb87uVeUEF47mQowj+yGlvjNXcRCUR0STXJY1Tr2gz+g65iR+hlhPJc6juoTn81aa68LeZhIQX8I6QwAPBJCTGA6BzM5eAdZfvaJIYd0BwjqLKZyPzEq9gd5cbZBxErsiOsQguX68uURagSATheFTyDN84ujnXBke5ceo8+1D0wiQkSgmUG4LMHNXjP2TNv+xAAj6edyaKljb/xiQkyvEKGlJG3hFo2+/h/BR7D0q+XVCXO4dJSJQD5HfHrGIOJOHeEc0Yk6GPD88apXjGVBzwJA7xG6vkO1Ilyv2mvFvtvqaE/l1DhH8f7oidIFC8saAyCYlyAtaYk97ssZnzmYRESSE+sOdhHwl+M5OQGG+vZYfVJVmvy0Py2xa8SpBJSJQb4vMFzaXIBXJAbAMvh0Wwh0lIVAJAVgr4zBtwXdbgRVWovUTgBrIgop44Ag7pynW39e/LJCQkKgP/BTwUobIIDirVAAAAAElFTkSuQmCC",
  • "IsDefaultImage": false
}

Upload member profile picture

Uploads and stores a profile picture of the member specified

Authorizations:
path Parameters
memberId
required
integer <int32>

Member id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ImageContentBase64
string Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/members/{memberId}/profilepicture
https://example-host/v1.0/members/{memberId}/profilepicture

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ImageContentBase64": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Return top result members given a look up string.

Returns top result members given a look up string. The endpoint could potentially present outdated information (following a name-change) or inactive members.

Authorizations:
query Parameters
lookUpTerm
string

The look up term.

limit
integer <int32>

Limit results up to 25 records. If not passed, 10 records are returned.

language
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/members/lookup
https://example-host/v1.0/members/lookup

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Members":
    [
    ]
}

Return a member’s profile details

Returns a member’s profile details

Authorizations:
path Parameters
memberId
required
integer <int32>

Member ID

query Parameters
language
string

The language of the localized resources

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/members/{memberId}/profile
https://example-host/v1.0/members/{memberId}/profile

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "InternalUserId": "string",
  • "FirstName": "string",
  • "LastName": "string",
  • "Email": "string",
  • "Phone": "string",
  • "Mobile": "string",
  • "SuperiorIds":
    [
    ],
  • "HasProfilePicture": true,
  • "Branch":
    {
    }
}

Get member role hierarchy contacts

Gets all the contacts based on member role hierarchy

Authorizations:
path Parameters
memberId
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/members/{memberId}/hierarchy/contacts
https://example-host/v1.0/members/{memberId}/hierarchy/contacts

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

NotificationManagement

Delete notification type

Deletes a notification type by ID.

Authorizations:
path Parameters
notificationTypeId
required
integer <int32>

The ID of the notification type to retrieve

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/notifications/notificationtypes/{notificationTypeId}
https://example-host/v1.0/notifications/notificationtypes/{notificationTypeId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Remove notification type from ignore list

Removes a notification type and channel pair from ignore list.

Authorizations:
path Parameters
personId
required
integer <int32>

Person id for who the notification type will be removed from the ignored list

notificationTypeId
required
integer <int32>

The ID of the notification type

notificationChannelId
required
integer <int32>

The ID of the notification channel

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/notificationsignorelist/person/{personId}/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}
https://example-host/v1.0/notificationsignorelist/person/{personId}/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Add notification type to ignore list

Adds a notification type and channel pair to ignore list.

Authorizations:
path Parameters
personId
required
integer <int32>

Person id for who the notification type and channel pair will be added to the ignored list

notificationTypeId
required
integer <int32>

The ID of the notification type

notificationChannelId
required
integer <int32>

The ID of the notification channel

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/notificationsignorelist/person/{personId}/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}
https://example-host/v1.0/notificationsignorelist/person/{personId}/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Delete channel for notification type

Deletes a channel for a notification type

Authorizations:
path Parameters
notificationTypeId
required
integer <int32>

The Notification Type Id

notificationChannelId
required
integer <int32>

The notification channel Id

recipientTypeId
required
integer <int32>

The recipient type Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/notifications/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}/recipienttypes/{recipientTypeId}
https://example-host/v1.0/notifications/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}/recipienttypes/{recipientTypeId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get notification types

Gets all notification types.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Error

get/v1.0/notifications/notificationtypes
https://example-host/v1.0/notifications/notificationtypes

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create notification type

Creates a new notification type.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Properties of the notification type to create

Name
string Nullable
SeverityLevelId
integer <int32>
NotificationEventId
string Nullable
IsActive
boolean
CustomAttributes
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/notifications/notificationtypes
https://example-host/v1.0/notifications/notificationtypes

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Portfolio Rebalancing Failed",
  • "SeverityLevelId": 2,
  • "NotificationEventId": "PortfolioManagement.PortfolioRebalancingFailed",
  • "IsActive": true,
  • "CustomAttributes": "{\"Description\":\"This is a custom attribute\"}"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0
}

Get ignored notification types

Gets all ignored notification types.

Authorizations:
path Parameters
personId
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/notificationsignorelist/person/{personId}
https://example-host/v1.0/notificationsignorelist/person/{personId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Update ignore list

Updates the entire notifications ignore list of the person.

Authorizations:
path Parameters
personId
required
integer <int32>

Person id for who the notification ignore list will be updated

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The notification types and notification channels pairs to be updated

IgnoredNotifications
Array of objects (NotificationTypeNotificationChannel) Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/notificationsignorelist/person/{personId}
https://example-host/v1.0/notificationsignorelist/person/{personId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "IgnoredNotifications":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get channels for notification type

Gets all the channels configured for a notification type

Authorizations:
path Parameters
notificationTypeId
required
integer <int32>

The Notification Type Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/notifications/notificationtypes/{notificationTypeId}/notificationchannels
https://example-host/v1.0/notifications/notificationtypes/{notificationTypeId}/notificationchannels

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "NotificationTypeChannels":
    [
    ]
}

Create channel for notification type

Creates a new channel for a notification type

Authorizations:
path Parameters
notificationTypeId
required
integer <int32>

The Notification Type Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request object

NotificationChannelId
integer <int32>
RenderTemplateMetadataId
integer <int32>
NotificationRecipientTypeId
integer <int32>
IsPersisted
boolean
IsActive
boolean
AppId
string Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/notifications/notificationtypes/{notificationTypeId}/notificationchannels
https://example-host/v1.0/notifications/notificationtypes/{notificationTypeId}/notificationchannels

Request samples

Content type
Copy
Expand all Collapse all
{
  • "NotificationChannelId": 0,
  • "RenderTemplateMetadataId": 0,
  • "NotificationRecipientTypeId": 0,
  • "IsPersisted": true,
  • "IsActive": true,
  • "AppId": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify notification type

Modifies an existing notification type.

Authorizations:
path Parameters
notificationTypeId
required
integer <int32>

The ID of the notification type to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Name
string Nullable
SeverityLevelId
integer <int32>
NotificationEventId
string Nullable
IsActive
boolean
CustomAttributes
string Nullable
UpdateProperties
Array of strings Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/notifications/notificationtypes/{notificationTypeId}
https://example-host/v1.1/notifications/notificationtypes/{notificationTypeId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Portfolio Rebalancing Failed",
  • "SeverityLevelId": 2,
  • "NotificationEventId": "PortfolioManagement.PortfolioRebalancingFailed",
  • "IsActive": true,
  • "CustomAttributes": "{\"Description\":\"This is a custom attribute\"}",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Update channel for recipient of a notification type

Updates a channel for the recipient of a notification type

Authorizations:
path Parameters
notificationTypeId
required
integer <int32>

The Notification Type Id

notificationChannelId
required
integer <int32>

The notification channel Id

recipientTypeId
required
integer <int32>

The recipient type Id

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request object

RenderTemplateMetadataId
integer <int32>
IsPersisted
boolean
IsActive
boolean
AppId
string Nullable
UpdateProperties
Array of strings Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/notifications/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}/recipienttypes/{recipientTypeId}
https://example-host/v1.1/notifications/notificationtypes/{notificationTypeId}/notificationchannels/{notificationChannelId}/recipienttypes/{recipientTypeId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "RenderTemplateMetadataId": 0,
  • "IsPersisted": true,
  • "IsActive": true,
  • "AppId": "string",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Enroll device for push notifications

Enrolls new device for push notifications.

Authorizations:
path Parameters
contactId
required
integer <int32>
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

Request data.

DeviceToken
string Nullable
PushToken
string Nullable
Platform
string (DevicePlatform)
Enum: "iOS" "Android"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/pushNotifications/enrolldevice
https://example-host/v1.0/contacts/{contactId}/pushNotifications/enrolldevice

Request samples

Content type
Copy
Expand all Collapse all
{
  • "DeviceToken": "string",
  • "PushToken": "string",
  • "Platform": "iOS"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Return channels

Returns channels for a given set of parameters

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request object

IsPersisted
boolean Nullable
IsActive
boolean Nullable
NotificationTypeIds
Array of integers <int32> Nullable
NotificationChannelIds
Array of integers <int32> Nullable
NotificationRecipientTypeIds
Array of integers <int32> Nullable
RenderTemplateMetadataIds
Array of integers <int32> Nullable
AppIds
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/notifications/notificationchannels/search
https://example-host/v1.0/notifications/notificationchannels/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "IsPersisted": true,
  • "IsActive": true,
  • "NotificationTypeIds":
    [
    ],
  • "NotificationChannelIds":
    [
    ],
  • "NotificationRecipientTypeIds":
    [
    ],
  • "RenderTemplateMetadataIds":
    [
    ],
  • "AppIds":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "NotificationTypeChannels":
    [
    ]
}

Optimization

Calculate discrete goal equations

Calculates one of the following InitialAmount, RecurringAmount, TargetAmount or TargetYears

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

An object containing PaymentFrequency, ExpectedReturn and 3 of the following parameters: InitialAmount, TargetAmount, TargetYears and RecurringAmount.

InitialAmount
number <double> Nullable
RecurringAmount
number <double> Nullable
TargetAmount
number <double> Nullable
ExpectedReturn
number <double> Nullable
TargetYears
number <double> Nullable
PaymentFrequency
string (PaymentFrequency)
Enum: "Monthly" "Quarterly" "Semesterly" "Yearly"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/optimization/goal/formula
https://example-host/v1.0/optimization/goal/formula

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InitialAmount": 100000,
  • "TargetAmount": 1000000,
  • "ExpectedReturn": 0.075,
  • "TargetYears": 5,
  • "PaymentFrequency": "Monthly"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "InitialAmount": 0,
  • "RecurringAmount": 0,
  • "TargetAmount": 0,
  • "TargetYears": 0
}

Calculate optimal allocation

Calculates the optimal allocation for the parameters passed by the user

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO.

Securities
required
Array of integers <int32>
CurrencyId
required
integer <int32>
OptimizationMode
required
string (OptimizationMode)
Enum: "MeanVariance" "BlackLitterman"
TargetVolatility
required
object (TargetVolatility)
Years
integer <int32> Nullable
OptimalAllocationMode
string (OptimalAllocationMode)
Enum: "MaxSharpeRatio" "MinSharpeRatio" "MaxReturn" "MinReturn" "MaxVolatility" "MinVolatility" "MidVolatility"
RiskFreeRate
number <double> Nullable
Constraints
object (Performance.Abstractions.OptimizationConstraints)
ProjectedExpectedReturns
Array of objects (ProjectedExpectedReturn) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/optimization/optimizer/optimal
https://example-host/v1.0/optimization/optimizer/optimal

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Securities":
    [
    ],
  • "CurrencyId": 2,
  • "OptimizationMode": "MeanVariance",
  • "TargetVolatility":
    {
    },
  • "Years": 10,
  • "OptimalAllocationMode": "MinSharpeRatio",
  • "RiskFreeRate": 0,
  • "Constraints":
    {
    },
  • "ProjectedExpectedReturns":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ExpectedReturn": 0,
  • "ExpectedRisk": 0,
  • "SharpeRatio": 0,
  • "Allocations":
    [
    ]
}

Calculate efficient frontier

Calculates the efficient frontier (i.e. optimal allocations for different levels of target returns) for the parameters passed by the user.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO.

Securities
required
Array of integers <int32>
CurrencyId
required
integer <int32>
OptimizationMode
required
string (OptimizationMode)
Enum: "MeanVariance" "BlackLitterman"
Years
integer <int32> Nullable
RiskFreeRate
number <double> Nullable
Constraints
object (Performance.Abstractions.OptimizationConstraints)
ProjectedExpectedReturns
Array of objects (ProjectedExpectedReturn) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/optimization/optimizer/efficientfrontier
https://example-host/v1.0/optimization/optimizer/efficientfrontier

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Securities":
    [
    ],
  • "CurrencyId": 2,
  • "OptimizationMode": "BlackLitterman",
  • "Years": 10,
  • "RiskFreeRate": 0,
  • "Constraints":
    {
    },
  • "ProjectedExpectedReturns":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "AllocationSets":
    [
    ]
}

Participants

Delete the counterparties associated with the product of a participant

Deletes the counterparties associated with the product of a participant

Authorizations:
path Parameters
participantId
required
integer <int32>

The id of the participant.

productId
required
integer <int32>

The id of the product assigned to the participant.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/participants/{participantId}/products/{productId}/counterparties
https://example-host/v1.0/participants/{participantId}/products/{productId}/counterparties

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Update the counterparties associated with the product of a participant

Updates the counterparties associated with the product of a participant

Authorizations:
path Parameters
participantId
required
integer <int32>

The id of the participant.

productId
required
integer <int32>

The id of the product.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Counterparties
Array of objects (CounterpartySetting) Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/participants/{participantId}/products/{productId}/counterparties
https://example-host/v1.0/participants/{participantId}/products/{productId}/counterparties

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Counterparties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Retrieve products of a participant

Retrieves products of a participant

Authorizations:
path Parameters
participantId
required
integer <int32>

The id of the participant.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/participants/{participantId}/products
https://example-host/v1.1/participants/{participantId}/products

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ParticipantProducts":
    [
    ]
}

Checks if the specified participant has access to the specified person

Checks if the specified participant has access to the specified person.

Authorizations:
path Parameters
participantUid
required
string <uuid>

The Uid of the participant.

personId
required
integer <int32>

The id of the person.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/participants/{participantUid}/persons/{personId}/access
https://example-host/v1.0/participants/{participantUid}/persons/{personId}/access

Response samples

Content type
application/json
Copy
Expand all Collapse all
true

Update the products of a participant

Updates the products of a participant

Authorizations:
path Parameters
participantId
required
integer <int32>

The id of the participant.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ParticipantProducts
Array of objects (ParticipantProductInfo) Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

put/v1.0/participants/{participantId}/products
https://example-host/v1.0/participants/{participantId}/products

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ParticipantProducts":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Performance

Get account balance aum

Gets the sum of all account balances from all the accounts that belong to contacts which have the requested relationship manager id

Authorizations:
path Parameters
memberId
required
integer <int32>

The id of the relationship manager

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/members/{memberId}/accounts/balance
https://example-host/v1.0/members/{memberId}/accounts/balance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "MemberId": 1,
  • "Value": 500250
}

Get top performance for RM

Gets the performance of top and bottom securities, portfolios and contacts for an RM. Returns top and bottom performers for securities, portfolios and contacts for an RM.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

currency
required
integer <int32>

The currency ID to be used for the calculation

nrOfDays
required
integer <int32>

The number of days in the past to calculate the top performance for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/performance/top/{memberId}/{currency}/{nrOfDays}
https://example-host/v1.1/performance/top/{memberId}/{currency}/{nrOfDays}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "SecurityPeformanceTop":
    {
    },
  • "PortfolioPerformanceTop":
    {
    },
  • "ContactPerformanceTop":
    {
    }
}

Calculate KPI

Calculates the following KPIs: Expected Return, Cummulative Return, Volatility, Sharpe Ratio, Maximum Drawdown, Time To Recovery, Value At Risk, Downside Volatility, Sortino Ratio and Historical Performance.
Note that if Allocations are passed by the User and their sum is not 100% (but relatively close to 100%), a rounding algorithm is in place to adjust them so that they add up to 100%.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

An object containing: a set of instruments + allocations, number of years used for calculation and the calculation interval

InstrumentSet
required
object (InstrumentSet)
Years
integer <int32> Nullable

The number of historical years to use for the calculation. If not passed the system default value 'HistoricalPerformanceYears' in group 'Performance' of the Global Settings will be used.

Days
integer <int32> Nullable

The number of historical days to use for the calculation of the Historical Performance. If not passed the 'Years' value will be used. If 'Years' is not passed either the system default value 'HistoricalPerformanceYears' in group 'Performance' of the Global Settings will be used.

CalculationInterval
string (CalculationInterval)
Enum: "Daily" "Weekly" "Monthly" "Yearly"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/kpi/calculate
https://example-host/v1.0/performance/kpi/calculate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InstrumentSet":
    {
    },
  • "Years": 10,
  • "Days": 300,
  • "CalculationInterval": "Monthly"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ExpectedReturn": 0.13766208859679047,
  • "CummulativeReturn": 1.7041907211033687,
  • "Volatility": 0.20459221768285565,
  • "SharpeRatio": 0.6728608260661433,
  • "MaximumDrawdown": 0,
  • "TimeToRecovery": 0,
  • "ValueAtRisk": 0,
  • "DownsideVolatility": 0.21099221768285564,
  • "SortinoRatio": 0.13766208859679047,
  • "HistoricalPerformance":
    [
    ]
}

Get AUM of Member

Returns the evolution (i.e. time-series) of the Assets Under Management of the Member in question. If the 'hierarchy' property is not passed then the endpoint does not account for the hierarchy of the Member; if the 'hierarchy' attribute is passed as true on the other hand, the hierarchy of the Member is accounted for.
Note the time series returned is calculated in the application currency, unless the 'currencyId' attribute is passed by the user.

Authorizations:
path Parameters
memberId
required
integer <int32>

The Id of the member

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request object containing the relationship manager id, the start date and the end date

StartDate
string <date-time> Nullable

The First day of the balance history requested

EndDate
string <date-time> Nullable

The Last day of the balance history requested

Hierarchy
boolean

The flag which include or exclude member hierarchy

CurrencyId
integer <int32> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v2.1/members/{memberId}/accounts/history
https://example-host/v2.1/members/{memberId}/accounts/history

Request samples

Content type
Copy
Expand all Collapse all
{
  • "StartDate": "2024-01-23T15:03:01Z",
  • "EndDate": "2024-01-23T15:03:01Z",
  • "Hierarchy": true,
  • "CurrencyId": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ],
  • "Currency":
    {
    }
}

Calculate projection

Calculates a projection for a given set of parameters. The endpoint covers two distinct use-cases:

  • Amount-based projection: this showcases the potential evolution of an investment (i.e. in monetary terms) over time. The required inputs are the InitialInvestmentAmount, the InstrumentAllocations set and the CurrencyId. The optional inputs are the MonthlyContributionAmount, the HistoricalYears, the ProjectionYears and the Fee.
  • Performance-based projection: this showcases the potential performance of an allocation set (i.e. in percentage terms) over time. The required inputs are the InstrumentAllocations set and the CurrencyId. The optional inputs are the HistoricalYears, the ProjectionYears and the Fee.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

InitialInvestmentAmount
number <double> Nullable

The optional initial investment amount.

MonthlyContributionAmount
number <double> Nullable

The optional monthly contribution amount.

Fee
number <double> Nullable

The optional fee to use for the calculation.

ProjectionYears
integer <int32> Nullable

The number of projection years (years in the future) to use for the calculation.

HistoricalYears
integer <int32> Nullable

The number of historical years to use for the calculation.

CurrencyId
integer <int32>

The currency that should be used for the calculation.

InstrumentAllocations
required
Array of objects (InstrumentAllocation)

The instruments and their allocations the calculation should be done for.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/projection/calculate
https://example-host/v1.0/performance/projection/calculate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InitialInvestmentAmount": 1000,
  • "MonthlyContributionAmount": 100,
  • "ProjectionYears": 10,
  • "HistoricalYears": 10,
  • "CurrencyId": 1,
  • "InstrumentAllocations":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Save security performance

Calculates and saves performances in every currency found in Securities and ProductOfferCurrency tables for a given interval

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The interval for which the calculation will trigger

From
string <date-time> Nullable
To
string <date-time> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/performance/save
https://example-host/v1.1/performance/save

Request samples

Content type
Copy
Expand all Collapse all
{
  • "From": "2014-01-22T00:00:00+00:00",
  • "To": "2024-01-21T00:00:00+00:00"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "LongRunningRequestId": "string"
}

Save single security performance

Calculates and save performances for a single security in the security currency and every currency found in the ProductOfferCurrency table for a given interval

Authorizations:
path Parameters
securityId
required
integer <int32>

The id of the security

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The interval for which the calculation will trigger

From
string <date-time> Nullable
To
string <date-time> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/{securityId}/save
https://example-host/v1.0/performance/{securityId}/save

Request samples

Content type
Copy
Expand all Collapse all
{
  • "From": "2014-01-22T00:00:00+00:00",
  • "To": "2024-01-21T00:00:00+00:00"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
true

Calculate correlations of securities

Calculates and returns the correlation matrix of returns for the set of securities passed

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request object containing securities Ids, number of years and calculation interval

InstrumentSet
required
object (Performance.Abstractions.CalculateSecuritiesCorrelations.InstrumentSet)
Years
integer <int32> Nullable

The number of historical years to use for the calculation. If not passed the system default value 'HistoricalPerformanceYears' in group 'Performance' of the Global Settings will be used.

CalculationInterval
string (CalculationInterval)
Enum: "Daily" "Weekly" "Monthly" "Yearly"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/correlation/calculate
https://example-host/v1.0/performance/correlation/calculate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InstrumentSet":
    {
    },
  • "Years": 10,
  • "CalculationInterval": "Monthly"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result":
    [
    ]
}

Get model performance attribution cumulative

Get the performance attribution of a model portfolio vs. another model portfolio. Note that:
- if a currencyId is not passed then the currency of the system will be taken as the default. - if a FromDate / ToDate are not passed then all available data will be returned

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request parameters

CurrencyId
integer <int32> Nullable
ModelPortfolioId1
integer <int32>
ModelPortfolioId2
integer <int32>
FromDate
string <date-time> Nullable
ToDate
string <date-time> Nullable
AggregationLevel
string (AggregationLevel)
Enum: "AssetClass" "Sector" "Currency"
Effect
string (Effect)
Enum: "TotalValueAdded" "AssetAllocationEffect" "StockSelectionEffect" "InteractionEffect"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/performance-attribution-cumulative
https://example-host/v1.0/performance/performance-attribution-cumulative

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyId": 0,
  • "ModelPortfolioId1": 0,
  • "ModelPortfolioId2": 0,
  • "FromDate": "2024-01-23T15:03:01Z",
  • "ToDate": "2024-01-23T15:03:01Z",
  • "AggregationLevel": "AssetClass",
  • "Effect": "TotalValueAdded"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ReferenceCurrency":
    {
    },
  • "ModelPortfolio1":
    {
    },
  • "ModelPortfolio2":
    {
    },
  • "Values":
    [
    ],
  • "Error": 0
}

Get model performance attribution details

Get the performance attribution of a model portfolio vs. another model portfolio. Note that:
- if a currencyId is not passed then the currency of the system will be taken as the default. - if a FromDate / ToDate are not passed then all available data will be returned

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request parameters

CurrencyId
integer <int32> Nullable
ModelPortfolioId1
integer <int32>
ModelPortfolioId2
integer <int32>
FromDate
string <date-time> Nullable
ToDate
string <date-time> Nullable
AggregationLevel
string (Performance.Abstractions.PerformanceAttribution.GetModelPerformanceAttributionDetails.AggregationLevel)
Enum: "AssetClass" "Sector" "Currency"
Effect
string (Performance.Abstractions.PerformanceAttribution.GetModelPerformanceAttributionDetails.Effect)
Enum: "TotalValueAdded" "AssetAllocationEffect" "StockSelectionEffect" "InteractionEffect"
Mode
string (Mode)
Enum: "Details" "Summary"
ExposureId
integer <int32> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/performance-attribution-details
https://example-host/v1.0/performance/performance-attribution-details

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyId": 0,
  • "ModelPortfolioId1": 0,
  • "ModelPortfolioId2": 0,
  • "FromDate": "2024-01-23T15:03:01Z",
  • "ToDate": "2024-01-23T15:03:01Z",
  • "AggregationLevel": "AssetClass",
  • "Effect": "TotalValueAdded",
  • "Mode": "Details",
  • "ExposureId": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ]
}

Calculate allocations

Calculates and returns the allocations of a passed allocation set.

Note that components take precedence over breakdowns (i.e. if the security has both components and breakdowns, components take precedence when returning the allocations).
If one, or more, of the securities have neither components nor breakdowns, their actual (main) attributes are used instead.

Authorizations:
query Parameters
includeLookThrough
required
boolean

Determines whether security look-through should be accounted for category

category
string (FundBreakdownCategory)
Enum: "AssetClass" "Country" "Currency" "EconomicalZone" "Instrument" "Focus" "Sector" "Type" "ParentAssetClass" "ParentSector"

The category for which the allocations should be returned

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request parameters

Allocations
Array of objects (Performance.Abstractions.PerformanceAttribution.CalculatePerformanceAllocations.InstrumentAllocation) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/allocations/calculate
https://example-host/v1.0/performance/allocations/calculate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Allocations":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "PerformanceAllocations":
    [
    ]
}

Calculate returns

Calculates the returns of the passed allocation according to the provided inputs. Note that if Allocations are passed by the User and their sum is not 100% (but relatively close to 100%), a rounding algorithm is in place to adjust them so that they add up to 100%.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

An object containing: a set of instruments + allocations, number of years used for calculation and the calculation interval

InstrumentSet
object (InstrumentSet)
Years
integer <int32> Nullable

The number of historical years to use for the calculation. If not passed the system default value 'HistoricalPerformanceYears' in group 'Performance' of the Global Settings will be used.

CalculationInterval
string (AllocationCalculationInterval)
Enum: "Monthly" "Yearly"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/performance/returns/calculate
https://example-host/v1.0/performance/returns/calculate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InstrumentSet":
    {
    },
  • "Years": 10,
  • "CalculationInterval": "Yearly"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "HistoricalPerformance":
    [
    ],
  • "RoundingAlgorithmUsed": true
}

PersonManagement

Retrieve Person Preferences for a given application

Retrieves Person Preferences attributes (e.g. Timezone) in a JSON format. The Preferences refer to a specific Application. Note that the timezone is retrieved always in Windows format.

Authorizations:
path Parameters
personId
required
integer <int32>

The id of the person.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/persons/{personId}/preferences
https://example-host/v1.0/persons/{personId}/preferences

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Timezone": "Paraguay Standard Time",
  • "CultureInfo": "en-US",
  • "DecimalSeparator": ".",
  • "ThousandsSeparator": ",",
  • "DateFormat": "yyyy-MM-dd",
  • "TimeFormat": "HH:mm:ss",
  • "AmSymbol": "AM",
  • "PmSymbol": "PM",
  • "Currency":
    {
    },
  • "Language":
    {
    }
}

Updates Person Preferences

Updates Person Preferences attributes (e.g. Timezone) in a JSON format. Depending on the request values of IsAppSpecific, the Preferences may refer to a specific Application or cross-application. Note that, irrespective to the operating system, the timezone is always converted and stored in Windows format.

Authorizations:
path Parameters
personId
required
integer <int32>

The id of the person.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request body.

Timezone
string Nullable
CultureInfo
string Nullable
DecimalSeparator
string Nullable
ThousandsSeparator
string Nullable
DateFormat
string Nullable
TimeFormat
string Nullable
AmSymbol
string Nullable
PmSymbol
string Nullable
CurrencyId
integer <int32> Nullable
LanguageId
integer <int32> Nullable
IsAppSpecific
boolean
UpdateProperties
Array of strings Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/persons/{personId}/preferences
https://example-host/v1.1/persons/{personId}/preferences

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Timezone": "Paraguay Standard Time",
  • "CultureInfo": "en-US",
  • "DecimalSeparator": ".",
  • "ThousandsSeparator": ",",
  • "DateFormat": "yyyy-MM-dd",
  • "TimeFormat": "HH:mm:ss",
  • "AmSymbol": "AM",
  • "PmSymbol": "PM",
  • "CurrencyId": 2,
  • "LanguageId": 2,
  • "IsAppSpecific": false,
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

PortfolioManagement

Delete portfolio proposal

Deletes a portfolio proposal by ID.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio proposal

portfolioProposalId
required
integer <int32>

The ID of the portfolio proposal to retrieve

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/contacts/{contactId}/portfolioproposals/{portfolioProposalId}
https://example-host/v1.0/contacts/{contactId}/portfolioproposals/{portfolioProposalId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Delete portfolio account

Deletes a portfolio account.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to delete the account from

accountId
required
integer <int32>

The ID of the account to delete

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/contacts/{contactId}/portfolios/{portfolioId}/accounts/{accountId}
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/accounts/{accountId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Delete portfolio trading cart

Deletes the trading cart of a portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to delete the trading cart for

query Parameters
scope
string (InstrumentTradeTypeScope)
Enum: "Buy" "Sell" "All"

An optional parameter to specify the scope for which to delete the trading cart for. Can be 'Sell', 'Buy' or 'All'. Defaults to 'All' if not specified.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get portfolio trading cart

Gets the trading cart of a portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to get the trading cart for

query Parameters
language
required
string

The language in which to return all properties

scope
string (InstrumentTradeTypeScope)
Enum: "Buy" "Sell" "All"

An optional parameter to specify the scope for which to return the trading cart for. Can be 'Sell', 'Buy' or 'All'. Defaults to 'All' if not specified.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "PortfolioTradingCart":
    {
    }
}

Modify portfolio trading cart

Modifies the trading cart of a portfolio.
A desired action can be added to the trading cart by defining the details of the trade.
To remove the defined action from the trading cart, the same trade should be passed with an empty (i.e. null) amount / quantity.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to modify the trading cart for

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Trades
required
Array of objects (InstrumentTrade)

The list containing the trades to create/modify

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Trades":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Result": "Success"
}

Delete model portfolio

Deletes a model portfolio.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

modelPortfolioId
required
integer <int32>

The ID of the model portfolio to delete

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/members/{memberId}/model-portfolios/{modelPortfolioId}
https://example-host/v1.0/members/{memberId}/model-portfolios/{modelPortfolioId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get portfolio details

Gets a portfolio by ID. Returns all details about a portfolio including KPIs, positions, historical performance and fees. It will also return all goals that are assigned to the portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "SecuritiesValue": 770184.89,
  • "CashAmount": 1093.01,
  • "Fees":
    [
    ],
  • "HistoricalPerformance":
    [
    ],
  • "Positions":
    [
    ],
  • "HasPendingOrders": false,
  • "EsgPreferences":
    [
    ],
  • "Id": 1,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "ContactGroupId": 1,
  • "Name": "C002747290",
  • "Risk": 0.0399,
  • "Return": 0.0035,
  • "CreateDate": "2018-04-21T00:00:00",
  • "ExternalId": "C002747290",
  • "Currency":
    {
    },
  • "PortfolioTypeId": 1,
  • "PortfolioStatusId": 1,
  • "InvestedAmount": 836273.55,
  • "FirstInvestmentDate": "2018-04-23T00:00:00",
  • "RiskCategory":
    {
    },
  • "PortfolioRebalancingTypeId": 1,
  • "IsActive": true,
  • "CurrentValue": 771277.9,
  • "CurrentPerformance": 0.0035,
  • "CurrentMwrPerformance": 0.43973286,
  • "IsReadOnly": false,
  • "IsBreached": false,
  • "Goals":
    [
    ],
  • "Product":
    {
    },
  • "OptimizationConstraintId": 1,
  • "CalculatedExpectedReturn": 0.0039,
  • "CalculatedRisk": 0.042,
  • "SharpeRatio": 0.087,
  • "MaximumDrawdown": 0,
  • "TimeToRecovery": 0,
  • "ValueAtRisk": 0,
  • "DownsideVolatility": 0.02,
  • "SortinoRatio": 0.0039
}

Get portfolio overview

Gets the basic data and positions of a portfolio by ID. Should mainly be used to retrieve the positions of a portfolio. If additional data is needed 'contacts/{contactId}/portfolios/{portfolioId}' should be used.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/overview
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/overview

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "SecuritiesValue": 770184.89,
  • "CashAmount": 1093.01,
  • "CurrentValue": 771277.9,
  • "CurrentPerformance": 0.0035,
  • "Currency":
    {
    },
  • "Positions":
    [
    ],
  • "ProductId": 3,
  • "ProductUId": "00000000-0000-0000-0000-000000000000",
  • "ParentId": 5,
  • "HasPendingOrders": false
}

Get contact portfolios

Gets all portfolios for a specific contact. Returns a list of portfolio summaries (excluding positions and historical performance). The list of portfolios is determined by the contact groups the contact is a member of.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolios

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios
https://example-host/v1.0/contacts/{contactId}/portfolios

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get contact group portfolios

Gets all portfolios for a specific contact group. Returns a list of portfolio summaries (excluding positions and historical performance).

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolios

contactGroupId
required
integer <int32>

The ID of the contact group that has access to the portfolios

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/contacts/{contactId}/contactgroups/{contactGroupId}/portfolios
https://example-host/v1.1/contacts/{contactId}/contactgroups/{contactGroupId}/portfolios

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get model portfolios

Gets all model portfolios for a specific product filtered by criteria. Returns a list of model portfolio summaries (excluding positions). If the optional risk category ID is passed only model portfolios for this risk category will be returned.

Authorizations:
path Parameters
productId
required
integer <int32>

The ID of the product that the portfolios belong to

query Parameters
language
required
string

The language in which to return all properties

riskCategoryId
integer <int32>

The optional risk category ID to return only model portfolios of this risk category

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/products/{productId}/model-portfolios
https://example-host/v1.0/products/{productId}/model-portfolios

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get model portfolio details

Gets a model portfolio not assigned to a Member by ID.
Returns all details about a model portfolio including KPIs, positions and fees.

Authorizations:
path Parameters
modelPortfolioId
required
integer <int32>

The ID of the model portfolio to retrieve

query Parameters
language
required
string

The language in which to return all properties

currencyId
integer <int32>

The ID of the currency to use for KPI calculation

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.2/model-portfolios/{modelPortfolioId}
https://example-host/v1.2/model-portfolios/{modelPortfolioId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CustomExpectedRisk": 0.047,
  • "CustomExpectedReturn": 0.0042,
  • "CalculatedRisk": 0.042,
  • "CalculatedExpectedReturn": 0.0039,
  • "SharpeRatio": 0.087,
  • "Positions":
    [
    ],
  • "Fees":
    [
    ],
  • "BaseCurrency":
    {
    },
  • "IsEditable": false,
  • "MaximumDrawdown": 0,
  • "TimeToRecovery": 0,
  • "ValueAtRisk": 0,
  • "DownsideVolatility": 0.02,
  • "SortinoRatio": 0.0039,
  • "AllocationType":
    {
    },
  • "DerivedFromModelPortfolioId": 1,
  • "Id": 1,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "Name": "C002747290",
  • "IsActive": true,
  • "RiskCategory":
    {
    },
  • "ExternalId": "TEST1"
}

Get model portfolio details

Gets the details of a model portfolio assigned to a Member by ID.
Returns all details about a model portfolio including KPIs, positions and fees.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

modelPortfolioId
required
integer <int32>

The ID of the model portfolio to retrieve

query Parameters
language
required
string

The language in which to return all properties

currencyId
integer <int32>

The ID of the currency to use for KPI calculation

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.2/members/{memberId}/model-portfolios/{modelPortfolioId}
https://example-host/v1.2/members/{memberId}/model-portfolios/{modelPortfolioId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CustomExpectedRisk": 0.047,
  • "CustomExpectedReturn": 0.0042,
  • "CalculatedRisk": 0.042,
  • "CalculatedExpectedReturn": 0.0039,
  • "SharpeRatio": 0.087,
  • "Positions":
    [
    ],
  • "Fees":
    [
    ],
  • "BaseCurrency":
    {
    },
  • "IsEditable": false,
  • "MaximumDrawdown": 0,
  • "TimeToRecovery": 0,
  • "ValueAtRisk": 0,
  • "DownsideVolatility": 0.02,
  • "SortinoRatio": 0.0039,
  • "AllocationType":
    {
    },
  • "DerivedFromModelPortfolioId": 1,
  • "Id": 1,
  • "UId": "00000000-0000-0000-0000-000000000000",
  • "Name": "C002747290",
  • "IsActive": true,
  • "RiskCategory":
    {
    },
  • "ExternalId": "TEST1"
}

Get model portfolio constraints

Gets the constraints of a model portfolio not assigned to a Member by ID.

Authorizations:
path Parameters
modelPortfolioId
required
integer <int32>

The ID of the model portfolio to retrieve optimization constraints for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v3.0/model-portfolios/{modelPortfolioId}/optimizationconstraints
https://example-host/v3.0/model-portfolios/{modelPortfolioId}/optimizationconstraints

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "OptimizationConstraints":
    {
    }
}

Get model portfolio constraints

Gets the constraints of a model portfolio assigned to a Member by ID.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

modelPortfolioId
required
integer <int32>

The ID of the model portfolio to retrieve optimization constraints for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v3.0/members/{memberId}/model-portfolios/{modelPortfolioId}/optimizationconstraints
https://example-host/v3.0/members/{memberId}/model-portfolios/{modelPortfolioId}/optimizationconstraints

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "OptimizationConstraints":
    {
    }
}

Get investment overview

Gets the investment overview for a specific contact or of a specific contact group that the contact is a part of.
The investment overview contains a list of portfolio summaries of real portfolios and portfolio proposals as well as data aggregated from all real portfolios including a list of positions, the historical and current performance, current total amounts of securities and cash.
It also contains the base currency that all aggregated values have been converted to.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact to get the investment overview for

query Parameters
language
required
string

The language in which to return all properties

currencyId
integer <int32>

The ID of the currency to use as base currency and for KPI and historical performance calculation

contactGroupId
integer <int32>

The ID of the contact group that has access to the portfolio

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/contacts/{contactId}/investment-overview
https://example-host/v1.1/contacts/{contactId}/investment-overview

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CurrentValue": 19635964.0421,
  • "SecuritiesValue": 19608137.0219,
  • "CashAmount": 27826.94159,
  • "CurrentPerformance": 0.35339202826882854,
  • "CurrentPerformanceAmount": 839230.61183,
  • "CurrentMwrPerformance": 0.43973286,
  • "BaseCurrency":
    {
    },
  • "ConsolidatedPositions":
    [
    ]
}

Get portfolio constraints

Gets the constraints of a portfolio by ID.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve optimization constraints for

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v3.0/contacts/{contactId}/portfolios/{portfolioId}/optimizationconstraints
https://example-host/v3.0/contacts/{contactId}/portfolios/{portfolioId}/optimizationconstraints

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "OptimizationConstraints":
    {
    }
}

Get portfolio proposal details

Gets a portfolio proposal by ID. Returns all details about the proposal including KPIs, positions and historical performance.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio proposal

portfolioProposalId
required
integer <int32>

The ID of the portfolio proposal to retrieve

query Parameters
language
required
string

The language in which to return all properties

currencyId
integer <int32>

The ID of the currency to use for KPI and historical performance calculation

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/contacts/{contactId}/portfolioproposals/{portfolioProposalId}
https://example-host/v1.1/contacts/{contactId}/portfolioproposals/{portfolioProposalId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "CalculatedRisk": 0.042,
  • "CalculatedExpectedReturn": 0.0039,
  • "SharpeRatio": 0.087,
  • "DownsideVolatility": 0.02,
  • "SortinoRatio": 0.0039,
  • "HistoricalPerformance":
    [
    ],
  • "Positions":
    [
    ],
  • "Id": 1,
  • "Name": "C002747290",
  • "CustomExpectedRisk": 0.038,
  • "CustomExpectedReturn": 0.0035,
  • "PortfolioProposalStatusId": 1,
  • "CreateDate": "2018-04-21T00:00:00",
  • "ProductId": 1,
  • "CurrencyId": 0
}

Get portfolio proposal constraints

Gets the constraints of a portfolio proposal by ID.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio proposal

portfolioProposalId
required
integer <int32>

The ID of the portfolio proposal to retrieve optimization constraints for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v3.0/contacts/{contactId}/portfolioproposals/{portfolioProposalId}/optimizationconstraints
https://example-host/v3.0/contacts/{contactId}/portfolioproposals/{portfolioProposalId}/optimizationconstraints

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "OptimizationConstraints":
    {
    }
}

Get contact portfolio proposals

Gets all portfolio proposals for a specific contact. Returns a list of portfolio proposal summaries (excluding positions and historical performance). The list of portfolio proposals is determined by the contact groups the contact is a member of.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio proposals

query Parameters
portfolioId
integer <int32>

Optional ID of the Portfolio

language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolioproposals
https://example-host/v1.0/contacts/{contactId}/portfolioproposals

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get portfolio accounts

Gets the accounts related to a portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve the transactions for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/accounts
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/accounts

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Link portfolio account

Links accounts to a portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to create the account for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

AccountId
integer <int32>
IsDefaultCustodyAccount
boolean
IsPayoutAccount
boolean
IsPayinAccount
boolean Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/accounts
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/accounts

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AccountId": 34,
  • "IsDefaultCustodyAccount": true,
  • "IsPayoutAccount": false,
  • "IsPayinAccount": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Account":
    {
    },
  • "IsDefaultCustodyAccount": true,
  • "IsPayoutAccount": false,
  • "IsPayinAccount": false
}

Get portfolio changes

Gets the changes of a portfolio within an optional date range.

All currency values are returned in the base currency of the portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve the changes for

query Parameters
page
required
integer <int32>

The result page number, starting by 1

pageSize
required
integer <int32>

The number of items in a result page

language
required
string

The language in which to return all properties

from
string <date-time>

An optional start date for returning only changes with this date or newer

to
string <date-time>

An optional end date for returning only changes with this date or older

changeStatusId
string (PortfolioChangeStatusId)
Enum: "ToBeProcessed" "Processed" "Canceled" "Failed"

An optional change status to filter the portfolio changes for this value. Default value is null.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.2/contacts/{contactId}/portfolios/{portfolioId}/changes
https://example-host/v1.2/contacts/{contactId}/portfolios/{portfolioId}/changes

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Changes":
    [
    ],
  • "TotalNumberOfResults": 2
}

Get portfolio order book

Gets the order book entries of a portfolio within an optional date range.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve the changes for

query Parameters
page
required
integer <int32>

The result page number, starting by 1

pageSize
required
integer <int32>

The number of items in a result page

language
required
string

The language in which to return all properties

from
string <date-time>

An optional start date for returning only order book entries with this date or newer

to
string <date-time>

An optional end date for returning only order book entries with this date or older

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OrderBookEntries":
    [
    ],
  • "TotalNumberOfResults": 2
}

Search portfolio order book

Searches the order book entries of a portfolio by provided criteria

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve the changes for

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The search criteria

PortfolioChangeIds
Array of integers <int32> Nullable
SecurityIds
Array of integers <int32> Nullable
StockExchangeIds
Array of integers <int32> Nullable
StockExchangeOrderTypeIds
Array of integers <int32> Nullable
StockExchangeOrderValidityIds
Array of integers <int32> Nullable
OrderBookStatusIds
Array of integers <int32> Nullable
OrderTypeIds
Array of integers <int32> Nullable
BlockOrderIds
Array of integers <int32> Nullable
OrderBookIntegrationStatusIds
Array of integers <int32> Nullable
TradingCurrencyIds
Array of integers <int32> Nullable
CreateDateFrom
string <date-time> Nullable
CreateDateTo
string <date-time> Nullable
ReleaseDateFrom
string <date-time> Nullable
ReleaseDateTo
string <date-time> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioChangeIds":
    [
    ],
  • "SecurityIds":
    [
    ],
  • "StockExchangeIds":
    [
    ],
  • "StockExchangeOrderTypeIds":
    [
    ],
  • "StockExchangeOrderValidityIds":
    [
    ],
  • "OrderBookStatusIds":
    [
    ],
  • "OrderTypeIds":
    [
    ],
  • "BlockOrderIds":
    [
    ],
  • "OrderBookIntegrationStatusIds":
    [
    ],
  • "TradingCurrencyIds":
    [
    ],
  • "CreateDateFrom": "2024-01-23T15:03:01Z",
  • "CreateDateTo": "2024-01-23T15:03:01Z",
  • "ReleaseDateFrom": "2024-01-23T15:03:01Z",
  • "ReleaseDateTo": "2024-01-23T15:03:01Z",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Calculate portfolio performance

Returns the performance time series of a portfolio for a given date range and the currency information used for calculation. If no date is passed it returns the whole time series since inception.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio for which the performance will be calculated

query Parameters
from
string <date-time>

An optional date which represents the start date of the interval for the calculated performance time series

to
string <date-time>

An optional date which represents the end date of the interval for the calculated performance time series

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/performance
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/performance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ],
  • "Currency":
    {
    }
}

Calculate investment overview performance

Returns the performance time series of all portfolios that belongs to a contact or of a contact group that the contact is a part of, for a given date range and the currency information used for calculation.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact

query Parameters
currencyId
integer <int32>

The ID of the currency to use as base currency for performance calculation

from
string <date-time>

An optional date which represents the start date of the interval for the calculated performance time series

to
string <date-time>

An optional date which represents the end date of the interval for the calculated performance time series

contactGroupId
integer <int32>

The Id of a contact group that the contact is a part of. This will filter even more the results by only displaying the performance of that contact group, as oppose to displaying the performance of a contact, which may be a part of multiple contact groups.

portfolioStatus
string (PortfolioStatusFilterKey)
Enum: "All" "Implemented" "Blocked" "Closed"

An optional input allowing the user to define which portfolios should be aggregated together based on their current status.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/investment-overview/performance
https://example-host/v1.0/contacts/{contactId}/investment-overview/performance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ],
  • "Currency":
    {
    }
}

Get portfolio monetary performance

Returns the monetary performance time series of a portfolio for a given date range and the currency information used for calculation.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio for which the monetary performance will be retrieved

query Parameters
from
string <date-time>

An optional date which represents the start date of the interval for the monetary performance time series

to
string <date-time>

An optional date which represents the end date of the interval for the monetary performance time series

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/monetary-performance
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/monetary-performance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ],
  • "Currency":
    {
    }
}

Get investment overview monetary performance

Returns the daily monetary performance time series of all portfolios for a given contact or of a respective contact group that the contact is a part of, and a given date range and the currency information used for calculation.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolios

query Parameters
currencyId
integer <int32>

The ID of the currency to use as base currency for performance calculation

from
string <date-time>

An optional date which represents the start date of the interval for the monetary performance time series

to
string <date-time>

An optional date which represents the end date of the interval for the monetary performance time series

contactGroupId
integer <int32>

The Id of a contact group that the contact is a part of. This will filter even more the results by only displaying the performance of that contact group, as oppose to displaying the performance of a contact, which may be a part of multiple contact groups.

portfolioStatus
string (PortfolioStatusFilterKey)
Enum: "All" "Implemented" "Blocked" "Closed"

An optional input allowing the user to define which portfolios should be aggregated together based on their current status.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/investment-overview/monetary-performance
https://example-host/v1.0/contacts/{contactId}/investment-overview/monetary-performance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ],
  • "Currency":
    {
    }
}

Get member model portfolios

Gets model portfolios associated to a member hierarchy.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

query Parameters
language
required
string

The language in which to return all properties

riskCategoryId
integer <int32>

The optional risk category ID to return only model portfolios of this risk category

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.1/members/{memberId}/model-portfolios
https://example-host/v1.1/members/{memberId}/model-portfolios

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Get product balances

Gets balance information for each product of a contact. Returns the current balance as well as the balance history and the allocation percentage. All balance information is returned in the base currency (returned in the Currency property) Only balance information from active accounts is returned.

Authorizations:
path Parameters
contactId
required
integer <int32>
query Parameters
language
required
string
calculationInterval
string (CalculationInterval)
Enum: "Daily" "Weekly" "Monthly" "Yearly"
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/products/balances
https://example-host/v1.0/contacts/{contactId}/products/balances

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Total": 0,
  • "Currency":
    {
    },
  • "Products":
    [
    ]
}

Get switch suggestion details

Gets the switch suggestion details.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio associated with the suggestion basket

switchSuggestionId
required
integer <int32>

The ID of the suggestion basket

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions/{switchSuggestionId}
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions/{switchSuggestionId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "UId": "fb7f9a14-e0cd-4797-8d08-efda8e069fea",
  • "InteractionId": 128,
  • "MemberId": 23,
  • "CreateDate": "2021-01-18T12:00:03",
  • "ValidTill": "2021-02-20T11:59:07",
  • "Switches":
    [
    ]
}

Accept/Reject switch suggestion

Accepts or rejects a switch suggestion.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio associated with the suggestion basket

switchSuggestionId
required
integer <int32>

The ID of the suggestion basket

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

IsAccepted
boolean

Determines whether the switch suggestion should be accepted or rejected.

ForceOrderGeneration
boolean

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions/{switchSuggestionId}
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions/{switchSuggestionId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "IsAccepted": true,
  • "ForceOrderGeneration": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Get switch suggestions details

Gets the switch suggestions details.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio associated with the suggestion baskets

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    },
  • {
    }
]

Get portfolio re-evaluation

Returns a re-evaluation of the portfolio according to the latest security and currency prices available to it.
Note this is an estimate made using the latest positions of the portfolio available to the application (i.e. as per data present in PortfolioContent).

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio that will be reevaluated

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/re-evaluate
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/re-evaluate

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "SecuritiesValue": 0,
  • "CashAmount": 0,
  • "Positions":
    [
    ]
}

Calculate security-level portfolio performance

Returns the performance time series of a security in a portfolio for a given date range and the currency information used for calculation. If no date is passed it returns the whole time series since inception.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio

securityId
required
integer <int32>

The ID of the security

query Parameters
from
string <date-time>

An optional date which represents the start date of the interval for the calculated performance time series

to
string <date-time>

An optional date which represents the end date of the interval for the calculated performance time series

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/securities/{securityId}/performance
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/securities/{securityId}/performance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Performance":
    [
    ],
  • "Currency":
    {
    }
}

Calculate security-level portfolio monetary performance

Returns the monetary performance time series of a security in a portfolio for a given date range and the currency information used for calculation. If no date is passed it returns the whole time series since inception.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio

securityId
required
integer <int32>

The ID of the security

query Parameters
from
string <date-time>

An optional date which represents the start date of the interval for the calculated performance time series

to
string <date-time>

An optional date which represents the end date of the interval for the calculated performance time series

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/securities/{securityId}/monetary-performance
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/securities/{securityId}/monetary-performance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Performance":
    [
    ],
  • "Currency":
    {
    }
}

Get portfolio proposal allocations

Calculates and returns the allocations of a passed portfolio proposal.

Note that components take precedence over breakdowns (i.e. if the security has both components and breakdowns, components take precedence when returning the allocations).
If one, or more, of the securities have neither components nor breakdowns, their actual (main) attributes are used instead.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio proposal

portfolioProposalId
required
integer <int32>

The ID of the portfolio proposal to retrieve

query Parameters
includeLookThrough
required
boolean

Determines whether security look-through should be accounted for category

category
string (FundBreakdownCategory)
Enum: "AssetClass" "Country" "Currency" "EconomicalZone" "Instrument" "Focus" "Sector" "Type" "ParentAssetClass" "ParentSector"

The category for which the allocations should be returned

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolioproposals/{portfolioProposalId}/allocations
https://example-host/v1.0/contacts/{contactId}/portfolioproposals/{portfolioProposalId}/allocations

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "PortfolioProposalAllocations":
    [
    ]
}

Get model portfolio allocations

Calculates and returns the allocations of a passed model portfolio that is assigned, or not, to a Member.

Note that components take precedence over breakdowns (i.e. if the security has both components and breakdowns, components take precedence when returning the allocations).
If one, or more, of the securities have neither components nor breakdowns, their actual (main) attributes are used instead.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

modelPortfolioId
required
integer <int32>

The ID of the model portfolio to retrieve

query Parameters
includeLookThrough
required
boolean

Determines whether security look-through should be accounted for category

category
string (FundBreakdownCategory)
Enum: "AssetClass" "Country" "Currency" "EconomicalZone" "Instrument" "Focus" "Sector" "Type" "ParentAssetClass" "ParentSector"

The category for which the allocations should be returned

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/members/{memberId}/model-portfolios/{modelPortfolioId}/allocations
https://example-host/v1.0/members/{memberId}/model-portfolios/{modelPortfolioId}/allocations

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ModelPortfolioAllocations":
    [
    ]
}

Get model portfolio allocations

Calculates and returns the allocations of a passed model portfolio that is not assigned to a Member.

Note that components take precedence over breakdowns (i.e. if the security has both components and breakdowns, components take precedence when returning the allocations).
If one, or more, of the securities have neither components nor breakdowns, their actual (main) attributes are used instead.

Authorizations:
path Parameters
modelPortfolioId
required
integer <int32>

The ID of the model portfolio to retrieve

query Parameters
includeLookThrough
required
boolean

Determines whether security look-through should be accounted for category

category
string (FundBreakdownCategory)
Enum: "AssetClass" "Country" "Currency" "EconomicalZone" "Instrument" "Focus" "Sector" "Type" "ParentAssetClass" "ParentSector"

The category for which the allocations should be returned

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/model-portfolios/{modelPortfolioId}/allocations
https://example-host/v1.0/model-portfolios/{modelPortfolioId}/allocations

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ModelPortfolioAllocations":
    [
    ]
}

Get contact allocations

Calculates and returns the allocations of a passed contact of a specific contact group that the contact is a part of.

Note that components take precedence over breakdowns (i.e. if the security has both components and breakdowns, components take precedence when returning the allocations).
If one, or more, of the securities have neither components nor breakdowns, their actual (main) attributes are used instead.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact to get the allocations for

query Parameters
includeLookThrough
required
boolean

Determines whether security look-through should be accounted for category

category
string (FundBreakdownCategory)
Enum: "AssetClass" "Country" "Currency" "EconomicalZone" "Instrument" "Focus" "Sector" "Type" "ParentAssetClass" "ParentSector"

The category for which the allocations should be returned

language
required
string

The language in which to return currency name

currencyId
integer <int32>

The ID of the currency to use as base currency

contactGroupId
integer <int32>

The Id of a contact group that the contact is a part of. This will filter even more the results by only displaying the allocations of that contact group, as oppose to displaying the allocation of a contact, which may be a part of multiple contact groups.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/allocations
https://example-host/v1.0/contacts/{contactId}/allocations

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Allocations":
    [
    ],
  • "Currency":
    {
    }
}

Get portfolio allocations

Calculates and returns the allocations of a passed portfolio.

Note that components take precedence over breakdowns (i.e. if the security has both components and breakdowns, components take precedence when returning the allocations).
If one, or more, of the securities have neither components nor breakdowns, their actual (main) attributes are used instead.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to get the allocations

query Parameters
includeLookThrough
required
boolean

Determines whether security look-through should be accounted for category

category
string (FundBreakdownCategory)
Enum: "AssetClass" "Country" "Currency" "EconomicalZone" "Instrument" "Focus" "Sector" "Type" "ParentAssetClass" "ParentSector"

The category for which the allocations should be returned

language
string

The language in which to return currency name

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/contacts/{contactId}/portfolios/{portfolioId}/allocations
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/allocations

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Allocations":
    [
    ],
  • "Currency":
    {
    }
}

Modify portfolio

Modifies an existing portfolio. For portfolios that have not been implemented yet the portfolio positions can be modified based on a set of instrument allocation orders (passed in the AllocationsOrder property), on an existing model portfolio (passed in the ModelPortfolioId property) or based on an existing portfolio proposal (passed in the PortfolioProposalId property). For virtual portfolios the position changes will become effective immediately. If no data is provided in all properties no changes will be made to the portfolio positions. Changing the portfolio properties (Name, ...) is possible with any portfolio type and status

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the modified portfolio should be based on (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the modified portfolio should be based on (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

AllocationsOrder
object (InstrumentSetOrder)

Holds information about an order for an instrument set

Name
string Nullable

The optional new name of the portfolio. Will be ignored if not set.

InitialInvestmentAmount
number <double> Nullable

The optional new initial investment amount for the portfolio in portfolio currency. If not specified then the sum of all payin account balances linked to the portfolio will be used as initial investment amount. Can only be set for portfolios that have not been ordered yet.

CurrencyId
integer <int32> Nullable

The optional new currency ID of the portfolio.

RebalancingType
string (PortfolioRebalancingTypeId)
Enum: "NoRebalancing" "Manual" "Automatic"
IsBreached
boolean Nullable

The optional parameter which tells if a portfolio is breached. If not passed all portfolios will be returned

CustomAttributes
string Nullable

Custom attributes specific to the tenant

RiskCategoryId
integer <int32> Nullable

The optional new risk category ID of the portfolio

PortfolioStatus
string (PortfolioStatusId)
Enum: "NotImplemented" "InExecution" "Implemented" "Blocked" "Closed"
ExternalId
string Nullable

The optional ExternalId of the portfolio

PortfolioType
string (PortfolioTypeId)
Enum: "Real" "Virtual" "Slice"
Fees
Array of objects (FeeRequest) Nullable

An optional set of fees and fees definitions to be associated with the portfolio. Is only used if the current status of the portfolio is not Implemented. If not specified then the portfolio will inherit the fees and fees definitions of the ProductId only if the ProductId will be differit by the one associated with the portfolio.

Accounts
Array of objects (PortfolioAccountInfo) Nullable

An optional list of accounts the portfolio will be associated with.

ProductId
integer <int32> Nullable

The optional ID of the product that the portfolio will be associated with.

ContactGroupId
integer <int32> Nullable

The optional ID of the contact group that the portfolio will be associated with.

OptimizationConstraints
object (OptimizationConstraintRequest)
BenchmarkId
integer <int32> Nullable

The benchmark associated with the portfolio

EsgPreferences
Array of objects (EsgPreference) Nullable

The ESG preferences associated with the portfolio

UpdateProperties
Array of strings Nullable

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.2/contacts/{contactId}/portfolios/{portfolioId}
https://example-host/v1.2/contacts/{contactId}/portfolios/{portfolioId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ModelPortfolioId": 1,
  • "PortfolioProposalId": 1,
  • "AllocationsOrder":
    {
    },
  • "Name": "C002747290",
  • "InitialInvestmentAmount": 100,
  • "CurrencyId": 3,
  • "RebalancingType": "Automatic",
  • "IsBreached": false,
  • "CustomAttributes": "{\"Description\": \"The Portfolio the Client always wanted to have.\"}",
  • "RiskCategoryId": 1,
  • "PortfolioStatus": "NotImplemented",
  • "ExternalId": "EXT123",
  • "PortfolioType": "Real",
  • "Fees":
    [
    ],
  • "Accounts":
    [
    ],
  • "ProductId": 5,
  • "ContactGroupId": 1,
  • "OptimizationConstraints":
    {
    },
  • "BenchmarkId": 5,
  • "EsgPreferences":
    [
    ],
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify portfolio proposal

Modifies a portfolio proposal. The portfolio proposal can be modified based on a set of instrument allocations (passed in the InstrumentAllocations property) or based on an existing model portfolio (passed in the ModelPortfolioId property). If no data is provided in both properties no changes will be made to the portfolio proposal details, but only to the properties specified (Name, ...)

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio proposal

portfolioProposalId
required
integer <int32>

The ID of the portfolio proposal to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the portfolio proposal should be changed to (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

InstrumentAllocations
Array of objects (InstrumentInformation) Nullable

The instruments and their allocations of the portfolio proposal. Is only used if ModelPortfolioId is not set.

Name
string Nullable

The optional name of the portfolio proposal

PortfolioProposalStatusId
integer <int32>

The ID of proposal status

ProductId
integer <int32>

The ID of the product that the portfolio proposal belongs to

CurrencyId
integer <int32>

The ID of proposal currency

BenchmarkId
integer <int32> Nullable

The ID of the security used as a benchmark index

PortfolioId
integer <int32> Nullable

The ID of the portfolio that the portfolio proposal is linked to

ExpectedReturn
number <double> Nullable

This is the expected return passed by the user - if not passed the value is calculated by the application at the time of the proposal creation

ExpectedRisk
number <double> Nullable

This is the expected risk passed by the user - if not passed the value is calculated by the application at the time of the proposal creation

RecommendedInvestment
number <double> Nullable

This is the recommended investment for the proposal

OptimizationConstraints
object (OptimizationConstraintRequest)
UpdateProperties
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.2/contacts/{contactId}/portfolioproposals/{portfolioProposalId}
https://example-host/v1.2/contacts/{contactId}/portfolioproposals/{portfolioProposalId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InstrumentAllocations":
    [
    ],
  • "Name": "C002747291",
  • "PortfolioProposalStatusId": 1,
  • "ProductId": 1,
  • "CurrencyId": 1,
  • "OptimizationConstraints":
    {
    },
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify portfolio change

Modifies specific properties of a portfolio changeset

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio the orders belong to

portfolioChangeId
required
integer <int32>

The ID of the portfolio changeset to be modified

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO.

Availability
string (PortfolioChangeAvailabilityId)
Enum: "OnHold" "Ready"
Status
string (PortfolioChangeStatusId)
Enum: "ToBeProcessed" "Processed" "Canceled" "Failed"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/contacts/{contactId}/portfolios/{portfolioId}/changes/{portfolioChangeId}
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/changes/{portfolioChangeId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Availability": "Ready",
  • "Status": "ToBeProcessed"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify model portfolio

Modifies a model portfolio.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

modelPortfolioId
required
integer <int32>

The ID of the model portfolio to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Name
Array of objects (LocalizedValue) Nullable

The name of the model portfolio

Description
Array of objects (LocalizedValue) Nullable

The optional description of the model portfolio

MinInvestment
number <double> Nullable

This is the minimum investment for the model portfolio

MaxInvestment
number <double> Nullable

This is the maximum investment for the model portfolio

ExpectedReturn
number <double> Nullable

This is the expected return of the model portfolio

ExpectedRisk
number <double> Nullable

This is the expected risk of the model portfolio

TimeHorizon
integer <int32> Nullable
IsActive
boolean
IsEditable
boolean

This determines whether a Proposal / Portfolio that is based on this model can be modified

BenchmarkId
integer <int32> Nullable

This is the id of the benchmark associated with the model portfolio

TypeId
string (ModelPortfolioTypeId)
Enum: "InstrumentBased" "AssetAllocationBased"
AllocationTypeId
string (ModelPortfolioAllocationTypeId)
Enum: "SaaModel" "TaaModel" "NormalModel"
DerivedFromModelPortfolioId
integer <int32> Nullable

The Id of the model portfolio from which the current model portfolio derives.

OptimizationTypeId
integer <int32> Nullable

The optional optimization type of the model portfolio

RiskCategoryId
integer <int32> Nullable
RiskCategoryDefinitionId
integer <int32> Nullable
Factsheet
object (Factsheet)

The fact-sheet URL for the model portfolio

CustomAttributes
string Nullable
InstrumentAllocations
Array of objects (InstrumentAllocation) Nullable
Fees
Array of objects (FeeRequest) Nullable

A set of fees and fees definitions to be associated with the model portfolio.
If for a fee the FeeDefinitions node is omitted then only the fee properties will be updated.

OptimizationConstraints
object (OptimizationConstraintRequest)
ExternalId
string Nullable

This is the External Id of the model portfolio

UpdateProperties
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.3/members/{memberId}/model-portfolios/{modelPortfolioId}
https://example-host/v1.3/members/{memberId}/model-portfolios/{modelPortfolioId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "Description":
    [
    ],
  • "MinInvestment": 1000,
  • "MaxInvestment": 10000,
  • "ExpectedReturn": 1,
  • "ExpectedRisk": 1,
  • "TimeHorizon": 10,
  • "IsActive": true,
  • "IsEditable": true,
  • "BenchmarkId": 11,
  • "TypeId": "InstrumentBased",
  • "AllocationTypeId": "NormalModel",
  • "DerivedFromModelPortfolioId": 1,
  • "OptimizationTypeId": 1,
  • "RiskCategoryId": 4,
  • "RiskCategoryDefinitionId": 49,
  • "Factsheet":
    {},
  • "CustomAttributes": "{\"Description\": \"Custom Attributes of Model Portfolio.\"}",
  • "InstrumentAllocations":
    [
    ],
  • "Fees":
    [
    ],
  • "OptimizationConstraints":
    {
    },
  • "ExternalId": "TEST1",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify order(s) status

Modifies the status of a given set of orders. The service cannot be used to release orders.

Authorizations:
path Parameters
memberId
required
integer <int32>

The ID of the member

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

OrderBookIds
Array of integers <int32> Nullable
OrderBookStatus
string (OrderBookStatusId)
Enum: "Reconciliation" "ToBeProcessed" "Generated" "Released" "Pulled" "Cancelled" "PartiallyExecuted" "Executed" "Error" "ThresholdBreached" "Undelivered"
Comment
string Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/members/{memberId}/orderbook
https://example-host/v1.0/members/{memberId}/orderbook

Request samples

Content type
Copy
Expand all Collapse all
{
  • "OrderBookIds":
    [
    ],
  • "OrderBookStatus": "Reconciliation",
  • "Comment": "string"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify switch suggestion

Modifies a switch suggestion.

Authorizations:
path Parameters
memberId
required
integer <int32>

The ID of the member that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio associated with the suggestion basket

switchSuggestionId
required
integer <int32>

The ID of the suggestion basket

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ValidTill
required
string <date-time>
Switches
required
Array of objects (SwitchPair)

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/members/{memberId}/portfolios/{portfolioId}/switchSuggestions/{switchSuggestionId}
https://example-host/v1.0/members/{memberId}/portfolios/{portfolioId}/switchSuggestions/{switchSuggestionId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ValidTill": "2024-02-01T09:44:07.2884258Z",
  • "Switches":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify order

Modifies specific attributes of an order.

Authorizations:
path Parameters
memberId
required
integer <int32>

The ID of the member

orderBookId
required
integer <int32>

The ID of the order

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

FundingAccountId
integer <int32> Nullable

The funding account associated with the Order

CustodyAccountId
integer <int32>

The custody account associated with the Order

StockExchangeId
integer <int32> Nullable

The stock exchange associated with the Order

Quantity
number <double> Nullable

The quantity associated with the Order

StockExchangeOrderType
string (StockExchangeOrderTypeId)
Enum: "Market" "Limit" "Stop" "StopLimit"
LimitPrice
number <double> Nullable

The limit price associated with the Order

StopPrice
number <double> Nullable

The stop price associated with the Order

ValidityType
string (StockExchangeOrderValidityId)
Enum: "GoodTillDate" "DayOrder" "GoodTillCancelled" "ImmediateOrCancel" "FillOrKill" "OnTheOpen" "OnTheClose"
ValidityDate
string <date-time> Nullable

The validity date associated with the Order

Status
string (OrderBookStatusId)
Enum: "Reconciliation" "ToBeProcessed" "Generated" "Released" "Pulled" "Cancelled" "PartiallyExecuted" "Executed" "Error" "ThresholdBreached" "Undelivered"
IntegrationStatus
string Nullable

The integration status associated with the Order

ExternalId
string Nullable

The external id associated with the Order

Comment
string Nullable

A comment associated with the Order

UpdateProperties
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/members/{memberId}/orderbook/{orderBookId}
https://example-host/v1.1/members/{memberId}/orderbook/{orderBookId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CustodyAccountId": 1,
  • "StockExchangeId": 190,
  • "Quantity": 34333,
  • "StockExchangeOrderType": "Limit",
  • "LimitPrice": 4343.45,
  • "StopPrice": 6343.45,
  • "ValidityType": "OnTheClose",
  • "ValidityDate": "2024-01-25T09:44:07.3005322Z",
  • "Status": "PartiallyExecuted",
  • "IntegrationStatus": "Ext1Released",
  • "ExternalId": "125346127534",
  • "Comment": "Comment",
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Modify block-order(s) status

Modifies the status of a given set of block orders. The service cannot be used to release block orders.

Authorizations:
path Parameters
memberId
required
integer <int32>

The ID of the member

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

BlockOrderBookIds
Array of integers <int32> Nullable
BlockOrderStatus
string (OrderBookStatusId)
Enum: "Reconciliation" "ToBeProcessed" "Generated" "Released" "Pulled" "Cancelled" "PartiallyExecuted" "Executed" "Error" "ThresholdBreached" "Undelivered"
CancelAssociatedOrders
boolean Nullable
OrderStatus
string (OrderBookStatusId)
Enum: "Reconciliation" "ToBeProcessed" "Generated" "Released" "Pulled" "Cancelled" "PartiallyExecuted" "Executed" "Error" "ThresholdBreached" "Undelivered"

Responses

204

No Content

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.0/members/{memberId}/blockorderbook
https://example-host/v1.0/members/{memberId}/blockorderbook

Request samples

Content type
Copy
Expand all Collapse all
{
  • "BlockOrderBookIds":
    [
    ],
  • "BlockOrderStatus": "Reconciliation",
  • "CancelAssociatedOrders": true,
  • "OrderStatus": "Reconciliation"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Search orders

Searches for orders and returns a list with orders (and key attributes) matching the passed request parameters.
Sorting can be performed by specifying any property name or child property name using navigation (PortfolioChangeId, LimitPrice, ExternalId) in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

Ids
Array of integers <int32> Nullable
ContactIds
Array of integers <int32> Nullable
PortfolioName
string Nullable
PortfolioExternalId
string Nullable
PortfolioIds
Array of integers <int32> Nullable
RiskCategoryIds
Array of integers <int32> Nullable
CustodyAccountIds
Array of integers <int32> Nullable
FundingAccountIds
Array of integers <int32> Nullable
PortfolioChangeIds
Array of integers <int32> Nullable
PortfolioChangeTypeIds
Array of integers <int32> Nullable
ProductOfferIds
Array of integers <int32> Nullable
ProductIds
Array of integers <int32> Nullable
ModelPortfolioIds
Array of integers <int32> Nullable
PortfolioProposalIds
Array of integers <int32> Nullable
SecurityName
string Nullable
SecurityIsin
string Nullable
SecurityIds
Array of integers <int32> Nullable
StockExchangeIds
Array of integers <int32> Nullable
StockExchangeOrderTypeIds
Array of integers <int32> Nullable
StockExchangeOrderValidityIds
Array of integers <int32> Nullable
BlockOrderIds
Array of integers <int32> Nullable
OrderTypeIds
Array of integers <int32> Nullable
StatusIds
Array of integers <int32> Nullable
TradingCurrencyIds
Array of integers <int32> Nullable
IntegrationStatusIds
Array of integers <int32> Nullable
ExternalId
string Nullable
AccountTransactionId
integer <int32> Nullable
ValidityDateFrom
string <date-time> Nullable
ValidityDateTo
string <date-time> Nullable
CreateDateFrom
string <date-time> Nullable
CreateDateTo
string <date-time> Nullable
ReleaseDateFrom
string <date-time> Nullable
ReleaseDateTo
string <date-time> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/orderbook/search
https://example-host/v1.0/orderbook/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Ids":
    [
    ],
  • "ContactIds":
    [
    ],
  • "PortfolioName": "string",
  • "PortfolioExternalId": "string",
  • "PortfolioIds":
    [
    ],
  • "RiskCategoryIds":
    [
    ],
  • "CustodyAccountIds":
    [
    ],
  • "FundingAccountIds":
    [
    ],
  • "PortfolioChangeIds":
    [
    ],
  • "PortfolioChangeTypeIds":
    [
    ],
  • "ProductOfferIds":
    [
    ],
  • "ProductIds":
    [
    ],
  • "ModelPortfolioIds":
    [
    ],
  • "PortfolioProposalIds":
    [
    ],
  • "SecurityName": "string",
  • "SecurityIsin": "string",
  • "SecurityIds":
    [
    ],
  • "StockExchangeIds":
    [
    ],
  • "StockExchangeOrderTypeIds":
    [
    ],
  • "StockExchangeOrderValidityIds":
    [
    ],
  • "BlockOrderIds":
    [
    ],
  • "OrderTypeIds":
    [
    ],
  • "StatusIds":
    [
    ],
  • "TradingCurrencyIds":
    [
    ],
  • "IntegrationStatusIds":
    [
    ],
  • "ExternalId": "string",
  • "AccountTransactionId": 0,
  • "ValidityDateFrom": "2024-01-23T15:03:01Z",
  • "ValidityDateTo": "2024-01-23T15:03:01Z",
  • "CreateDateFrom": "2024-01-23T15:03:01Z",
  • "CreateDateTo": "2024-01-23T15:03:01Z",
  • "ReleaseDateFrom": "2024-01-23T15:03:01Z",
  • "ReleaseDateTo": "2024-01-23T15:03:01Z",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search block orders

Searches for block orders and returns a list with block orders (and key attributes) matching the passed request parameters.
Sorting can be performed by specifying any property name or child property name using navigation (PortfolioChangeId, LimitPrice, ExternalId) in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

Ids
Array of integers <int32> Nullable
SecurityName
string Nullable
SecurityIsin
string Nullable
SecurityIds
Array of integers <int32> Nullable
ContactIds
Array of integers <int32> Nullable
PortfolioName
string Nullable
PortfolioExternalId
string Nullable
PortfolioIds
Array of integers <int32> Nullable
RiskCategoryIds
Array of integers <int32> Nullable
ProductOfferIds
Array of integers <int32> Nullable
ProductIds
Array of integers <int32> Nullable
ModelPortfolioIds
Array of integers <int32> Nullable
PortfolioProposalIds
Array of integers <int32> Nullable
StockExchangeIds
Array of integers <int32> Nullable
StockExchangeOrderTypeIds
Array of integers <int32> Nullable
StockExchangeOrderValidityIds
Array of integers <int32> Nullable
OrderTypeIds
Array of integers <int32> Nullable
StatusIds
Array of integers <int32> Nullable
IntegrationStatusIds
Array of integers <int32> Nullable
ExternalId
string Nullable
ValidityDateFrom
string <date-time> Nullable
ValidityDateTo
string <date-time> Nullable
CreateDateFrom
string <date-time> Nullable
CreateDateTo
string <date-time> Nullable
ReleaseDateFrom
string <date-time> Nullable
ReleaseDateTo
string <date-time> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/blockorderbook/search
https://example-host/v1.0/blockorderbook/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Ids":
    [
    ],
  • "SecurityName": "string",
  • "SecurityIsin": "string",
  • "SecurityIds":
    [
    ],
  • "ContactIds":
    [
    ],
  • "PortfolioName": "string",
  • "PortfolioExternalId": "string",
  • "PortfolioIds":
    [
    ],
  • "RiskCategoryIds":
    [
    ],
  • "ProductOfferIds":
    [
    ],
  • "ProductIds":
    [
    ],
  • "ModelPortfolioIds":
    [
    ],
  • "PortfolioProposalIds":
    [
    ],
  • "StockExchangeIds":
    [
    ],
  • "StockExchangeOrderTypeIds":
    [
    ],
  • "StockExchangeOrderValidityIds":
    [
    ],
  • "OrderTypeIds":
    [
    ],
  • "StatusIds":
    [
    ],
  • "IntegrationStatusIds":
    [
    ],
  • "ExternalId": "string",
  • "ValidityDateFrom": "2024-01-23T15:03:01Z",
  • "ValidityDateTo": "2024-01-23T15:03:01Z",
  • "CreateDateFrom": "2024-01-23T15:03:01Z",
  • "CreateDateTo": "2024-01-23T15:03:01Z",
  • "ReleaseDateFrom": "2024-01-23T15:03:01Z",
  • "ReleaseDateTo": "2024-01-23T15:03:01Z",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search portfolio changes

Searches for portfolio changes and returns a list with portfolio changes (and key attributes) matching the passed request parameters.
Sorting can be performed by specifying any property name (no child property name in this case) in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

Ids
Array of integers <int32> Nullable
PortfolioIds
Array of integers <int32> Nullable
RiskCategoryIds
Array of integers <int32> Nullable
ModelPortfolioIds
Array of integers <int32> Nullable
LinkedPortfolioChangeIds
Array of integers <int32> Nullable
PortfolioChangeTypeIds
Array of integers <int32> Nullable
PortfolioProposalIds
Array of integers <int32> Nullable
PortfolioChangeAvailabilityIds
Array of integers <int32> Nullable
CreateDateFrom
string <date-time> Nullable
CreateDateTo
string <date-time> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/changes/search
https://example-host/v1.0/changes/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Ids":
    [
    ],
  • "PortfolioIds":
    [
    ],
  • "RiskCategoryIds":
    [
    ],
  • "ModelPortfolioIds":
    [
    ],
  • "LinkedPortfolioChangeIds":
    [
    ],
  • "PortfolioChangeTypeIds":
    [
    ],
  • "PortfolioProposalIds":
    [
    ],
  • "PortfolioChangeAvailabilityIds":
    [
    ],
  • "CreateDateFrom": "2024-01-23T15:03:01Z",
  • "CreateDateTo": "2024-01-23T15:03:01Z",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search portfolios with orders in reconciliation

Searches for portfolios with orders in reconciliation status and returns a list of portfolios (and related order information) matching the passed request parameters.
Sorting can be performed by specifying any property name in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

PortfolioIds
Array of integers <int32> Nullable
PortfolioName
string Nullable
PortfolioExternalId
string Nullable
ProductOfferIds
Array of integers <int32> Nullable
ProductIds
Array of integers <int32> Nullable
PortfolioChangeTypeIds
Array of integers <int32> Nullable
RiskCategoryIds
Array of integers <int32> Nullable
ModelPortfolioIds
Array of integers <int32> Nullable
PortfolioProposalIds
Array of integers <int32> Nullable
ContactIds
Array of integers <int32> Nullable
AdvisorIds
Array of integers <int32> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/portfolios/pre-orderbook/search
https://example-host/v1.0/portfolios/pre-orderbook/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioIds":
    [
    ],
  • "PortfolioName": "string",
  • "PortfolioExternalId": "string",
  • "ProductOfferIds":
    [
    ],
  • "ProductIds":
    [
    ],
  • "PortfolioChangeTypeIds":
    [
    ],
  • "RiskCategoryIds":
    [
    ],
  • "ModelPortfolioIds":
    [
    ],
  • "PortfolioProposalIds":
    [
    ],
  • "ContactIds":
    [
    ],
  • "AdvisorIds":
    [
    ],
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Release pre-orders

Releases orders from the pre-orderbook to the orderbook (i.e. status changed from Reconciliation to Generated).
Either releaseAllOrders or orderBookIds or portfolioIds can be specified, but not at the same time.
If releaseAllOrders=true, all orders in status Reconciliation are moved to Generated.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

PortfolioIds
Array of integers <int32> Nullable
OrderBookIds
Array of integers <int32> Nullable
ReleaseAllOrders
boolean Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/portfolios/pre-orderbook/release
https://example-host/v1.0/contacts/portfolios/pre-orderbook/release

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioIds":
    [
    ],
  • "OrderBookIds":
    [
    ],
  • "ReleaseAllOrders": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "UpdatedOrderBooksFromPortfolioIds":
    [
    ],
  • "UpdatedOrderBookIds":
    [
    ]
}

Import model portfolio instruments / allocations

Imports a CSV file containing the instruments / allocations for a number of model portfolios. Note that existing instruments / allocations for the passed model portfolios are completely overwritten with the instruments / allocations passed in the file.

Authorizations:
query Parameters
simulate
boolean
Default: false

If True the endpoint will only validate the passed CSV, without committing the changes.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema: multipart/form-data
file
string <binary>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/model-portfolios/instrument-allocations/import-file
https://example-host/v1.0/model-portfolios/instrument-allocations/import-file

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Import model portfolio constraints

Imports a CSV file containing the constraints for a number of model portfolios. Note that existing constraints for the passed model portfolios are completely overwritten with the constraints passed in the file.

Following are the supported constraints with the corresponding attribute for the ConstraintExternalId

ConstraintType | ConstraintExternalId

Sector = SecuritySector.ExternalId
SecurityType = SecurityType.ExternalId
AssetClass = AssetClass.ExternalId
EconomicalZone = EconomicalZone.Name
Country = Country.ThreeLetterIsoCode
Continent = Continent.Name
Currency = Currency.IsoCode
Security = Security.ExternalId

Authorizations:
query Parameters
simulate
boolean
Default: false

If True the endpoint will only validate the passed CSV, without committing the changes.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema: multipart/form-data
file
string <binary>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/model-portfolios/constraints/import-file
https://example-host/v1.0/model-portfolios/constraints/import-file

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Import model portfolio fees

Imports a CSV file containing the fees for a number of model portfolios. Note that existing fees for the passed model portfolios are completely overwritten with the fees passed in the file.

Authorizations:
query Parameters
simulate
boolean
Default: false

If True the endpoint will only validate the passed CSV, without committing the changes.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema: multipart/form-data
file
string <binary>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/model-portfolios/fees/import-file
https://example-host/v1.0/model-portfolios/fees/import-file

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Import model portfolio metadata

Imports a CSV file containing the metadata for a number of model portfolios. Note that only the metadatas passed in the file will be updated for the relevant model portfolios; not passed metadatas will remain untouched.

Authorizations:
query Parameters
simulate
boolean
Default: false

If True the endpoint will only validate the passed CSV, without committing the changes.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema: multipart/form-data
file
string <binary>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/model-portfolios/metadata/import-file
https://example-host/v1.0/model-portfolios/metadata/import-file

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Validate constraints

Validates an instrument set against the associated constraints. The following combinations are possible:
1. PortfolioId: validate whether the current allocations of a Portfolio are breaching any constraints
2. PortfolioId and InstrumentAllocations: validate whether the target (i.e. new) instrument set of a Portfolio are breaching any constraints
3. InstrumentAllocations, ProductId, RiskCategoryId and ContactId: validate whether the target instrument set passed is breaching the constraints
Note the following constraints are checked: Model Portfolio, Portfolio Proposal, Risk Category, Product, Contact.

Authorizations:
query Parameters
includeLookThrough
required
boolean

Determines whether security look-through should be accounted

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request parameters

PortfolioId
integer <int32> Nullable
InstrumentAllocations
Array of objects (PortfolioManagement.Abstractions.OptimizationConstraints.ValidateConstraints.InstrumentAllocation) Nullable
ProductId
integer <int32> Nullable
RiskCategoryId
integer <int32> Nullable
ContactId
integer <int32> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/optimizationconstraints/validate
https://example-host/v1.0/optimizationconstraints/validate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioId": 0,
  • "InstrumentAllocations":
    [
    ],
  • "ProductId": 0,
  • "RiskCategoryId": 0,
  • "ContactId": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "IsBreached": true,
  • "BreachSources":
    {
    }
}

Get portfolio transactions

Gets the transactions of a portfolio within an optional date range. All currency values are returned in the base currency of the portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to retrieve the transactions for

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

SecurityType
string (PortfolioTransactionSecurityTypeFilter)
Enum: "Instruments" "Liquidity" "All"
Page
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

From
string <date-time> Nullable

An optional start date for returning only transactions with this date or newer

To
string <date-time> Nullable

An optional end date for returning only transactions with this date or older

SecurityId
integer <int32> Nullable

An optional security ID for returning only transactions for this security

AccountId
integer <int32> Nullable

An optional account ID for returning only transactions for this account

FundingId
integer <int32> Nullable

An optional funding ID for returning only transactions for this funding

TransactionType
string (AccountTransactionTypeId)
Enum: "Credit" "Debit"
TransactionStatus
string (AccountTransactionStatusId)
Enum: "ToBeExecuted" "Executed" "Cancelled" "Failed"
IsPerformanceRelevant
boolean Nullable

An optional performance relevance flag for returning only transactions that have this flag set as specified

CorrelationIds
Array of strings <uuid> Nullable

An optional ID array for returning only transactions matching these correlation IDs

ExecutionDateFrom
string <date-time> Nullable

An optional start value date for returning only transactions with this execution date or newer

ExecutionDateTo
string <date-time> Nullable

An optional end value date for returning only transactions with this execution date or older

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/portfolios/{portfolioId}/transactions
https://example-host/v1.1/contacts/{contactId}/portfolios/{portfolioId}/transactions

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SecurityType": "All",
  • "Page": 1,
  • "PageSize": 10,
  • "From": "2024-01-22T00:00:00+00:00",
  • "To": "2024-01-22T00:00:00+00:00",
  • "SecurityId": 5,
  • "AccountId": 34,
  • "FundingId": 7,
  • "TransactionType": "Credit",
  • "TransactionStatus": "ToBeExecuted",
  • "IsPerformanceRelevant": false,
  • "CorrelationIds":
    [
    ],
  • "ExecutionDateFrom": "2024-01-22T00:00:00+00:00",
  • "ExecutionDateTo": "2024-01-22T00:00:00+00:00"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Transactions":
    [
    ],
  • "Currency":
    {
    },
  • "TotalNumberOfResults": 30
}

Create portfolio

Creates a portfolio. The portfolio can be created based on a set of instrument allocation orders (passed in the AllocationsOrder property), on an existing model portfolio (passed in the ModelPortfolioId property) or based on an existing portfolio proposal (passed in the PortfolioProposalId property). If no data in all properties is provided an empty portfolio will be created. The newly created portfolio will always have the status "NotImplemented" (PortfolioStatusId = 1) If the optional contactGroupId parameter is passed then the contact must be part of the contact group provided.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

query Parameters
language
required
string

The language in which to return all properties

contactGroupId
integer <int32>

The ID of the contact group that has access to the portfolio

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the new portfolio should be based on (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the new portfolio should be based on (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

AllocationsOrder
object (InstrumentSetOrder)

Holds information about an order for an instrument set

Name
string Nullable

The optional name of the new portfolio

ProductId
integer <int32> Nullable

The ID of the product that the new portfolio belongs to. If not passed a configured default will be used.

Accounts
Array of objects (PortfolioAccountInfo) Nullable

A list of accounts the portfolio will be associated with.

PortfolioType
string (PortfolioTypeId)
Enum: "Real" "Virtual" "Slice"
PortfolioStatus
string (PortfolioStatusId)
Enum: "NotImplemented" "InExecution" "Implemented" "Blocked" "Closed"
RebalancingType
string (PortfolioRebalancingTypeId)
Enum: "NoRebalancing" "Manual" "Automatic"
InitialInvestmentAmount
number <double> Nullable

The optional initial investment amount for the new portfolio in portfolio currency. If not specified then the sum of all payin account balances linked to the portfolio will be used as initial investment amount.

CurrencyId
integer <int32> Nullable

The currency ID of the portfolio. If not passed the one associated with the contact or the system default will be used.

CustomAttributes
string Nullable

Custom attributes specific to the tenant

ExternalId
string Nullable

The optional ExternalId of the new portfolio

RiskCategoryId
integer <int32> Nullable

The optional risk category ID of the new portfolio

Fees
Array of objects (FeeRequest) Nullable

A set of fees and fees definitions to be associated with the portfolio. If not specified then the portfolio will inherit the fees and fees definitions of the ProductId associated with the portfolio.

OptimizationConstraints
object (OptimizationConstraintRequest)
BenchmarkId
integer <int32> Nullable

The benchmark associated with the portfolio

EsgPreferences
Array of objects (EsgPreference) Nullable

The ESG preferences associated with the portfolio

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.2/contacts/{contactId}/portfolios
https://example-host/v1.2/contacts/{contactId}/portfolios

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ModelPortfolioId": 4,
  • "Name": "Albert's Portfolio Slice",
  • "ProductId": 1,
  • "Accounts":
    [
    ],
  • "PortfolioType": "Real",
  • "PortfolioStatus": "NotImplemented",
  • "RebalancingType": "Automatic",
  • "InitialInvestmentAmount": 100000,
  • "CurrencyId": 2,
  • "CustomAttributes": "{\"Description\": \"The Portfolio the Client always wanted to have.\"}",
  • "ExternalId": "TestExternalId",
  • "RiskCategoryId": 2,
  • "Fees":
    [
    ],
  • "OptimizationConstraints":
    {
    },
  • "BenchmarkId": 5,
  • "EsgPreferences":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string"
}

Top up portfolio

Adds a specific amount to a portfolio. Doesn't trigger a cash transaction from an external account to the portfolio's cash account. Instead cash is moved from the portfolio's cash account to the custody account by issuing buy orders. The new amount will be distributed amongst the portfolio securities based on their allocation values and a buy order will be created. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to top up

query Parameters
topUpAmount
required
number <double>

The amount to add to the portfolio in portfolio currency. Must be > 0.

forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/topup
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/topup

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Sell amount from portfolio

Sells a specific amount from a portfolio. Doesn't trigger a cash transaction from the portfolio's cash account to an external account. Instead cash is moved from the portfolio's custody account to the cash account by issuing sell orders. The reduction amount will be distributed amongst the portfolio securities based on their allocation values and a sell order will be created. Depending on the allocation values and actual prices it is possible that not the exact amount will be sold. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to sell from

query Parameters
amount
required
number <double>

The amount to sell from the portfolio in portfolio currency. Must be > 0.

forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/sell
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/sell

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Sell all from portfolio

Sells a whole portfolio. Doesn't trigger a cash transaction from the portfolio's cash account to an external account. Instead cash is moved from the portfolio's custody account to the cash account by issuing sell orders. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to sell completely

query Parameters
forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/sellall
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/sellall

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Order portfolio

Orders a portfolio. Orders an existing portfolio that has not been implemented yet. The portfolio positions can be modified based on a set of instrument allocation orders (passed in the AllocationsOrder property), on an existing model portfolio (passed in the ModelPortfolioId property) or based on an existing portfolio proposal (passed in the PortfolioProposalId property). The change will not become effective immediately, only after the order was executed successfully. For virtual portfolios the position changes will become effective immediately.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to order

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

CurrencyId
integer <int32> Nullable

The optional new currency ID of the portfolio.

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the ordered portfolio should be based on (having the same instruments and allocations). If set, the AllocationsOrder property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the ordered portfolio should be based on (having the same instruments and allocations). If set, the AllocationsOrder property is ignored.

AllocationsOrder
object (InstrumentSetOrder)

Holds information about an order for an instrument set

ForceOrderGeneration
boolean

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/order
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/order

Request samples

Content type
Copy
Expand all Collapse all
{
  • "AllocationsOrder":
    {
    },
  • "ForceOrderGeneration": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Create portfolio proposal

Creates a portfolio proposal. The portfolio proposal can be created based on a set of instrument allocations (passed in the InstrumentAllocations property), on an existing portfolio proposal (passed in the PortfolioProposalId property) or based on an existing model portfolio (passed in the ModelPortfolioId property). If no data in all properties is provided a ValidationException will be thrown. The newly created portfolio proposal will always have the status "Created" (PortfolioProposalStatusId = 1). If the optional contactGroupId parameter is passed then the contact must be part of the contact group provided.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio proposal

query Parameters
language
required
string

The language in which to return all properties

contactGroupId
integer <int32>

The ID of the contact group that has access to the portfolio proposal

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the new portfolio proposal should be based on (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the new portfolio proposal should be based on (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

InstrumentAllocations
Array of objects (InstrumentInformation) Nullable

The instruments and their allocations for the portfolio proposal to create. Is only used if ModelPortfolioId and PortfolioProposalId are not set.

Name
string Nullable

The optional name of the new portfolio proposal

ProductId
integer <int32> Nullable

The ID of the product that the new portfolio proposal belongs to

PortfolioId
integer <int32> Nullable

The ID of the portfolio that the new portfolio proposal is linked to

CurrencyId
integer <int32> Nullable

This is the optional currency id which will be the proposal's currency in case no PortfolioId is passed

ExpectedReturn
number <double> Nullable

This is the expected return passed by the user - if not passed the value is calculated by the application at the time of the proposal creation

ExpectedRisk
number <double> Nullable

This is the expected risk passed by the user - if not passed the value is calculated by the application at the time of the proposal creation

RecommendedInvestment
number <double> Nullable

This is the recommended investment for the proposal

BenchmarkId
integer <int32> Nullable

This is the id of the benchmark associated with the proposal

OptimizationConstraints
object (OptimizationConstraintRequest)

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.2/contacts/{contactId}/portfolioproposals
https://example-host/v1.2/contacts/{contactId}/portfolioproposals

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ModelPortfolioId": 4,
  • "InstrumentAllocations":
    [
    ],
  • "Name": "Albert's NEW Portfolio",
  • "ProductId": 3,
  • "PortfolioId": 1,
  • "CurrencyId": 3,
  • "ExpectedReturn": 0.125,
  • "ExpectedRisk": 0.075,
  • "RecommendedInvestment": 100000,
  • "BenchmarkId": 94,
  • "OptimizationConstraints":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0
}

Rebalance portfolio

Rebalances an existing implemented portfolio. The portfolio is rebalanced to a target set of new instruments/allocations. The target can be specified as a set of instrument allocations (passed in the InstrumentAllocations property), as an existing model portfolio (passed in the ModelPortfolioId property) or as an existing portfolio proposal (passed in the PortfolioProposalId property). If no target is passed the last implemented change to the portfolio will be used as the target. For virtual portfolios the position changes will become effective immediately, for real portfolios a rebalancing order will be created.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to rebalance

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the portfolio should be rebalanced to (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the portfolio should be rebalanced to (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

InstrumentAllocations
Array of objects (InstrumentAllocation) Nullable

The list of all instruments and their allocations that the portfolio should be rebalanced to. Is only used if ModelPortfolioId and PortfolioProposalId are not set.

ForceOrderGeneration
boolean

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

OptimizationConstraints
object (OptimizationConstraintRequest)

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/rebalance
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/rebalance

Request samples

Content type
Copy
Expand all Collapse all
{
  • "InstrumentAllocations":
    [
    ],
  • "ForceOrderGeneration": false,
  • "OptimizationConstraints":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Rebalance portfolios Deprecated

Rebalances existing real, implemented portfolios, depending on the inputs provided:

  • Pass an empty request - rebalance all real, implemented, Portfolios (with rebalancing type set to Automatic) to the respective ModelPortfolioId, PortfolioProposalId, latest successful allocation-based portfolio change, assigned to each Portfolio.
  • Pass an array of PortfolioIds - for the passed array of Portfolios, rebalance the real, implemented, Portfolios to the respective ModelPortfolioId, PortfolioProposalId, latest successful allocation-based portfolio change, assigned to each Portfolio.
  • Pass a ProductId - for the real, implemented, Portfolios (with rebalancing type set to Automatic) assigned to the passed ProductId rebalance to the respective ModelPortfolioId, PortfolioProposalId, latest successful allocation-based portfolio change, assigned to each Portfolio.
  • Pass an array of PortfolioIds and a ModelPortfolioId - for the real, implemented, Portfolios passed rebalance to the ModelPortfolioId provided.
  • Pass an array of PortfolioIds and a PortfolioProposalId - for the real, implemented, Portfolios passed rebalance to the PortfolioProposalid provided.
  • Pass an array of PortfolioIds and InstrumentAllocations - for the real, implemented, Portfolios passed rebalance to the instrument / allocation set provided.
  • Pass a ModelPortfolioId - for the real, implemented, Portfolios (with rebalancing type set to Automatic) that are associated to the ModelPortfolioId passed, rebalance to that ModelPortfolioId.
  • Pass a PortfolioProposalId - for the real, implemented, Portfolios (with rebalancing type set to Automatic) that are associated to the PortfolioProposalId passed, rebalance to that PortfolioProposalId.
  • Identical* to the other endpoint, except for the memberId that here it is present in the request URI (but not used).
    This API is deprecated. Use POST /v1.0/portfolios/rebalance instead.
Authorizations:
path Parameters
memberId
required
integer <int32>

The ID of the member that initiated the rebalancing

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

PortfolioIds
Array of integers <int32> Nullable

The portfolio IDs to rebalance. If omitted, all implemented portfolios will be rebalanced or, if a productId is passed, only the implemented portfolios of that product.

ProductId
integer <int32> Nullable

The product ID of the portfolios to rebalance. If passed, all implemented portfolios of that product will be rebalanced.

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the portfolios should be rebalanced to (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the portfolios should be rebalanced to (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

InstrumentAllocations
Array of objects (PortfolioManagement.Abstractions.Portfolios.RebalancePortfolios.InstrumentAllocation) Nullable

The list of all instruments and their allocations that the portfolios should be rebalanced to. Is only used if ModelPortfolioId and PortfolioProposalId are not set.

ForceOrderGeneration
boolean

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/members/{memberId}/portfolios/rebalance
https://example-host/v1.1/members/{memberId}/portfolios/rebalance

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioIds":
    [
    ],
  • "ProductId": 0,
  • "ModelPortfolioId": 0,
  • "PortfolioProposalId": 0,
  • "InstrumentAllocations":
    [
    ],
  • "ForceOrderGeneration": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "LongRunningRequestId": "string"
}

Rebalance portfolios

Rebalances existing real, implemented portfolios, depending on the inputs provided:

  • Pass an empty request - rebalance all real, implemented, Portfolios (with rebalancing type set to Automatic) to the respective ModelPortfolioId, PortfolioProposalId, latest successful allocation-based portfolio change, assigned to each Portfolio.
  • Pass an array of PortfolioIds - for the passed array of Portfolios, rebalance the real, implemented, Portfolios to the respective ModelPortfolioId, PortfolioProposalId, latest successful allocation-based portfolio change, assigned to each Portfolio.
  • Pass a ProductId - for the real, implemented, Portfolios (with rebalancing type set to Automatic) assigned to the passed ProductId rebalance to the respective ModelPortfolioId, PortfolioProposalId, latest successful allocation-based portfolio change, assigned to each Portfolio.
  • Pass an array of PortfolioIds and a ModelPortfolioId - for the real, implemented, Portfolios passed rebalance to the ModelPortfolioId provided.
  • Pass an array of PortfolioIds and a PortfolioProposalId - for the real, implemented, Portfolios passed rebalance to the PortfolioProposalid provided.
  • Pass an array of PortfolioIds and InstrumentAllocations - for the real, implemented, Portfolios passed rebalance to the instrument / allocation set provided.
  • Pass a ModelPortfolioId - for the real, implemented, Portfolios (with rebalancing type set to Automatic) that are associated to the ModelPortfolioId passed, rebalance to that ModelPortfolioId.
  • Pass a PortfolioProposalId - for the real, implemented, Portfolios (with rebalancing type set to Automatic) that are associated to the PortfolioProposalId passed, rebalance to that PortfolioProposalId.
  • Identical* to the other endpoint, except for the memberId that here it is not present in the request URI.
Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

PortfolioIds
Array of integers <int32> Nullable

The portfolio IDs to rebalance. If omitted, all implemented portfolios will be rebalanced or, if a productId is passed, only the implemented portfolios of that product.

ProductId
integer <int32> Nullable

The product ID of the portfolios to rebalance. If passed, all implemented portfolios of that product will be rebalanced.

ModelPortfolioId
integer <int32> Nullable

The ID of a model portfolio that the portfolios should be rebalanced to (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

PortfolioProposalId
integer <int32> Nullable

The ID of a portfolio proposal that the portfolios should be rebalanced to (having the same instruments and allocations). If set, the InstrumentAllocations property is ignored.

InstrumentAllocations
Array of objects (PortfolioManagement.Abstractions.Portfolios.RebalancePortfolios.InstrumentAllocation) Nullable

The list of all instruments and their allocations that the portfolios should be rebalanced to. Is only used if ModelPortfolioId and PortfolioProposalId are not set.

ForceOrderGeneration
boolean

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/portfolios/rebalance
https://example-host/v1.0/portfolios/rebalance

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioIds":
    [
    ],
  • "ProductId": 0,
  • "ModelPortfolioId": 0,
  • "PortfolioProposalId": 0,
  • "InstrumentAllocations":
    [
    ],
  • "ForceOrderGeneration": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "LongRunningRequestId": "string"
}

Cancel order

Cancels an existing order from the order book

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio the order belongs to

orderBookId
required
integer <int32>

The ID of the order book entry to cancel

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook/{orderBookId}/cancel
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook/{orderBookId}/cancel

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Release orders

Triggers a long running request to release orders from the Order Book.Note that if the Block Order Book is enabled then market orders belonging a product are pulled together as Block Orders. If the Block Order Book is disabled instead, then Orders are released directly on the service bus.Note that the endpoint can either be provided with a list of Orders to release (via the orderBookIds array) or told to release all orders(via the releaseAllOrders variable - in this scenario all orders in status Generated are released); note that both variables cannot be passed.

Authorizations:
query Parameters
language
required
string

The language to use for all language dependent properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO containing a list of IDs of order book entries to be released

OrderBookIds
Array of integers <int32> Nullable

Specific order book Ids to be released

ReleaseAllOrders
boolean Nullable

If true, all orders in status Generated are released

Responses

202

Accepted

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/portfolios/orderbook/release
https://example-host/v1.0/contacts/portfolios/orderbook/release

Request samples

Content type
Copy
Expand all Collapse all
{
  • "OrderBookIds":
    [
    ],
  • "ReleaseAllOrders": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "LongRunningRequestId": "string"
}

Release block orders

Releases orders from the block order book. All block orders with status "Generated" are published to the service bus.

Authorizations:
query Parameters
language
required
string

The language to use for all language dependent properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO containing a list of IDs of block order book entries to be released

BlockOrderBookIds
Array of integers <int32> Nullable

Either BlockOrderBookIds or ReleaseAllBlockOrders can be specified, but not both.

ReleaseAllBlockOrders
boolean Nullable

Either BlockOrderBookIds or ReleaseAllBlockOrders can be specified, but not both.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/portfolios/blockorderbook/release
https://example-host/v1.0/contacts/portfolios/blockorderbook/release

Request samples

Content type
Copy
Expand all Collapse all
{
  • "BlockOrderBookIds":
    [
    ],
  • "ReleaseAllBlockOrders": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Release portfolio orders

Releases orders of a portfolio from the order book. The market orders belonging to a product with enabled block orders are pulled together as block orders, all other order types are published to the service bus.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio the orders belong to

query Parameters
language
required
string

The language to use for all language dependent properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO containing an optional list of IDs of order book entries to be released. If not passed then all orders with status 'Generated' belonging to the portfolio are released.

OrderBookIds
Array of integers <int32> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook/release
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook/release

Request samples

Content type
Copy
Expand all Collapse all
{
  • "OrderBookIds":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Simulate order

The type of order that will be simulated is determined by the combination of properties set in the parameter DTO.

The following combinations and the resulting types are supported. All amounts are given in the currency specified in the CurrencyId parameter.

Initial order

  • TargetInstrumentAllocations - Contains the desired instrument set with allocations.
  • Amount - Contains the amount to be distributed according to the allocations given in TargetInstrumentAllocations.

Top up

  • SourceInstrumentAllocations - Contains the instrument set to top up.
  • SourceAmount - Contains the current market value of the instrument set given in SourceInstrumentAllocations.
  • Amount - Contains the amount to top up.
  • TargetInstrumentAllocations - If "AllowDriftingInvestments" is set to false in the global settings "Ordering" group the top up will result in a rebalance. In this case the instrument set to rebalance to needs to be provided in this property.

Sell/Sell all

  • SourceInstrumentAllocations - Contains the instrument set to sell from.
  • SourceAmount - Contains the current market value of the instrument set given in SourceInstrumentAllocations.
  • Amount - Contains the amount to sell, given as a negative value. If this amount * -1 is the same as the amount given in SourceAmount, a sell all is assumed.
  • TargetInstrumentAllocations - If "AllowDriftingSells" is set to false in the global settings "Ordering" group a normal sell (not a sell all!) will result in a rebalance. In this case the instrument set to rebalance to needs to be provided in this property.

Rebalancing

  • SourceInstrumentAllocations - Contains the instrument set to rebalance from.
  • SourceAmount - Contains the current market value of the instrument set given in SourceInstrumentAllocations.
  • TargetInstrumentAllocations - Contains the instrument set to rebalance to.
Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact

query Parameters
language
required
string

The language to use for all language dependent properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO.

ProductId
integer <int32>

The product ID of the order.

CurrencyId
integer <int32>

The base currency ID of the order.

SourceAmount
number <double> Nullable

The source amount of the order.

Amount
number <double> Nullable

The amount of the order.

SourceInstrumentAllocations
Array of objects (InstrumentAllocation) Nullable

The source list of all instruments and their allocations.

TargetInstrumentAllocations
Array of objects (InstrumentAllocation) Nullable

The target list of all instruments and their allocations.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/contacts/{contactId}/portfolios/orderbook/simulate
https://example-host/v1.1/contacts/{contactId}/portfolios/orderbook/simulate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ProductId": 1,
  • "CurrencyId": 2,
  • "Amount": 10000,
  • "TargetInstrumentAllocations":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OrderBookEntries":
    [
    ],
  • "ChangeSetType": "InitialOrder"
}

Generate orders

Generates orders in the order book for pending changesets.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio the changesets belong to

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO.

PortfolioChangeIds
Array of integers <int32> Nullable

The list of portfolio change IDs to generate orders for

ForceOrderGeneration
boolean

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook/generate
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/orderbook/generate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioChangeIds":
    [
    ],
  • "ForceOrderGeneration": false
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "PortfolioOrderResults":
    [
    ]
}

Calculate portfolios allocations based on trading cart

Return allocations based on trading-cart trades of a portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to get the trading cart for

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart/target
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart/target

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "TargetInstrumentsAllocations":
    [
    ]
}

Order portfolio trading cart

Orders the trading cart items of a portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to delete the trading cart for

query Parameters
scope
string (InstrumentTradeTypeScope)
Enum: "Buy" "Sell" "All"

An optional parameter to specify the scope for which to create orders for. Can be 'Sell', 'Buy' or 'All'. Defaults to 'All' if not specified.

forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart/order
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart/order

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "SellOperationResult":
    {
    },
  • "BuyOperationResult":
    {
    },
  • "SellPortfolioChangeId": 1,
  • "BuyPortfolioChangeId": 2
}

Simulate portfolio trading cart order

Simulates ordering the trading cart items of a portfolio.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to simulate the trading cart order for

query Parameters
language
required
string

The language in which to return all properties

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Trades
Array of objects (InstrumentTrade) Nullable

An optional list of trades to simulate. If not passed the current trades in the portfolio trading cart will be used.

Scope
string (InstrumentTradeTypeScope)
Enum: "Buy" "Sell" "All"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart/order/simulate
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/tradingcart/order/simulate

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Trades":
    [
    ],
  • "Scope": "All"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OrderBookEntries":
    [
    ],
  • "SellOrderSimulationResult": "Success",
  • "BuyOrderSimulationResult": "Success",
  • "Messages": [ ]
}

Create model portfolio

Creates a model portfolio.

Authorizations:
path Parameters
memberId
required
integer <int32>

The member ID of the RM

query Parameters
isPrivate
required
boolean

When true the model portfolio will be assigned to the MemberId making the service call

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Name
required
Array of objects (LocalizedValue)

The name of the new model portfolio

Description
Array of objects (LocalizedValue) Nullable

The optional description of the new model portfolio

MinInvestment
number <double> Nullable

This is the minimum investment for the model portfolio

MaxInvestment
number <double> Nullable

This is the maximum investment for the model portfolio

ExpectedReturn
number <double> Nullable

This is the expected return of the model portfolio

ExpectedRisk
number <double> Nullable

This is the expected risk of the model portfolio

TimeHorizon
integer <int32> Nullable
IsActive
boolean
IsEditable
boolean

This determines whether a Proposal / Portfolio that is based on this model can be modified

BenchmarkId
integer <int32> Nullable

This is the id of the benchmark associated with the model portfolio

CustomAttributes
string Nullable
TypeId
required
string (ModelPortfolioTypeId)
Enum: "InstrumentBased" "AssetAllocationBased"
AllocationTypeId
required
string (ModelPortfolioAllocationTypeId)
Enum: "SaaModel" "TaaModel" "NormalModel"
DerivedFromModelPortfolioId
integer <int32> Nullable

The Id of the model portfolio from which the current model portfolio derives.

OptimizationTypeId
integer <int32> Nullable

The optional optimization type of the new model portfolio

RiskCategoryId
integer <int32> Nullable
RiskCategoryDefinitionId
integer <int32> Nullable
InstrumentAllocations
Array of objects (InstrumentAllocation) Nullable
Fees
Array of objects (FeeRequest) Nullable

A set of fees and fees definitions to be associated with the model portfolio.

OptimizationConstraints
object (OptimizationConstraintRequest)
Factsheet
object (Factsheet)

The fact-sheet URL for the model portfolio

ExternalId
string Nullable

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.5/members/{memberId}/model-portfolios
https://example-host/v1.5/members/{memberId}/model-portfolios

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name":
    [
    ],
  • "Description":
    [
    ],
  • "MinInvestment": 1000,
  • "MaxInvestment": 10000,
  • "ExpectedReturn": 1,
  • "ExpectedRisk": 1,
  • "TimeHorizon": 10,
  • "IsActive": true,
  • "IsEditable": true,
  • "BenchmarkId": 11,
  • "CustomAttributes": "{\"Description\": \"Custom Attributes of Model Portfolio.\"}",
  • "TypeId": "InstrumentBased",
  • "AllocationTypeId": "NormalModel",
  • "DerivedFromModelPortfolioId": 1,
  • "OptimizationTypeId": 2,
  • "RiskCategoryId": 4,
  • "RiskCategoryDefinitionId": 49,
  • "InstrumentAllocations":
    [
    ],
  • "Fees":
    [
    ],
  • "OptimizationConstraints":
    {
    },
  • "Factsheet":
    {},
  • "ExternalId": "TEST1"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string"
}

Create switch suggestion

Creates a switch suggestion.

Authorizations:
path Parameters
memberId
required
integer <int32>

The ID of the member that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio associated with the suggestion basket

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ValidTill
required
string <date-time>
Switches
required
Array of objects (SwitchPair)
Interaction
object (SuggestionInteraction)

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/members/{memberId}/portfolios/{portfolioId}/switchSuggestions
https://example-host/v1.0/members/{memberId}/portfolios/{portfolioId}/switchSuggestions

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ValidTill": "2024-02-24T09:44:07.7380408Z",
  • "Switches":
    [
    ],
  • "Interaction":
    {
    }
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "UId": "string"
}

Calculate the target instrument allocations of a switch suggestion

Calculates the target instrument allocations of a switch suggestion. The switch suggestion can either be specified by an existing switch suggestion ID or by a custom set of switch pairs.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio associated with the suggestion basket

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

SwitchSuggestionId
integer <int32> Nullable

The ID of an existing switch suggestion basket

Switches
Array of objects (SwitchPair) Nullable

A custom set of switch pairs

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions/target
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/switchSuggestions/target

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Switches":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "TargetInstrumentAllocations":
    [
    ]
}

Optimize portfolio

Optimizes an existing implemented portfolio.
The User can, optionally, specify the allocation set; if not passed then the latest securities held in the portfolio will be used for the optimization.
A number of additional attributes can be passed to configure the desired optimization such as the Optimization Mode (e.g. MeanVariance), the Optimal Selection Mode (e.g. MaxSharpeRatio), the RiskFreeRate and the Constraints.
In addition, the User can select whether the portfolio should be rebalanced to the optimal allocation or a proposal should be generated for the relevant contacts.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to be optimized.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Securities
required
Array of integers <int32>
OptimizationMode
required
string (OptimizationMode)
Enum: "MeanVariance" "BlackLitterman"
Years
integer <int32> Nullable
OptimalAllocationMode
string (OptimalAllocationMode)
Enum: "MaxSharpeRatio" "MinSharpeRatio" "MaxReturn" "MinReturn" "MaxVolatility" "MinVolatility" "MidVolatility"
RiskFreeRate
number <double> Nullable
Constraints
string (OptimizationConstraintsType)
Enum: "Contact" "Product" "Model"
CreateProposal
required
boolean
ProjectedExpectedReturns
Array of objects (ProjectedExpectedReturn) Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/optimize
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/optimize

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Securities":
    [
    ],
  • "OptimizationMode": "MeanVariance",
  • "Years": 10,
  • "OptimalAllocationMode": "MidVolatility",
  • "RiskFreeRate": 0,
  • "Constraints": "Product",
  • "CreateProposal": true,
  • "ProjectedExpectedReturns":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OptimalAllocationResult":
    {
    },
  • "PortfolioOperationResult":
    {
    },
  • "PortfolioProposalId": 0
}

Top up theme of a portfolio

Adds a specific amount to a theme (i.e. a security of type Core / Satellite) of a portfolio. Doesn't trigger a cash transaction from an external account to the portfolio's cash account. Instead cash is moved from the portfolio's cash account to the custody account by issuing buy order(s) for the theme in question. The new amount is distributed amongst the securities associated with the theme according to either the respective security component allocations or the actual portfolio allocations (depending on the configuration of the AllowDriftingInvestments flag of the respective Product. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to top up

themeId
required
integer <int32>

The ID of the theme to top up

query Parameters
topUpAmount
required
number <double>

The amount to add to the portfolio in portfolio currency. Must be > 0.

forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/topup
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/topup

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Sell amount for theme of a portfolio

Reduces a specific amount from theme (i.e. a security of type Core / Satellite) of a portfolio. Doesn't trigger a cash transaction from the portfolio's cash account to an external account. Instead cash is moved from the portfolio's custody account to the cash account by issuing sell order(s) for the theme in question. The amount is reduced amongst the securities associated with the theme according to either the respective security component allocations or the actual portfolio allocations (depending on the configuration of the AllowDriftingInvestments flag of the respective Product).

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to sell from

themeId
required
integer <int32>

The ID of the theme to sell from

query Parameters
amount
required
number <double>

The amount to sell from the portfolio in portfolio currency. Must be > 0.

forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/sell
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/sell

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Liquidate theme from portfolio

Liquidate a whole theme from a portfolio. Doesn't trigger a cash transaction from the portfolio's cash account to an external account. Instead cash is moved from the portfolio's custody account to the cash account by issuing sell orders. The change will not become effective immediately, only after the order was executed successfully. The execution time of the order is determined by system configuration.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to sell

themeId
required
integer <int32>

The ID of the theme to liquidate

query Parameters
forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/sellall
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/sellall

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Rebalance theme of a portfolio

Rebalances an existing theme in a portfolio. The underlying positions of the portfolio associated with the theme in question are rebalanced to the allocations defined in the security components of the theme.

Authorizations:
path Parameters
contactId
required
integer <int32>

The ID of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The ID of the portfolio to rebalance

themeId
required
integer <int32>

The ID of the theme to rebalance

query Parameters
forceOrderGeneration
boolean
Default: false

If set to 'true' forces the generation of order book entries, regardless of the value for the product setting 'IsOrderBookEnabled'.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/rebalance
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/themes/{themeId}/rebalance

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "OperationResult": "Success",
  • "OrderResult":
    {
    }
}

Get portfolio performance attribution cumulative

Get the performance attribution of a portfolio vs. a model portfolio. Note that:
- if a currencyId is not passed then the currency of the portfolio will be taken as the default.
- if a modelPortfolioId is not passed then the TAA (i.e. Tactical Model Portfolio) associated with the portfolio will be taken as the default (if available).
- if a FromDate / ToDate are not passed then all available data will be returned

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The id of the portfolio

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request parameters

CurrencyId
integer <int32> Nullable
ModelPortfolioId
integer <int32> Nullable
FromDate
string <date-time> Nullable
ToDate
string <date-time> Nullable
AggregationLevel
string (PortfolioManagement.Abstractions.PerformanceAttribution.GetPortfolioPerformanceAttributionCumulative.AggregationLevel)
Enum: "AssetClass" "Sector" "Currency"
Effect
string (PortfolioManagement.Abstractions.PerformanceAttribution.GetPortfolioPerformanceAttributionCumulative.Effect)
Enum: "TotalValueAdded" "AssetAllocationEffect" "StockSelectionEffect" "InteractionEffect"

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/performance-attribution-cumulative
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/performance-attribution-cumulative

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyId": 0,
  • "ModelPortfolioId": 0,
  • "FromDate": "2024-01-23T15:03:01Z",
  • "ToDate": "2024-01-23T15:03:01Z",
  • "AggregationLevel": "AssetClass",
  • "Effect": "TotalValueAdded"
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ReferenceCurrency":
    {
    },
  • "Portfolio":
    {
    },
  • "ModelPortfolio":
    {
    },
  • "Values":
    [
    ],
  • "Error": 0
}

Get portfolio performance attribution details

Get the performance attribution of a portfolio vs. a model portfolio. Note that:
- if a currencyId is not passed then the currency of the portfolio will be taken as the default.
- if a modelPortfolioId is not passed then the TAA (i.e. Tactical Model Portfolio) associated with the portfolio will be taken as the default (if available).
- if a FromDate / ToDate are not passed then all available data will be returned

Authorizations:
path Parameters
contactId
required
integer <int32>

The id of the contact that has access to the portfolio

portfolioId
required
integer <int32>

The id of the portfolio

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request parameters

CurrencyId
integer <int32> Nullable
ModelPortfolioId
integer <int32> Nullable
FromDate
string <date-time> Nullable
ToDate
string <date-time> Nullable
AggregationLevel
string (PortfolioManagement.Abstractions.PerformanceAttribution.GetPortfolioPerformanceAttributionDetails.AggregationLevel)
Enum: "AssetClass" "Sector" "Currency"
Effect
string (PortfolioManagement.Abstractions.PerformanceAttribution.GetPortfolioPerformanceAttributionDetails.Effect)
Enum: "TotalValueAdded" "AssetAllocationEffect" "StockSelectionEffect" "InteractionEffect"
Mode
string (PortfolioManagement.Abstractions.PerformanceAttribution.GetPortfolioPerformanceAttributionDetails.Mode)
Enum: "Details" "Summary"
ExposureId
integer <int32> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/contacts/{contactId}/portfolios/{portfolioId}/performance-attribution-details
https://example-host/v1.0/contacts/{contactId}/portfolios/{portfolioId}/performance-attribution-details

Request samples

Content type
Copy
Expand all Collapse all
{
  • "CurrencyId": 0,
  • "ModelPortfolioId": 0,
  • "FromDate": "2024-01-23T15:03:01Z",
  • "ToDate": "2024-01-23T15:03:01Z",
  • "AggregationLevel": "AssetClass",
  • "Effect": "TotalValueAdded",
  • "Mode": "Details",
  • "ExposureId": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Values":
    [
    ]
}

Search portfolios

Searches for portfolios and returns a list with portfolios (and key attributes) matching the passed request parameters.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

Search
string Nullable
Ids
Array of integers <int32> Nullable
ExternalId
string Nullable
Name
string Nullable
AdvisorIds
Array of integers <int32> Nullable
ContactIds
Array of integers <int32> Nullable
ProductOfferIds
Array of integers <int32> Nullable
ProductIds
Array of integers <int32> Nullable
CurrencyIds
Array of integers <int32> Nullable
TypeIds
Array of integers <int32> Nullable
RiskCategoryIds
Array of integers <int32> Nullable
StatusIds
Array of integers <int32> Nullable
ModelPortfolioIds
Array of integers <int32> Nullable
PortfolioProposalIds
Array of integers <int32> Nullable
IsBreached
boolean Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/portfolios/search
https://example-host/v1.0/portfolios/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Search": "string",
  • "Ids":
    [
    ],
  • "ExternalId": "string",
  • "Name": "string",
  • "AdvisorIds":
    [
    ],
  • "ContactIds":
    [
    ],
  • "ProductOfferIds":
    [
    ],
  • "ProductIds":
    [
    ],
  • "CurrencyIds":
    [
    ],
  • "TypeIds":
    [
    ],
  • "RiskCategoryIds":
    [
    ],
  • "StatusIds":
    [
    ],
  • "ModelPortfolioIds":
    [
    ],
  • "PortfolioProposalIds":
    [
    ],
  • "IsBreached": true,
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search proposals

Searches for proposals and returns a list with proposals (and key attributes) matching the passed request parameters.
Sorting can be performed by specifying any property name or child property name using navigation (Name, Portfolio.ExternalId, Currency.CurrencyCode) in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

PortfolioIds
Array of integers <int32> Nullable
ContactGroupIds
Array of integers <int32> Nullable
ContactIds
Array of integers <int32> Nullable
PortfolioExternalId
string Nullable
Ids
Array of integers <int32> Nullable
Name
string Nullable
AdvisorIds
Array of integers <int32> Nullable
StatusIds
Array of integers <int32> Nullable
ProductIds
Array of integers <int32> Nullable
ModelPortfolioIds
Array of integers <int32> Nullable
CurrencyIds
Array of integers <int32> Nullable
CreateDateFrom
string <date-time> Nullable
CreateDateTo
string <date-time> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/portfolioproposals/search
https://example-host/v1.0/portfolioproposals/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PortfolioIds":
    [
    ],
  • "ContactGroupIds":
    [
    ],
  • "ContactIds":
    [
    ],
  • "PortfolioExternalId": "string",
  • "Ids":
    [
    ],
  • "Name": "string",
  • "AdvisorIds":
    [
    ],
  • "StatusIds":
    [
    ],
  • "ProductIds":
    [
    ],
  • "ModelPortfolioIds":
    [
    ],
  • "CurrencyIds":
    [
    ],
  • "CreateDateFrom": "2024-01-23T15:03:01Z",
  • "CreateDateTo": "2024-01-23T15:03:01Z",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search switch suggestions

Searches for switch suggestions and returns a list with switch suggestions (and key attributes) matching the passed request parameters.
The ValidUntil date includes all switch suggestion valid until that date, including the date. The time part is ignored.
Sorting can be performed by specifying any property name or child property name using navigation (Name, Portfolio.ExternalId, Currency.CurrencyCode) in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

ContactIds
Array of integers <int32> Nullable
Ids
Array of integers <int32> Nullable
PortfolioIds
Array of integers <int32> Nullable
PortfolioExternalId
string Nullable
AdvisorIds
Array of integers <int32> Nullable
Statuses
Array of strings (SwitchSuggestionStatus) Nullable
Items Enum: "Accepted" "Rejected" "AwaitingFeedback"
ValidUntil
string <date-time> Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/switchSuggestions/search
https://example-host/v1.0/switchSuggestions/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ContactIds":
    [
    ],
  • "Ids":
    [
    ],
  • "PortfolioIds":
    [
    ],
  • "PortfolioExternalId": "string",
  • "AdvisorIds":
    [
    ],
  • "Statuses":
    [
    ],
  • "ValidUntil": "2024-01-23T15:03:01Z",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Search model portfolios

Searches for model portfolios and returns a list with model portfolios (and key attributes) matching the passed request parameters.
Sorting can be performed by specifying any property name or child property name using navigation (Name, Portfolio.ExternalId, Currency.CurrencyCode) in SortBy property in the request.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The request DTO

Ids
Array of integers <int32> Nullable
Name
string Nullable
TypeIds
Array of integers <int32> Nullable
AdvisorIds
Array of integers <int32> Nullable
OptimizationTypeIds
Array of integers <int32> Nullable
AllocationTypeIds
Array of integers <int32> Nullable
RiskCategoryIds
Array of integers <int32> Nullable
DerivedFromModelPortfolioIds
Array of integers <int32> Nullable
DerivedFromModelPortfolioName
string Nullable
ProductOfferIds
Array of integers <int32> Nullable
ProductIds
Array of integers <int32> Nullable
ExternalId
string Nullable
SortBy
string Nullable
SortOrder
string (SortOrder)
Enum: "Ascending" "Descending"
Page
integer <int32>
PageSize
integer <int32>

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/model-portfolios/search
https://example-host/v1.0/model-portfolios/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Ids":
    [
    ],
  • "Name": "string",
  • "TypeIds":
    [
    ],
  • "AdvisorIds":
    [
    ],
  • "OptimizationTypeIds":
    [
    ],
  • "AllocationTypeIds":
    [
    ],
  • "RiskCategoryIds":
    [
    ],
  • "DerivedFromModelPortfolioIds":
    [
    ],
  • "DerivedFromModelPortfolioName": "string",
  • "ProductOfferIds":
    [
    ],
  • "ProductIds":
    [
    ],
  • "ExternalId": "string",
  • "SortBy": "string",
  • "SortOrder": "Ascending",
  • "Page": 0,
  • "PageSize": 0
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Results":
    [
    ],
  • "Page": 0,
  • "PageSize": 0,
  • "PageCount": 0,
  • "TotalCount": 0
}

Referrals

Delete partner

Deletes a partner.

Authorizations:
path Parameters
partnerId
required
integer <int32>

The ID of the partner to delete

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/partners/{partnerId}
https://example-host/v1.0/partners/{partnerId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Get partner by id

Gets a Partner details.

Authorizations:
path Parameters
partnerId
required
integer <int32>

The id of the partner.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/partners/{partnerId}
https://example-host/v1.0/partners/{partnerId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "IsActive": true,
  • "Attributes": "string",
  • "Fees":
    [
    ]
}

Delete a referral code

The endpoint deletes a referral code if it is not connected to a contact

Authorizations:
path Parameters
id
required
integer <int32>

The id of the referral code to delete

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

delete/v1.0/referralcodes/{id}
https://example-host/v1.0/referralcodes/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Return a referral code

The endpoint returns a referral code by searching for the id of the code

Authorizations:
path Parameters
id
required
integer <int32>

The id of the referralcode.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/referralcodes/{id}
https://example-host/v1.0/referralcodes/{id}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Code": "ABCDEF",
  • "MaxUsages": 50,
  • "CustomAttributes": "",
  • "IsActive": true,
  • "Partner":
    {
    },
  • "CurrentNumberOfUsages": 2
}

Return a referral code

The endpoint returns a referral code by searching for the code

Authorizations:
path Parameters
code
required
string

The code of the referralcode.

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/referralcodes/byreferralcode/{code}
https://example-host/v1.0/referralcodes/byreferralcode/{code}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Code": "ABCDEF",
  • "MaxUsages": 50,
  • "CustomAttributes": "",
  • "IsActive": true,
  • "Partner":
    {
    },
  • "CurrentNumberOfUsages": 2
}

Return a partner's referral code(s)

The endpoint returns the referral codes of a partner

Authorizations:
path Parameters
partnerId
required
integer <int32>

The id of a partner

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

get/v1.0/referralcodes/partners/{partnerId}
https://example-host/v1.0/referralcodes/partners/{partnerId}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    },
  • {
    }
]

Modify partner

Modifies a partner.
This API is deprecated.

Authorizations:
path Parameters
partnerId
required
integer <int32>

The ID of the partner to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Name
string Nullable

The name of the partner.

IsActive
boolean

This determines whether the partner is active or not.

Attributes
string Nullable

The custom attributes of the partner.

Fees
Array of objects (FeeRequest) Nullable

A set of fees and fees definitions to be associated with the partner.
If for a fee the FeeDefinitions node is omitted then only the fee properties will be updated.

UpdateProperties
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.2/partners/{partnerId}
https://example-host/v1.2/partners/{partnerId}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Partner A",
  • "IsActive": true,
  • "Attributes": "{\"Description\": \"Custom Attributes of Partner modified.\"}",
  • "Fees":
    [
    ],
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "IsActive": true,
  • "Attributes": "string",
  • "Fees":
    [
    ]
}

Edit a referral code

The endpoint edits a referral code and the link to a partner

Authorizations:
path Parameters
id
required
integer <int32>

The id of the referral code to modify

header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

Code
string Nullable

The referral code

MaxUsages
integer <int32> Nullable

Defines the maximum number of usages for a referral code

CustomAttributes
string Nullable

The custom attributes of a referral code

IsActive
boolean Nullable

This determines whether the referral code is active or not

PartnerId
integer <int32> Nullable

The partner id linked to the referral code

UpdateProperties
Array of strings Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

patch/v1.1/referralcodes/{id}
https://example-host/v1.1/referralcodes/{id}

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Code": "123456",
  • "MaxUsages": 5,
  • "CustomAttributes": "{\"Description\": \"Custom Attributes of the Referral Code.\"}",
  • "IsActive": true,
  • "PartnerId": 10,
  • "UpdateProperties":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 1,
  • "Code": "ABCDEF",
  • "MaxUsages": 50,
  • "CustomAttributes": "",
  • "IsActive": true,
  • "Partner":
    {
    },
  • "CurrentNumberOfUsages": 2
}

Get partner(s) details

Gets Partner(s) details.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The search parameters.

PartnerIds
Array of integers <int32> Nullable

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/partners/search
https://example-host/v1.0/partners/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "PartnerIds":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
[
  • {
    }
]

Create partner

Creates a Partner.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

New partner.

Name
string Nullable

The name of the partner.

IsActive
boolean

This determines whether the partner is active or not.

Attributes
string Nullable

The custom attributes of the partner.

Fees
Array of objects (FeeRequest) Nullable

A set of fees and fees definitions to be associated with the partner.

Responses

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.1/partners
https://example-host/v1.1/partners

Request samples

Content type
Copy
Expand all Collapse all
{
  • "Name": "Partner A",
  • "IsActive": false,
  • "Attributes": "{\"Description\": \"Custom Attributes of Partner.\"}",
  • "Fees":
    [
    ]
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Id": 0,
  • "Name": "string",
  • "IsActive": true,
  • "Attributes": "string",
  • "Fees":
    [
    ]
}

Create or enter referral codes to the system

This endpoint either generates a number of new referral codes or enters the referral codes to the system as entered in the parameters. Optionally, the referral codes are assigned to a partner. The format of the automatically generated referral codes can be configured on a system level.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

New ReferralCodes

ReferralCodes
Array of strings Nullable

Manual entry of one or more referral codes to the system

PartnerId
integer <int32> Nullable

The id of the partner linked to the referral codes

NumberOfAutoGeneratedReferralCodes
integer <int32> Nullable

Defines how many unique referral codes the endpoint will create and store

MaxUsages
required
integer <int32>

Defines the maximum number of usages for a referral code. Zero means unlimited usages

IsActive
boolean Nullable

This determines whether the referral code(s) is/are active or not

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/referralcodes
https://example-host/v1.0/referralcodes

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ReferralCodes":
    [
    ],
  • "PartnerId": 1,
  • "NumberOfAutoGeneratedReferralCodes": 5,
  • "MaxUsages": 2,
  • "IsActive": true
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ReferralCodes":
    [
    ],
  • "PartnerId": 1,
  • "MaxUsages": 2,
  • "IsActive": true
}

Link a referral code to a contact

The endpoint links (assigns) an existing referral code to a contact

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ReferralCodeId
integer <int32>

The referral code id

ContactId
integer <int32>

The contact id

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/referrals/link
https://example-host/v1.0/referrals/link

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ReferralCodeId": 1,
  • "ContactId": 20
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Remove the link of a referral code to a contact

The endpoint removes the link of a referral code to a contact

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The parameter DTO

ReferralCodeId
integer <int32>

The referral code id

ContactId
integer <int32>

The contact id

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/referrals/unlink
https://example-host/v1.0/referrals/unlink

Request samples

Content type
Copy
Expand all Collapse all
{
  • "ReferralCodeId": 1,
  • "ContactId": 20
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "Code": "BadRequest",
  • "SubCode": "NA",
  • "Message": "The request was not in the required format",
  • "CorrelationId": "30d3ebc0b5cb47b0889850bbdfe4aec6"
}

Return referral code(s)

This endpoint returns the referral codes that are stored in the system.

Authorizations:
header Parameters
Accept-Language
string

The ISO 639-1 language to use for localizable data.

Request Body schema:

The search filter.

SortColumn
string Nullable
SortOrder
string Nullable
Search
string Nullable
ReferralCodeIds
Array of integers <int32> Nullable

The ids of the referral codes to be returned. If no id is passed, all referral codes are returned

PageNumber
integer <int32>

The result page number, starting by 1

PageSize
integer <int32>

The number of items in a result page

Responses

200

Success

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

422

UnprocessableEntity

500

Server Error

post/v1.0/referralcodes/search
https://example-host/v1.0/referralcodes/search

Request samples

Content type
Copy
Expand all Collapse all
{
  • "SortColumn": "Id",
  • "SortOrder": "desc",
  • "Search": "ABCD",
  • "ReferralCodeIds":
    [
    ],
  • "PageNumber": 1,
  • "PageSize": 1000
}

Response samples

Content type
application/json
Copy
Expand all Collapse all
{
  • "ReferralCodes":
    [
    ],
  • "TotalNumberOfResults": 2
}