Assets
Data Model
Bond
ccyCode(string, required): ISO 4217 code for the bond's currency. Examples: "USD", "EUR", "DKK".countryCode(string, required): ISO 3166-1 alpha-2 code representing the bond issuer's domicile. Examples: "US", "DE", "DK".couponFrequency(string, required): Specifies how often the coupon payment occurs. Possible values: "quarterly", "semiannually", "annually". Some assets will have a value of "other", but new assets can not be created with this value.datedDate(string, optional): ISO 8601 representation of the start date for accrued interest calculation.dayCountConvention(string, required): Specifies the method used to calculate interest accruals. Possible values: "actual/actual", "30/360", "actual/360". Some assets will have a value of "other", but new assets can not be created with this value.firstCouponDate(string, optional): ISO 8601 representation of the first coupon date.maturityDate(string, optional): ISO 8601 representation of the bond's maturity date.name(string, required): Display name of the bond.securityIdentifier(string, required): Security identifier of the asset.
Fee
name(string, required): Name of the asset.category(string, required): Type of fee. Possible values: "custody", "management", "other".
New assets of this type can not be created, and existing assets can not be referenced directly by any transaction types. They exist purely for reporting purposes.
FX Forward, Cash Settlement
agreementDate(string, required): ISO 8601 representation of the date when the FX forward was agreed upon.fixingDate(string, required): ISO 8601 representation of the date on which the difference between the spot rate and the agreed forward rate is calculated.notionalAmount(number, required): The agreed-upon amount for the FX forward, denominated in the contract's primary currency.primaryCcyCode(string, required): ISO 4217 code for the currency in which the notional amount is denominated. Examples: "USD", "EUR", "DKK".secondaryCcyCode(string, required): ISO 4217 code for the currency in which the settlement amount is denominated. Examples: "USD", "EUR", "DKK".securityIdentifier(string, required): Security identifier of the asset.settlementAmount(number, required): The agreed settlement amount, denominated in the contract's secondary currency.settlementDate(string, required): ISO 8601 representation of the date the FX forward is settled.
Relationships
account: The account the cash settlement will affect.
FX Forward, Physical Delivery
agreementDate(string, required): ISO 8601 representation of the date when the FX forward was agreed upon.fixingDate(string, required): ISO 8601 representation of the date on which the difference between the spot rate and the agreed forward rate is calculated.notionalAmount(number, required): The notional amount, denominated in the currency of the primary account.securityIdentifier(string, required): Security identifier of the asset.settlementAmount(number, required): The agreed settlement amount, denominated in the currency of the secondary account.settlementDate(string, required): ISO 8601 representation of the date the FX forward is settled.
Relationships
primaryAccount: The account associated with the notional amount.secondaryAccount: The account associated with the settlement amount.
Index-linked Bond
ccyCode(string, required): ISO 4217 code for the bond's currency. Examples: "USD", "EUR", "DKK".countryCode(string, required): ISO 3166-1 alpha-2 code representing the bond issuer's domicile. Examples: "US", "DE", "DK".couponFrequency(string, required): Specifies how often the coupon payment occurs. Possible values: "quarterly", "semiannually", "annually". Some assets will have a value of "other", but new assets can not be created with this value.datedDate(string, optional): ISO 8601 representation of the start date for accrued interest calculation.dayCountConvention(string, required): Specifies the method used to calculate interest accruals. Possible values: "actual/actual", "30/360", "actual/360". Some assets will have a value of "other", but new assets can not be created with this value.firstCouponDate(string, optional): ISO 8601 representation of the first coupon date.maturityDate(string, optional): ISO 8601 representation of the bond's maturity date.name(string, required): Display name of the bond.securityIdentifier(string, required): Security identifier of the asset.
Loan
agreementDate(string, required): ISO 8601 representation of the date when the loan was agreed upon.dayCountConvention(string, required): The method used to calculate interest. Possible values: "actual/actual", "30/360", "actual/360". Some assets will have a value of "other", but new assets can not be created with this value.interestRateInPercent(number, required): The fixed interest rate for the loan, expressed as a percentage (e.g., 1.5 for 1.5%). This should usually be a positive number, as the sign of the principal amount affects the sign of the accruing interest, but in unusual periods with negative interest rates it can be negative.maturityDate(string, required): ISO 8601 representation of the date when the loan matures.principalAmount(number, required): The agreed-upon amount for the loan, denominated in the account's currency. A positive value represents receivables (an asset), while a negative value represents payables (a liability).securityIdentifier(string, required): Security identifier of the asset.
Receivables here means money owed to the customer, in other words an asset. If the customer lends someone 1 million, they expect to receive 1 million back (plus interest), so it’s a receivable.
Payables means money the customer owes to someone else, in other words a liability. If the customer borrows 1 million from someone, they expect to have to pay that 1 million back (plus interest), so it’s a payable.
Relationships
account: The account the loan will affect.
Mutual Fund
ccyCode(string, required): ISO 4217 code for the mutual fund's currency. Examples: "USD", "EUR", "DKK".countryCode(string, required): ISO 3166-1 alpha-2 code representing the mutual fund issuer's domicile. Examples: "US", "DE", "DK".name(string, required): Display name of the mutual fund.securityIdentifier(string, required): Security identifier of the asset.
Refund
name(string, required): Name of the asset.
New assets of this type can not be created, and existing assets can not be referenced directly by any transaction types. They exist purely for reporting purposes.
Stock
ccyCode(string, required): ISO 4217 code for the stock's currency. Examples: "USD", "EUR", "DKK".countryCode(string, required): ISO 3166-1 alpha-2 code representing the company's domicile. Examples: "US", "DE", "DK".name(string, required): Display name of the stock.securityIdentifier(string, required): Security identifier of the asset.
Zero Coupon Bond
ccyCode(string, required): ISO 4217 code for the bond's currency. Examples: "USD", "EUR", "DKK".countryCode(string, required): ISO 3166-1 alpha-2 code representing the bond issuer's domicile. Examples: "US", "DE", "DK".maturityDate(string, optional): ISO 8601 representation of the bond's maturity date.name(string, required): Display name of the bond.securityIdentifier(string, required): Security identifier of the asset.
Other
This type represents a range of other, more uncommon types of assets in the system. Assets of this type can only be retrieved, not created.
securityIdentifier(string, required): Security identifier of the asset.
Endpoints
GET /assets/:id
Parameters
id(path, required): Asset identifier.
Examples
Bond
200 OK
# Request
GET /api/v2/assets/5e6a90cf921d8b1874c32ed5 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "5e6a90cf921d8b1874c32ed5",
"type": "bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"couponFrequency": "quarterly",
"dayCountConvention": "actual/actual",
"firstCouponDate": "2010-07-01",
"datedDate": "2010-04-23",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
Fee
200 OK
# Request
GET /api/v2/assets/cc4bda6ebab880fdb125f072 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "cc4bda6ebab880fdb125f072",
"type": "fee-asset",
"attributes": {
"name": "Management Fee",
"category": "management
}
}
}
FX Forward, Cash Settlement
200 OK
# Request
GET /api/v2/assets/1d126d9bb1e2450bbffcbb00 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "1d126d9bb1e2450bbffcbb00",
"type": "fx-forward-cash-settlement-asset",
"attributes": {
"agreementDate": "2024-05-03",
"fixingDate": "2024-06-03",
"notionalAmount": 800000,
"primaryCcyCode": "USD",
"secondaryCcyCode": "DKK",
"securityIdentifier": "FXForward1",
"settlementAmount": -5515200,
"settlementDate": "2024-06-03"
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "a3088d3da462cdd045c7a4bf"
}
}
}
}
}
FX Forward, Physical Delivery
200 OK
# Request
GET /api/v2/assets/cc4bda6ebab880fdb125f071 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "cc4bda6ebab880fdb125f071",
"type": "fx-forward-physical-delivery-asset",
"attributes": {
"agreementDate": "2024-05-30",
"fixingDate": "2024-11-30",
"notionalAmount": -1000000,
"securityIdentifier": "FXForward2",
"settlementAmount": 6821200,
"settlementDate": "2024-11-30"
},
"relationships": {
"primaryAccount": {
"data": {
"type": "account",
"id": "d30fa8c3d32f01ffcba161c5"
}
},
"secondaryAccount": {
"data": {
"type": "account",
"id": "9358bc0eaae0e78dcc61bea9"
}
}
}
}
}
Index-Linked Bond
200 OK
# Request
GET /api/v2/assets/5e6a90cf921d8b1874c32ed5 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "5e6a90cf921d8b1874c32ed5",
"type": "index-linked-bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"couponFrequency": "quarterly",
"dayCountConvention": "actual/actual",
"firstCouponDate": "2010-07-01",
"datedDate": "2010-04-23",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
Loan
200 OK
# Request
GET /api/v2/assets/cc4bda6ebab880fdb125f071 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "cc4bda6ebab880fdb125f071",
"type": "loan-asset",
"attributes": {
"agreementDate": "2025-01-30",
"dayCountConvention": "actual/360",
"interestRateInPercent": 1.5,
"maturityDate": "2025-03-31",
"principalAmount": 1000000,
"securityIdentifier": "Loan1"
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "d30fa8c3d32f01ffcba161c5"
}
}
}
}
}
Mutual Fund
200 OK
# Request
GET /api/v2/assets/5eec224dac39d31c888a01da HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "5eec224dac39d31c888a01da",
"type": "mutual-fund-asset",
"attributes": {
"ccyCode": "USD",
"countryCode": "US",
"name": "iShares Nasdaq 100 Ucits ETF",
"securityIdentifier": "IE00B53SZB19"
}
}
}
Refund
200 OK
# Request
GET /api/v2/assets/cc4bda6ebab880fdb125f072 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "cc4bda6ebab880fdb125f072",
"type": "refund-asset",
"attributes": {
"name": "Refund"
}
}
}
Stock
200 OK
# Request
GET /api/v2/assets/5f0475d37fe83b140c415d8f HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "5f0475d37fe83b140c415d8f",
"type": "stock-asset",
"attributes": {
"ccyCode": "USD",
"countryCode": "US",
"name": "Apple Inc",
"securityIdentifier": "US0378331005"
}
}
}
Zero Coupon Bond
200 OK
# Request
GET /api/v2/assets/5e6a90cf921d8b1874c32ed5 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "5e6a90cf921d8b1874c32ed5",
"type": "zero-coupon-bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
Other
200 OK
# Request
GET /api/v2/assets/cc4bda6ebab880fdb125f072 HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 200 OK
Content-Type: application/vnd.json+api
{
"data": {
"id": "cc4bda6ebab880fdb125f072",
"type": "other-asset",
"attributes": {
"securityIdentifier": "ZZ0002057370"
}
}
}
POST /assets
Create a new asset.
Examples
Bond
201 Created
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"couponFrequency": "quarterly",
"dayCountConvention": "actual/actual",
"firstCouponDate": "2010-07-01",
"datedDate": "2010-04-23",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "5e6a90cf921d8b1874c32ed5",
"type": "bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"couponFrequency": "quarterly",
"dayCountConvention": "actual/actual",
"firstCouponDate": "2010-07-01",
"datedDate": "2010-04-23",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
Fee
New Fee type assets can not be created.
FX Forward, Cash Settlement
201 Created
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "fx-forward-cash-settlement-asset",
"attributes": {
"agreementDate": "2024-05-03",
"fixingDate": "2024-06-03",
"notionalAmount": 800000,
"primaryCcyCode": "USD",
"secondaryCcyCode": "DKK",
"securityIdentifier": "FXForward1",
"settlementAmount": -5515200,
"settlementDate": "2024-06-03"
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "a3088d3da462cdd045c7a4bf"
}
}
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "1d126d9bb1e2450bbffcbb00",
"type": "fx-forward-cash-settlement-asset",
"attributes": {
"agreementDate": "2024-05-03",
"fixingDate": "2024-06-03",
"notionalAmount": 800000,
"primaryCcyCode": "USD",
"secondaryCcyCode": "DKK",
"securityIdentifier": "FXForward1",
"settlementAmount": -5515200,
"settlementDate": "2024-06-03"
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "a3088d3da462cdd045c7a4bf"
}
}
}
}
}
FX Forward, Physical Delivery
200 OK
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "fx-forward-physical-delivery-asset",
"attributes": {
"agreementDate": "2024-05-30",
"fixingDate": "2024-11-30",
"notionalAmount": -1000000,
"securityIdentifier": "FXForward2",
"settlementAmount": 6821200,
"settlementDate": "2024-11-30"
},
"relationships": {
"primaryAccount": {
"data": {
"type": "account",
"id": "d30fa8c3d32f01ffcba161c5"
}
},
"secondaryAccount": {
"data": {
"type": "account",
"id": "9358bc0eaae0e78dcc61bea9"
}
}
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "cc4bda6ebab880fdb125f071",
"type": "fx-forward-physical-delivery-asset",
"attributes": {
"agreementDate": "2024-05-30",
"fixingDate": "2024-11-30",
"notionalAmount": -1000000,
"securityIdentifier": "FXForward2",
"settlementAmount": 6821200,
"settlementDate": "2024-11-30"
},
"relationships": {
"primaryAccount": {
"data": {
"type": "account",
"id": "d30fa8c3d32f01ffcba161c5"
}
},
"secondaryAccount": {
"data": {
"type": "account",
"id": "9358bc0eaae0e78dcc61bea9"
}
}
}
}
}
Index-Linked Bond
200 OK
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "index-linked-bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"couponFrequency": "quarterly",
"dayCountConvention": "actual/actual",
"firstCouponDate": "2010-07-01",
"datedDate": "2010-04-23",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "5e6a90cf921d8b1874c32ed5",
"type": "index-linked-bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"couponFrequency": "quarterly",
"dayCountConvention": "actual/actual",
"firstCouponDate": "2010-07-01",
"datedDate": "2010-04-23",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
Loan
201 Created
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "loan-asset",
"attributes": {
"agreementDate": "2025-01-30",
"dayCountConvention": "actual/360",
"interestRateInPercent": 1.5,
"maturityDate": "2025-03-31",
"principalAmount": 1000000,
"securityIdentifier": "Loan1"
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "d30fa8c3d32f01ffcba161c5"
}
}
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "cc4bda6ebab880fdb125f071",
"type": "loan-asset",
"attributes": {
"agreementDate": "2025-01-30",
"dayCountConvention": "actual/360",
"interestRateInPercent": 1.5,
"maturityDate": "2025-03-31"
"principalAmount": 1000000,
"securityIdentifier": "Loan1",
},
"relationships": {
"account": {
"data": {
"type": "account",
"id": "d30fa8c3d32f01ffcba161c5"
}
}
}
}
}
Mutual Fund
201 Created
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "mutual-fund-asset",
"attributes": {
"ccyCode": "USD",
"countryCode": "US",
"name": "iShares Nasdaq 100 Ucits ETF",
"securityIdentifier": "IE00B53SZB19"
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "5eec224dac39d31c888a01da",
"type": "mutual-fund-asset",
"attributes": {
"ccyCode": "USD",
"countryCode": "US",
"name": "iShares Nasdaq 100 Ucits ETF",
"securityIdentifier": "IE00B53SZB19"
}
}
}
Fee
New Refund type assets can not be created.
Stock
201 Created
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "stock-asset",
"attributes": {
"ccyCode": "USD",
"countryCode": "US",
"name": "Apple Inc",
"securityIdentifier": "US0378331005"
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "5f0475d37fe83b140c415d8f",
"type": "stock-asset",
"attributes": {
"ccyCode": "USD",
"countryCode": "US",
"name": "Apple Inc",
"securityIdentifier": "US0378331005"
}
}
}
Zero Coupon Bond
201 Created
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "zero-coupon-bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
# Response
HTTP/1.1 201 Created
Content-Type: application/vnd.json+api
{
"data": {
"id": "5e6a90cf921d8b1874c32ed5",
"type": "zero-coupon-bond-asset",
"attributes": {
"ccyCode": "DKK",
"countryCode": "DK",
"maturityDate": "2041-07-01",
"name": "4% Nordea Kre 41",
"securityIdentifier": "DK0002024876"
}
}
}
Other
New Other type assets can not be created.
Asset Already Exists
When attempting to create an asset with a combination of securityIdentifier
and ccyCode that already exists in the system, the API responds with a 303 See Other redirection that provides a Location header, pointing to the GET /assets/:id endpoint where the asset can be found.
303 See Other
# Request
POST /api/v2/assets HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Content-Type: application/vnd.json+api
Host: platform.aleta.io
{
"data": {
"type": "stock-asset",
"attributes": {
"ccyCode": "USD",
"countryCode": "US",
"name": "Apple Inc",
"securityIdentifier": "US0378331005"
}
}
}
# Response
HTTP/1.1 303 See Other
Location https://platforma.aleta.io/api/v2/assets/5f0475d37fe83b140c415d8f
DELETE /assets/:id
Parameters
id(required, path): Asset identifier
Examples
204 No Content
# Request
DELETE /api/v2/assets/6704d535298ab60100cbc56c HTTP/1.1
Accept: application/vnd.json+api
Authorization: Bearer <access token>
Host: platform.aleta.io
# Response
HTTP/1.1 204 No Content
Content-Type: application/vnd.json+api