> For the complete documentation index, see [llms.txt](https://axiology.gitbook.io/axiology-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://axiology.gitbook.io/axiology-docs/rest-api/funds.md).

# Funds

## Get fund subscriptions

> Retrieve a list of fund subscriptions

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/subscriptions":{"get":{"description":"Retrieve a list of fund subscriptions","operationId":"getSubscriptions","parameters":[{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterSubscriptionDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"status":{"type":"string","enum":["asc","desc"]}},"required":["status"]},{"properties":{"totalPrice":{"type":"string","enum":["asc","desc"]}},"required":["totalPrice"]},{"properties":{"amount":{"type":"string","enum":["asc","desc"]}},"required":["amount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, status, totalPrice, amount"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/SubscriptionDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund subscriptions","tags":["Funds"]}}},"components":{"schemas":{"FilterSubscriptionDto":{"type":"object","properties":{"fundId":{"description":"Filter subscriptions by fund (asset) id","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"accountAddress":{"description":"Filter subscriptions by investor wallet address","oneOf":[{"type":"array","items":{"description":"Account address","type":"string","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"minItems":1},{"type":"string","description":"Partial account address"}]},"investorBrokerId":{"description":"Filter subscriptions by investor's broker id","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"issuerBrokerId":{"description":"Filter subscriptions by issuer broker id","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"cashLegType":{"description":"Filter subscriptions by cash leg settlement method","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/SettlementMethod"},"minItems":1},{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Filter subscriptions by status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/SubscriptionStatus"},"minItems":1},{"$ref":"#/components/schemas/SubscriptionStatus"}]}}},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"SubscriptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund subscription status:**\n- `requested` - subscription requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; units delivered to the investor"},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"SubscriptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund subscription UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the subscription is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the subscription","allOf":[{"$ref":"#/components/schemas/SubscriptionStatus"}]},"totalPrice":{"nullable":true,"description":"Requested or settled price, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"nullable":true,"description":"Requested or settled amount, in fund units\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the subscription was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the subscription was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Create fund subscription

> Request a fund subscription on behalf of an investor (investor's broker agent)

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/subscriptions":{"post":{"description":"Request a fund subscription on behalf of an investor (investor's broker agent)","operationId":"createSubscription","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateSubscriptionDto"}}}},"responses":{"201":{"description":"Requested fund subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscriptionDto"}}}}},"summary":"Create fund subscription","tags":["Funds"]}}},"components":{"schemas":{"CreateSubscriptionDto":{"type":"object","properties":{"fundId":{"type":"string","description":"Fund (asset) id to subscribe to","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"totalPrice":{"format":"int64","description":"Requested price, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Requested amount, in fund units\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Optional reference stored against the subscription request","maxLength":256}},"required":["fundId","accountAddress","cashLegType"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"SubscriptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund subscription UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the subscription is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the subscription","allOf":[{"$ref":"#/components/schemas/SubscriptionStatus"}]},"totalPrice":{"nullable":true,"description":"Requested or settled price, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"nullable":true,"description":"Requested or settled amount, in fund units\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the subscription was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the subscription was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"SubscriptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund subscription status:**\n- `requested` - subscription requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; units delivered to the investor"}}}}
```

## Get fund subscription

> Get a fund subscription by its unique identifier

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/subscriptions/{subscriptionId}":{"get":{"description":"Get a fund subscription by its unique identifier","operationId":"getSubscription","parameters":[{"name":"subscriptionId","required":true,"in":"path","description":"Fund subscription UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Full information about a single fund subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscriptionDto"}}}}},"summary":"Get fund subscription","tags":["Funds"]}}},"components":{"schemas":{"SubscriptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund subscription UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the subscription is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the subscription","allOf":[{"$ref":"#/components/schemas/SubscriptionStatus"}]},"totalPrice":{"nullable":true,"description":"Requested or settled price, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"nullable":true,"description":"Requested or settled amount, in fund units\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the subscription was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the subscription was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"SubscriptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund subscription status:**\n- `requested` - subscription requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; units delivered to the investor"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Update fund subscription

> Cancel (investor agent), or reject / settle (issuer) a fund subscription

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/subscriptions/{subscriptionId}":{"patch":{"description":"Cancel (investor agent), or reject / settle (issuer) a fund subscription","operationId":"updateSubscription","parameters":[{"name":"subscriptionId","required":true,"in":"path","description":"Fund subscription UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSubscriptionDto"}}}},"responses":{"200":{"description":"Updated fund subscription","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscriptionDto"}}}}},"summary":"Update fund subscription","tags":["Funds"]}}},"components":{"schemas":{"UpdateSubscriptionDto":{"type":"object","properties":{"status":{"description":"**Update fund subscription status:**\n- `settled` - (issuer agent) settle the subscription\n- `rejected` - (issuer agent) reject the subscription\n- `cancelled` - (investor agent) cancel the subscription","allOf":[{"$ref":"#/components/schemas/SubscriptionStatus"}]},"totalPrice":{"format":"int64","description":"Settled price, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Settled amount, in fund units\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Optional reference stored against this status change","maxLength":256}},"required":["status"]},"SubscriptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund subscription status:**\n- `requested` - subscription requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; units delivered to the investor"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"SubscriptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund subscription UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the subscription is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the subscription","allOf":[{"$ref":"#/components/schemas/SubscriptionStatus"}]},"totalPrice":{"nullable":true,"description":"Requested or settled price, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"nullable":true,"description":"Requested or settled amount, in fund units\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the subscription was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the subscription was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"}}}}
```

## Get an account's fund redemptions

> Retrieve a paginated list of fund redemptions for a single investor account

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/accounts/{accountAddress}/funds/redemptions":{"get":{"description":"Retrieve a paginated list of fund redemptions for a single investor account","operationId":"getAccountRedemptions","parameters":[{"name":"accountAddress","required":true,"in":"path","description":"Account address","schema":{"format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}","type":"string"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/RedemptionDto"}}},"required":["pagination","items"]}}}}},"summary":"Get an account's fund redemptions","tags":["Funds"]}}},"components":{"schemas":{"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"RedemptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund redemption UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the redemption is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the redemption","allOf":[{"$ref":"#/components/schemas/RedemptionStatus"}]},"totalPrice":{"nullable":true,"description":"Settled cash proceeds, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Amount of fund units to redeem\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the redemption was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the redemption was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"RedemptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund redemption status:**\n- `requested` - redemption requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; cash delivered to the investor"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get an account's fund subscriptions

> Retrieve a paginated list of fund subscriptions for a single investor account

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/accounts/{accountAddress}/funds/subscriptions":{"get":{"description":"Retrieve a paginated list of fund subscriptions for a single investor account","operationId":"getAccountSubscriptions","parameters":[{"name":"accountAddress","required":true,"in":"path","description":"Account address","schema":{"format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}","type":"string"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/SubscriptionDto"}}},"required":["pagination","items"]}}}}},"summary":"Get an account's fund subscriptions","tags":["Funds"]}}},"components":{"schemas":{"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"SubscriptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund subscription UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the subscription is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the subscription","allOf":[{"$ref":"#/components/schemas/SubscriptionStatus"}]},"totalPrice":{"nullable":true,"description":"Requested or settled price, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"nullable":true,"description":"Requested or settled amount, in fund units\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the subscription was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the subscription was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"SubscriptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund subscription status:**\n- `requested` - subscription requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; units delivered to the investor"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get funds

> Retrieve a list of funds available in the system

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds":{"get":{"description":"Retrieve a list of funds available in the system","operationId":"getFunds","parameters":[{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterFundDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"status":{"type":"string","enum":["asc","desc"]}},"required":["status"]},{"properties":{"issuedAt":{"type":"string","enum":["asc","desc"]}},"required":["issuedAt"]},{"properties":{"supply":{"type":"string","enum":["asc","desc"]}},"required":["supply"]},{"properties":{"distributedAmount":{"type":"string","enum":["asc","desc"]}},"required":["distributedAmount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, status, issuedAt, supply, distributedAmount"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/FundDto"}}},"required":["pagination","items"]}}}}},"summary":"Get funds","tags":["Funds"]}}},"components":{"schemas":{"FilterFundDto":{"type":"object","properties":{"id":{"description":"Filter funds by asset ids","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"brokerId":{"description":"Filter funds by broker ids","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"issuerId":{"description":"Filter funds by issuer ids","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"issuingAccountAddress":{"description":"Filter funds by issuer account address","oneOf":[{"type":"array","items":{"description":"Account address","type":"string","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"minItems":1},{"type":"string","description":"Partial account address"}]},"operationalAccountAddress":{"description":"Filter funds by operational account address","oneOf":[{"type":"array","items":{"description":"Account address","type":"string","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"minItems":1},{"type":"string","description":"Partial account address"}]},"name":{"type":"string","description":"Filter funds by name"},"isin":{"type":"string","description":"Filter funds by ISIN"},"ticker":{"type":"string","description":"Filter funds by ticker"},"dti":{"type":"string","description":"Filter funds by DTI"},"origin":{"description":"Filter funds by origin","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/InstrumentOrigin"},"minItems":1},{"$ref":"#/components/schemas/InstrumentOrigin"}]},"custodian":{"type":"string","description":"Filter funds by custodian"},"custodianLeiCode":{"type":"string","description":"LEI code of original depository where the issuer has registered the securities"},"issuerCsdLeiCode":{"type":"string","description":"LEI code of the issuer CSD where the securities are registered"},"underlyingInstrumentCode":{"type":"string","description":"Filter funds by instrument code"},"fisn":{"type":"string","description":"Filter funds by FISN","format":"iso-18774-fisn","maxLength":35},"countryCode":{"type":"string","description":"Filter funds by country code"},"vehicleType":{"description":"Filter funds by vehicle type","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/VehicleType"},"minItems":1},{"$ref":"#/components/schemas/VehicleType"}]},"incomeUse":{"description":"Filter funds by income use","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/IncomeUse"},"minItems":1},{"$ref":"#/components/schemas/IncomeUse"}]},"mmfFlag":{"type":"boolean","description":"Filter funds by MMF flag"},"isSubscribable":{"type":"boolean","description":"Filter funds by whether they are currently subscribable"},"mmfVariant":{"description":"Filter funds by MMF variant","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/MmfVariant"},"minItems":1},{"$ref":"#/components/schemas/MmfVariant"}]},"status":{"description":"Filter funds by status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/FundStatus"},"minItems":1},{"$ref":"#/components/schemas/FundStatus"}]},"issuedAt":{"format":"date-time","description":"Filter funds by issue date","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]},"settlementType":{"description":"Filter funds by settlement type","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/SettlementType"},"minItems":1},{"$ref":"#/components/schemas/SettlementType"}]}}},"InstrumentOrigin":{"type":"string","enum":["native","tokenized"],"description":"**Origin of the fund:**\n- `native` - fund originally issued on Axiology TSS\n- `tokenized` - immobilised external fund tokenised on Axiology TSS"},"VehicleType":{"type":"string","enum":["UCITS sub-fund","AIF","Securitisation compartment","Standalone fund"],"description":"**Vehicle type of the fund:**\n- `UCITS sub-fund` - sub-fund of a UCITS umbrella\n- `AIF` - alternative investment fund\n- `Securitisation compartment` - compartment of a securitisation vehicle\n- `Standalone fund` - standalone fund without an umbrella structure"},"IncomeUse":{"type":"string","enum":["accumulating","distributing"],"description":"**Income use policy of the fund:**\n- `accumulating` - income is reinvested into the fund's NAV\n- `distributing` - income is paid out to unit-holders"},"MmfVariant":{"type":"string","enum":["CNAV","LVNAV","VNAV","Short-Term VNAV"],"description":"**Money Market Fund variant:**\n- `CNAV` - Constant Net Asset Value\n- `LVNAV` - Low-Volatility Net Asset Value\n- `VNAV` - Variable Net Asset Value\n- `Short-Term VNAV` - Short-Term Variable Net Asset Value"},"FundStatus":{"type":"string","enum":["draft","live","locked","collecting","collected","closed"],"description":"Lifecycle status of the fund"},"SettlementType":{"type":"string","enum":["external","internal"],"description":"**Corporate actions settlement type:**\n- `internal` - settled within Axiology TSS using EMTs\n- `external` - settled via bank or other payment systems outside Axiology TSS"},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"FundDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund UUID identifier, global in scope of TSS","format":"uuid"},"issuerId":{"type":"string","description":"Unique UUID of the issuer in scope of this gateway","format":"uuid"},"currencyId":{"type":"string","description":"Unique UUID of the settlement currency in scope of this gateway","format":"uuid"},"brokerId":{"type":"string","description":"Unique UUID of the broker that manages this fund","format":"uuid"},"origin":{"allOf":[{"$ref":"#/components/schemas/InstrumentOrigin"}]},"vehicleType":{"allOf":[{"$ref":"#/components/schemas/VehicleType"}]},"incomeUse":{"allOf":[{"$ref":"#/components/schemas/IncomeUse"}]},"managementCompanyLei":{"type":"string","description":"LEI of the fund management company","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"mmfFlag":{"type":"boolean","description":"Flag indicating this fund is a Money Market Fund unit"},"mmfVariant":{"allOf":[{"$ref":"#/components/schemas/MmfVariant"}],"nullable":true},"custodian":{"type":"string","description":"Custodian where asset is registered outside","nullable":true},"custodianLeiCode":{"type":"string","description":"LEI code of original depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"issuerCsdLeiCode":{"type":"string","description":"LEI code of central securities depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"underlyingInstrumentCode":{"type":"string","description":"Underlying instrument code","nullable":true},"fisn":{"type":"string","description":"Financial Instrument Short Name (FISN) as per ISO 18774:2024","format":"iso-18774-fisn","maxLength":35,"nullable":true},"countryCode":{"type":"string","description":"Country code of where the security is issued"},"status":{"description":"Lifecycle status of the fund","allOf":[{"$ref":"#/components/schemas/FundStatus"}]},"issuingAccountAddress":{"type":"string","description":"Issuing account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"operationalAccountAddress":{"type":"string","description":"Operational account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"isin":{"type":"string","description":"International Securities Identification Number","nullable":true},"cfi":{"type":"string","description":"Classification of Financial Instruments (CFI) code as per ISO 10962","format":"iso-10962-cfi","pattern":"^[A-Z]{6}$","nullable":true},"figi":{"type":"string","description":"Financial Instrument Global Identifier","nullable":true},"ticker":{"type":"string","description":"Stock ticker symbol","nullable":true},"dti":{"type":"string","description":"Digital Token Identifier (DTI) as per ISO 24165","format":"iso-24165-dti","pattern":"^[B-DF-HJ-NP-TV-XZ1-9][B-DF-HJ-NP-TV-XZ0-9]{8}$","nullable":true},"ecbClassification":{"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists.","allOf":[{"$ref":"#/components/schemas/PAC2"}]},"bolClassification":{"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code.","allOf":[{"$ref":"#/components/schemas/BoLSecurityTypeCode"}]},"settlementUnitMultiple":{"type":"string","description":"Settlement unit multiple expressed in maximum decimal points amount allowed. Ex: 0,01 means 2"},"minimumSettlementUnit":{"type":"string","description":"Minimum settlement unit expressed in maximum decimal points amount allowed. Ex: 0,01 means 2"},"prospectusRegistered":{"type":"boolean","description":"Indicator, if the fund prospectus registered"},"isSubscribable":{"type":"boolean","description":"Whether the fund currently accepts subscriptions"},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the fund."},"name":{"type":"string","description":"Fund name"},"specUrl":{"type":"string","description":"IPFS link"},"exponent":{"type":"number","description":"**Exponent** - number of decimal places (scale) used for this asset or currency.\n- Decimal floating value: `stored_value / 10^exponent`.\n- Values are stored in the smallest accountable/divisible unit (e.g., cents when exponent = 2).\n- Examples: `2000` with exponent `2` => `20`; `2345` with exponent `3` => `2.345`; `2345` with exponent `0` => `2345`.","minimum":0,"maximum":10},"supply":{"format":"int64","description":"Current fund supply.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settlementType":{"allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"distributedAmount":{"format":"int64","description":"Amount of fund units that have been proposed to distribute to investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"cutOffTime":{"type":"string","description":"Cut-off time — deadline to receive subscriptions","pattern":"^([0-1][0-9]|2[0-3]):[0-5][0-9]$","format":"time","minLength":5,"maxLength":5},"freezeMinutesBeforeCutOff":{"type":"number","description":"Freeze window before the cut-off, in minutes"},"shareClassName":{"type":"string","description":"Share class of the fund","nullable":true},"managementFee":{"nullable":true,"description":"Annual management fee, expressed as a percentage (0–100).\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"minimumInvestment":{"type":"string","description":"Minimum investment required to subscribe to the fund","nullable":true},"payoutType":{"allOf":[{"$ref":"#/components/schemas/PayoutType"}],"nullable":true}},"required":["createdAt","updatedAt","id","issuerId","currencyId","brokerId","origin","vehicleType","incomeUse","managementCompanyLei","mmfFlag","mmfVariant","custodian","custodianLeiCode","issuerCsdLeiCode","underlyingInstrumentCode","fisn","countryCode","status","issuingAccountAddress","operationalAccountAddress","isin","cfi","figi","ticker","dti","ecbClassification","bolClassification","settlementUnitMultiple","minimumSettlementUnit","prospectusRegistered","isSubscribable","issuedAt","name","specUrl","exponent","supply","settlementType","distributedAmount","cutOffTime","freezeMinutesBeforeCutOff","shareClassName","managementFee","minimumInvestment","payoutType"]},"PAC2":{"type":"string","enum":["C","D","D.1","D.11","D.12","D.121","D.122","D.129","D.13","D.131","D.139","D.14","D.141","D.149","D.15","D.16","D.161","D.162","D.163","D.164","D.165","D.166","D.167","D.169","D.17","D.171","D.172","D.18","D.181","D.1811","D.1812","D.1813","D.1819","D.182","D.1821","D.1822","D.1823","D.1829","D.19","D.2","D.21","D.22","D.23","D.231","D.232","D.239","D.24","D.29","D.3","D.31","D.311","D.32","D.33","D.34","D.39","D.9","E","E.1","E.2","E.21","E.22","E.23","E.24","E.29","E.3","E.31","E.32","E.39","E.4","E.41","E.42","E.43","E.49","E.9","F","F.1","F.2","F.9","I","L","M","O","P","R","U"],"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists."},"BoLSecurityTypeCode":{"type":"string","enum":["100","101","102","103","104","106","107","108","305","400","900","N/A"],"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code."},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."},"PayoutType":{"type":"string","enum":["currency","units"],"description":"**How the fund pays out income:**\n- `currency` - paid out in the settlement currency\n- `units` - reinvested as fund units"}}}}
```

## Create fund

> Create a new fund.

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds":{"post":{"description":"Create a new fund.","operationId":"createFund","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFundDto"}}}},"responses":{"201":{"description":"Successfully created a fund","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundDto"}}}}},"summary":"Create fund","tags":["Funds"]}}},"components":{"schemas":{"CreateFundDto":{"type":"object","properties":{"issuerId":{"type":"string","description":"Unique UUID of the issuer in scope of this gateway to assign as this fund's issuer","format":"uuid"},"currencyId":{"type":"string","description":"Unique UUID of the settlement currency in scope of this gateway","format":"uuid"},"name":{"type":"string","description":"Full name of the fund"},"origin":{"allOf":[{"$ref":"#/components/schemas/InstrumentOrigin"}],"description":"Origin of the fund. MVP scope accepts only `tokenized`.","default":"tokenized"},"vehicleType":{"allOf":[{"$ref":"#/components/schemas/VehicleType"}]},"incomeUse":{"allOf":[{"$ref":"#/components/schemas/IncomeUse"}]},"managementCompanyLei":{"type":"string","description":"LEI of the fund management company","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20},"mmfFlag":{"type":"boolean","description":"Flag indicating this fund is a Money Market Fund unit. MVP scope requires `true`."},"mmfVariant":{"allOf":[{"$ref":"#/components/schemas/MmfVariant"}],"description":"MMF variant — required because mmfFlag is true in MVP"},"custodian":{"type":"string","description":"Custodian where asset is registered outside"},"custodianLeiCode":{"type":"string","description":"LEI code of original depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20},"issuerCsdLeiCode":{"type":"string","description":"LEI code of the issuer in central securities depository","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20},"underlyingInstrumentCode":{"type":"string","description":"Underlying instrument code"},"fisn":{"type":"string","description":"Financial Instrument Short Name (FISN) as per ISO 18774:2024","format":"iso-18774-fisn","maxLength":35},"countryCode":{"type":"string","description":"Country code of where the security is issued"},"exponent":{"type":"number","description":"**Exponent** - number of decimal places (scale) used for this asset or currency.\n- Decimal floating value: `stored_value / 10^exponent`.\n- Values are stored in the smallest accountable/divisible unit (e.g., cents when exponent = 2).\n- Examples: `2000` with exponent `2` => `20`; `2345` with exponent `3` => `2.345`; `2345` with exponent `0` => `2345`.","minimum":0,"maximum":10},"isin":{"type":"string","description":"International Securities Identification Number"},"cfi":{"type":"string","description":"Classification of Financial Instruments (CFI) code as per ISO 10962","format":"iso-10962-cfi","pattern":"^[A-Z]{6}$"},"figi":{"type":"string","description":"Financial Instrument Global Identifier"},"ticker":{"type":"string","description":"Ticker symbol"},"dti":{"type":"string","description":"Digital Token Identifier (DTI) as per ISO 24165","format":"iso-24165-dti","pattern":"^[B-DF-HJ-NP-TV-XZ1-9][B-DF-HJ-NP-TV-XZ0-9]{8}$"},"ecbClassification":{"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists.","allOf":[{"$ref":"#/components/schemas/PAC2"}]},"bolClassification":{"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code.","allOf":[{"$ref":"#/components/schemas/BoLSecurityTypeCode"}]},"minimumSettlementUnit":{"type":"string","description":"Up to what part a fund unit can be divided"},"settlementUnitMultiple":{"type":"string","description":"The smallest part of settlement currency to trade"},"shareClassName":{"type":"string","description":"Share class of the fund"},"managementFee":{"format":"int64","minimum":0,"maximum":100000000,"description":"Annual management fee, expressed as a percentage (0–100).\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"minimumInvestment":{"type":"string","description":"Minimum investment required to subscribe to the fund"},"payoutType":{"allOf":[{"$ref":"#/components/schemas/PayoutType"}],"description":"How fund income is paid out — in settlement currency or in units"},"prospectusRegistered":{"type":"boolean","description":"Indicator, if the fund prospectus registered"},"isSubscribable":{"type":"boolean","description":"Whether the fund accepts subscriptions"},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the fund."},"reference":{"type":"string","description":"Reference to the new fund data document or other relevant information."},"settlementType":{"allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"cutOffTime":{"type":"string","description":"Cut-off time — deadline to receive subscriptions","pattern":"^([0-1][0-9]|2[0-3]):[0-5][0-9]$","format":"time","minLength":5,"maxLength":5},"freezeMinutesBeforeCutOff":{"type":"number","description":"Freeze window before the cut-off, in minutes"}},"required":["issuerId","currencyId","name","origin","vehicleType","incomeUse","mmfFlag","mmfVariant","countryCode","exponent","ecbClassification","bolClassification","minimumSettlementUnit","settlementUnitMultiple","shareClassName","managementFee","minimumInvestment","payoutType","prospectusRegistered","isSubscribable","issuedAt","reference","settlementType","cutOffTime","freezeMinutesBeforeCutOff"]},"InstrumentOrigin":{"type":"string","enum":["native","tokenized"],"description":"**Origin of the fund:**\n- `native` - fund originally issued on Axiology TSS\n- `tokenized` - immobilised external fund tokenised on Axiology TSS"},"VehicleType":{"type":"string","enum":["UCITS sub-fund","AIF","Securitisation compartment","Standalone fund"],"description":"**Vehicle type of the fund:**\n- `UCITS sub-fund` - sub-fund of a UCITS umbrella\n- `AIF` - alternative investment fund\n- `Securitisation compartment` - compartment of a securitisation vehicle\n- `Standalone fund` - standalone fund without an umbrella structure"},"IncomeUse":{"type":"string","enum":["accumulating","distributing"],"description":"**Income use policy of the fund:**\n- `accumulating` - income is reinvested into the fund's NAV\n- `distributing` - income is paid out to unit-holders"},"MmfVariant":{"type":"string","enum":["CNAV","LVNAV","VNAV","Short-Term VNAV"],"description":"**Money Market Fund variant:**\n- `CNAV` - Constant Net Asset Value\n- `LVNAV` - Low-Volatility Net Asset Value\n- `VNAV` - Variable Net Asset Value\n- `Short-Term VNAV` - Short-Term Variable Net Asset Value"},"PAC2":{"type":"string","enum":["C","D","D.1","D.11","D.12","D.121","D.122","D.129","D.13","D.131","D.139","D.14","D.141","D.149","D.15","D.16","D.161","D.162","D.163","D.164","D.165","D.166","D.167","D.169","D.17","D.171","D.172","D.18","D.181","D.1811","D.1812","D.1813","D.1819","D.182","D.1821","D.1822","D.1823","D.1829","D.19","D.2","D.21","D.22","D.23","D.231","D.232","D.239","D.24","D.29","D.3","D.31","D.311","D.32","D.33","D.34","D.39","D.9","E","E.1","E.2","E.21","E.22","E.23","E.24","E.29","E.3","E.31","E.32","E.39","E.4","E.41","E.42","E.43","E.49","E.9","F","F.1","F.2","F.9","I","L","M","O","P","R","U"],"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists."},"BoLSecurityTypeCode":{"type":"string","enum":["100","101","102","103","104","106","107","108","305","400","900","N/A"],"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code."},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."},"PayoutType":{"type":"string","enum":["currency","units"],"description":"**How the fund pays out income:**\n- `currency` - paid out in the settlement currency\n- `units` - reinvested as fund units"},"SettlementType":{"type":"string","enum":["external","internal"],"description":"**Corporate actions settlement type:**\n- `internal` - settled within Axiology TSS using EMTs\n- `external` - settled via bank or other payment systems outside Axiology TSS"},"FundDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund UUID identifier, global in scope of TSS","format":"uuid"},"issuerId":{"type":"string","description":"Unique UUID of the issuer in scope of this gateway","format":"uuid"},"currencyId":{"type":"string","description":"Unique UUID of the settlement currency in scope of this gateway","format":"uuid"},"brokerId":{"type":"string","description":"Unique UUID of the broker that manages this fund","format":"uuid"},"origin":{"allOf":[{"$ref":"#/components/schemas/InstrumentOrigin"}]},"vehicleType":{"allOf":[{"$ref":"#/components/schemas/VehicleType"}]},"incomeUse":{"allOf":[{"$ref":"#/components/schemas/IncomeUse"}]},"managementCompanyLei":{"type":"string","description":"LEI of the fund management company","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"mmfFlag":{"type":"boolean","description":"Flag indicating this fund is a Money Market Fund unit"},"mmfVariant":{"allOf":[{"$ref":"#/components/schemas/MmfVariant"}],"nullable":true},"custodian":{"type":"string","description":"Custodian where asset is registered outside","nullable":true},"custodianLeiCode":{"type":"string","description":"LEI code of original depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"issuerCsdLeiCode":{"type":"string","description":"LEI code of central securities depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"underlyingInstrumentCode":{"type":"string","description":"Underlying instrument code","nullable":true},"fisn":{"type":"string","description":"Financial Instrument Short Name (FISN) as per ISO 18774:2024","format":"iso-18774-fisn","maxLength":35,"nullable":true},"countryCode":{"type":"string","description":"Country code of where the security is issued"},"status":{"description":"Lifecycle status of the fund","allOf":[{"$ref":"#/components/schemas/FundStatus"}]},"issuingAccountAddress":{"type":"string","description":"Issuing account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"operationalAccountAddress":{"type":"string","description":"Operational account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"isin":{"type":"string","description":"International Securities Identification Number","nullable":true},"cfi":{"type":"string","description":"Classification of Financial Instruments (CFI) code as per ISO 10962","format":"iso-10962-cfi","pattern":"^[A-Z]{6}$","nullable":true},"figi":{"type":"string","description":"Financial Instrument Global Identifier","nullable":true},"ticker":{"type":"string","description":"Stock ticker symbol","nullable":true},"dti":{"type":"string","description":"Digital Token Identifier (DTI) as per ISO 24165","format":"iso-24165-dti","pattern":"^[B-DF-HJ-NP-TV-XZ1-9][B-DF-HJ-NP-TV-XZ0-9]{8}$","nullable":true},"ecbClassification":{"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists.","allOf":[{"$ref":"#/components/schemas/PAC2"}]},"bolClassification":{"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code.","allOf":[{"$ref":"#/components/schemas/BoLSecurityTypeCode"}]},"settlementUnitMultiple":{"type":"string","description":"Settlement unit multiple expressed in maximum decimal points amount allowed. Ex: 0,01 means 2"},"minimumSettlementUnit":{"type":"string","description":"Minimum settlement unit expressed in maximum decimal points amount allowed. Ex: 0,01 means 2"},"prospectusRegistered":{"type":"boolean","description":"Indicator, if the fund prospectus registered"},"isSubscribable":{"type":"boolean","description":"Whether the fund currently accepts subscriptions"},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the fund."},"name":{"type":"string","description":"Fund name"},"specUrl":{"type":"string","description":"IPFS link"},"exponent":{"type":"number","description":"**Exponent** - number of decimal places (scale) used for this asset or currency.\n- Decimal floating value: `stored_value / 10^exponent`.\n- Values are stored in the smallest accountable/divisible unit (e.g., cents when exponent = 2).\n- Examples: `2000` with exponent `2` => `20`; `2345` with exponent `3` => `2.345`; `2345` with exponent `0` => `2345`.","minimum":0,"maximum":10},"supply":{"format":"int64","description":"Current fund supply.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settlementType":{"allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"distributedAmount":{"format":"int64","description":"Amount of fund units that have been proposed to distribute to investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"cutOffTime":{"type":"string","description":"Cut-off time — deadline to receive subscriptions","pattern":"^([0-1][0-9]|2[0-3]):[0-5][0-9]$","format":"time","minLength":5,"maxLength":5},"freezeMinutesBeforeCutOff":{"type":"number","description":"Freeze window before the cut-off, in minutes"},"shareClassName":{"type":"string","description":"Share class of the fund","nullable":true},"managementFee":{"nullable":true,"description":"Annual management fee, expressed as a percentage (0–100).\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"minimumInvestment":{"type":"string","description":"Minimum investment required to subscribe to the fund","nullable":true},"payoutType":{"allOf":[{"$ref":"#/components/schemas/PayoutType"}],"nullable":true}},"required":["createdAt","updatedAt","id","issuerId","currencyId","brokerId","origin","vehicleType","incomeUse","managementCompanyLei","mmfFlag","mmfVariant","custodian","custodianLeiCode","issuerCsdLeiCode","underlyingInstrumentCode","fisn","countryCode","status","issuingAccountAddress","operationalAccountAddress","isin","cfi","figi","ticker","dti","ecbClassification","bolClassification","settlementUnitMultiple","minimumSettlementUnit","prospectusRegistered","isSubscribable","issuedAt","name","specUrl","exponent","supply","settlementType","distributedAmount","cutOffTime","freezeMinutesBeforeCutOff","shareClassName","managementFee","minimumInvestment","payoutType"]},"FundStatus":{"type":"string","enum":["draft","live","locked","collecting","collected","closed"],"description":"Lifecycle status of the fund"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get fund's interests

> Get paginated history of a fund's published interests

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/interests":{"get":{"description":"Get paginated history of a fund's published interests","operationId":"getInterests","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterFundInterestDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"date":{"type":"string","enum":["asc","desc"]}},"required":["date"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, date"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/FundInterestDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund's interests","tags":["Funds"]}}},"components":{"schemas":{"FilterFundInterestDto":{"type":"object","properties":{"date":{"format":"date-time","description":"Filter by calendar date or date range","oneOf":[{"type":"array","items":{"type":"string","format":"date"},"minItems":1,"maxItems":2},{"type":"string","format":"date"}]}}},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"FundInterestDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Interest id","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"date":{"type":"string","description":"Date the interest record applies to","format":"date"},"recordAt":{"format":"date-time","type":"string","description":"Point in time used to determine fund holders and their balances"},"totalAccrued":{"format":"int64","description":"Total interest accrued by the fund for the day\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["createdAt","updatedAt","id","fundId","date","recordAt","totalAccrued"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Create fund's interest

> Create a daily interest record (combined interest for all investors) for a fund

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/interests":{"post":{"description":"Create a daily interest record (combined interest for all investors) for a fund","operationId":"createInterest","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFundInterestDto"}}}},"responses":{"201":{"description":"Successfully created fund's interest","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundInterestDto"}}}}},"summary":"Create fund's interest","tags":["Funds"]}}},"components":{"schemas":{"CreateFundInterestDto":{"type":"object","properties":{"date":{"format":"date","type":"string","description":"Date the interest record applies to"},"recordAt":{"format":"date-time","type":"string","description":"Point in time used to determine fund holders and their balances"},"totalAccrued":{"format":"int64","description":"Total interest accrued by the fund for the day\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["date","recordAt","totalAccrued"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"FundInterestDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Interest id","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"date":{"type":"string","description":"Date the interest record applies to","format":"date"},"recordAt":{"format":"date-time","type":"string","description":"Point in time used to determine fund holders and their balances"},"totalAccrued":{"format":"int64","description":"Total interest accrued by the fund for the day\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["createdAt","updatedAt","id","fundId","date","recordAt","totalAccrued"]}}}}
```

## Get fund's interest

> Get a fund's interest by id

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/interests/{interestId}":{"get":{"description":"Get a fund's interest by id","operationId":"getInterestById","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"interestId","required":true,"in":"path","description":"Interest UUID","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Successfully received fund's interest","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundInterestDto"}}}}},"summary":"Get fund's interest","tags":["Funds"]}}},"components":{"schemas":{"FundInterestDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Interest id","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"date":{"type":"string","description":"Date the interest record applies to","format":"date"},"recordAt":{"format":"date-time","type":"string","description":"Point in time used to determine fund holders and their balances"},"totalAccrued":{"format":"int64","description":"Total interest accrued by the fund for the day\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["createdAt","updatedAt","id","fundId","date","recordAt","totalAccrued"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Delete fund's interest

> Delete an existing daily interest record for a fund by its id (correction while unpaid)

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/interests/{interestId}":{"delete":{"description":"Delete an existing daily interest record for a fund by its id (correction while unpaid)","operationId":"deleteInterest","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"interestId","required":true,"in":"path","description":"Interest UUID","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Successfully deleted fund's interest","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundInterestDto"}}}}},"summary":"Delete fund's interest","tags":["Funds"]}}},"components":{"schemas":{"FundInterestDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Interest id","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"date":{"type":"string","description":"Date the interest record applies to","format":"date"},"recordAt":{"format":"date-time","type":"string","description":"Point in time used to determine fund holders and their balances"},"totalAccrued":{"format":"int64","description":"Total interest accrued by the fund for the day\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["createdAt","updatedAt","id","fundId","date","recordAt","totalAccrued"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get fund data validations

> Retrieve a list of fund data validation requests available in the system

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/data-validations":{"get":{"description":"Retrieve a list of fund data validation requests available in the system","operationId":"getFundDataValidations","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterDataValidationDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"initiatedAt":{"type":"string","enum":["asc","desc"]}},"required":["initiatedAt"]},{"properties":{"validatedAt":{"type":"string","enum":["asc","desc"]}},"required":["validatedAt"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, initiatedAt, validatedAt"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/DataValidationDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund data validations","tags":["Funds"]}}},"components":{"schemas":{"FilterDataValidationDto":{"type":"object","properties":{"status":{"description":"Filter bond data validations by status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/DataValidationStatus"},"minItems":1},{"$ref":"#/components/schemas/DataValidationStatus"}]}}},"DataValidationStatus":{"type":"string","enum":["approved","cancelled","initiated","rejected"],"description":"**Data validation status:**\n- `initiated` - data validation has been requested and is awaiting operator review\n- `approved` - operator approved the data validation\n- `rejected` - operator rejected the data validation\n- `cancelled` - data validation was cancelled by the broker"},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"DataValidationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Data validation UUID identifier, global in scope of TSS","format":"uuid"},"assetId":{"type":"string","description":"Unique UUID of the asset in scope of this gateway","format":"uuid"},"status":{"allOf":[{"$ref":"#/components/schemas/DataValidationStatus"}]},"specUrl":{"type":"string","description":"IPFS link with data that was validated or needs to be validated"},"initiationReference":{"type":"string","description":"Reference provided by the broker during data validation initiation"},"validationReference":{"type":"string","description":"Reference provided by the operator during data validation","nullable":true},"initiatedAt":{"format":"date-time","type":"string","description":"Date when the data validation was initiated"},"validatedAt":{"type":"string","description":"Date when the data validation was completed","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","assetId","status","specUrl","initiationReference","validationReference","initiatedAt","validatedAt"]}}}}
```

## Change fund's information

> Update existing fund's information. This only creates a change request. It is executed only after approval by operator

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/data-validations":{"post":{"description":"Update existing fund's information. This only creates a change request. It is executed only after approval by operator","operationId":"initiateFundDataValidation","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFundDataValidationDto"}}}},"responses":{"201":{"description":"Successfully created a request to update fund data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataValidationDto"}}}}},"summary":"Change fund's information","tags":["Funds"]}}},"components":{"schemas":{"CreateFundDataValidationDto":{"type":"object","properties":{"initiationReference":{"type":"string","description":"Arbitrary reference provided by the broker to the fund data validation initiation"},"spec":{"description":"Proposed fund data to validate","allOf":[{"$ref":"#/components/schemas/CreateFundDataValidationSpecDto"}]}},"required":["initiationReference","spec"]},"CreateFundDataValidationSpecDto":{"type":"object","properties":{"issuerId":{"type":"string","description":"Unique UUID of the issuer in scope of this gateway to assign as this fund's issuer","format":"uuid"},"currencyId":{"type":"string","description":"Unique UUID of the settlement currency in scope of this gateway","format":"uuid"},"name":{"type":"string","description":"Full name of the fund"},"origin":{"allOf":[{"$ref":"#/components/schemas/InstrumentOrigin"}],"description":"Origin of the fund. MVP scope accepts only `tokenized`.","default":"tokenized"},"vehicleType":{"allOf":[{"$ref":"#/components/schemas/VehicleType"}]},"incomeUse":{"allOf":[{"$ref":"#/components/schemas/IncomeUse"}]},"managementCompanyLei":{"type":"string","description":"LEI of the fund management company","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20},"mmfFlag":{"type":"boolean","description":"Flag indicating this fund is a Money Market Fund unit. MVP scope requires `true`."},"mmfVariant":{"allOf":[{"$ref":"#/components/schemas/MmfVariant"}],"description":"MMF variant — required because mmfFlag is true in MVP"},"custodian":{"type":"string","description":"Custodian where asset is registered outside"},"custodianLeiCode":{"type":"string","description":"LEI code of original depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20},"issuerCsdLeiCode":{"type":"string","description":"LEI code of the issuer in central securities depository","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20},"underlyingInstrumentCode":{"type":"string","description":"Underlying instrument code"},"fisn":{"type":"string","description":"Financial Instrument Short Name (FISN) as per ISO 18774:2024","format":"iso-18774-fisn","maxLength":35},"countryCode":{"type":"string","description":"Country code of where the security is issued"},"exponent":{"type":"number","description":"**Exponent** - number of decimal places (scale) used for this asset or currency.\n- Decimal floating value: `stored_value / 10^exponent`.\n- Values are stored in the smallest accountable/divisible unit (e.g., cents when exponent = 2).\n- Examples: `2000` with exponent `2` => `20`; `2345` with exponent `3` => `2.345`; `2345` with exponent `0` => `2345`.","minimum":0,"maximum":10},"isin":{"type":"string","description":"International Securities Identification Number"},"cfi":{"type":"string","description":"Classification of Financial Instruments (CFI) code as per ISO 10962","format":"iso-10962-cfi","pattern":"^[A-Z]{6}$"},"figi":{"type":"string","description":"Financial Instrument Global Identifier"},"ticker":{"type":"string","description":"Ticker symbol"},"dti":{"type":"string","description":"Digital Token Identifier (DTI) as per ISO 24165","format":"iso-24165-dti","pattern":"^[B-DF-HJ-NP-TV-XZ1-9][B-DF-HJ-NP-TV-XZ0-9]{8}$"},"ecbClassification":{"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists.","allOf":[{"$ref":"#/components/schemas/PAC2"}]},"bolClassification":{"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code.","allOf":[{"$ref":"#/components/schemas/BoLSecurityTypeCode"}]},"minimumSettlementUnit":{"type":"string","description":"Up to what part a fund unit can be divided"},"settlementUnitMultiple":{"type":"string","description":"The smallest part of settlement currency to trade"},"shareClassName":{"type":"string","description":"Share class of the fund"},"managementFee":{"format":"int64","minimum":0,"maximum":100000000,"description":"Annual management fee, expressed as a percentage (0–100).\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"minimumInvestment":{"type":"string","description":"Minimum investment required to subscribe to the fund"},"payoutType":{"allOf":[{"$ref":"#/components/schemas/PayoutType"}],"description":"How fund income is paid out — in settlement currency or in units"},"prospectusRegistered":{"type":"boolean","description":"Indicator, if the fund prospectus registered"},"isSubscribable":{"type":"boolean","description":"Whether the fund accepts subscriptions"},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the fund."},"settlementType":{"allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"cutOffTime":{"type":"string","description":"Cut-off time — deadline to receive subscriptions","pattern":"^([0-1][0-9]|2[0-3]):[0-5][0-9]$","format":"time","minLength":5,"maxLength":5},"freezeMinutesBeforeCutOff":{"type":"number","description":"Freeze window before the cut-off, in minutes"}},"required":["issuerId","currencyId","name","origin","vehicleType","incomeUse","mmfFlag","mmfVariant","countryCode","exponent","ecbClassification","bolClassification","minimumSettlementUnit","settlementUnitMultiple","shareClassName","managementFee","minimumInvestment","payoutType","prospectusRegistered","isSubscribable","issuedAt","settlementType","cutOffTime","freezeMinutesBeforeCutOff"]},"InstrumentOrigin":{"type":"string","enum":["native","tokenized"],"description":"**Origin of the fund:**\n- `native` - fund originally issued on Axiology TSS\n- `tokenized` - immobilised external fund tokenised on Axiology TSS"},"VehicleType":{"type":"string","enum":["UCITS sub-fund","AIF","Securitisation compartment","Standalone fund"],"description":"**Vehicle type of the fund:**\n- `UCITS sub-fund` - sub-fund of a UCITS umbrella\n- `AIF` - alternative investment fund\n- `Securitisation compartment` - compartment of a securitisation vehicle\n- `Standalone fund` - standalone fund without an umbrella structure"},"IncomeUse":{"type":"string","enum":["accumulating","distributing"],"description":"**Income use policy of the fund:**\n- `accumulating` - income is reinvested into the fund's NAV\n- `distributing` - income is paid out to unit-holders"},"MmfVariant":{"type":"string","enum":["CNAV","LVNAV","VNAV","Short-Term VNAV"],"description":"**Money Market Fund variant:**\n- `CNAV` - Constant Net Asset Value\n- `LVNAV` - Low-Volatility Net Asset Value\n- `VNAV` - Variable Net Asset Value\n- `Short-Term VNAV` - Short-Term Variable Net Asset Value"},"PAC2":{"type":"string","enum":["C","D","D.1","D.11","D.12","D.121","D.122","D.129","D.13","D.131","D.139","D.14","D.141","D.149","D.15","D.16","D.161","D.162","D.163","D.164","D.165","D.166","D.167","D.169","D.17","D.171","D.172","D.18","D.181","D.1811","D.1812","D.1813","D.1819","D.182","D.1821","D.1822","D.1823","D.1829","D.19","D.2","D.21","D.22","D.23","D.231","D.232","D.239","D.24","D.29","D.3","D.31","D.311","D.32","D.33","D.34","D.39","D.9","E","E.1","E.2","E.21","E.22","E.23","E.24","E.29","E.3","E.31","E.32","E.39","E.4","E.41","E.42","E.43","E.49","E.9","F","F.1","F.2","F.9","I","L","M","O","P","R","U"],"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists."},"BoLSecurityTypeCode":{"type":"string","enum":["100","101","102","103","104","106","107","108","305","400","900","N/A"],"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code."},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."},"PayoutType":{"type":"string","enum":["currency","units"],"description":"**How the fund pays out income:**\n- `currency` - paid out in the settlement currency\n- `units` - reinvested as fund units"},"SettlementType":{"type":"string","enum":["external","internal"],"description":"**Corporate actions settlement type:**\n- `internal` - settled within Axiology TSS using EMTs\n- `external` - settled via bank or other payment systems outside Axiology TSS"},"DataValidationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Data validation UUID identifier, global in scope of TSS","format":"uuid"},"assetId":{"type":"string","description":"Unique UUID of the asset in scope of this gateway","format":"uuid"},"status":{"allOf":[{"$ref":"#/components/schemas/DataValidationStatus"}]},"specUrl":{"type":"string","description":"IPFS link with data that was validated or needs to be validated"},"initiationReference":{"type":"string","description":"Reference provided by the broker during data validation initiation"},"validationReference":{"type":"string","description":"Reference provided by the operator during data validation","nullable":true},"initiatedAt":{"format":"date-time","type":"string","description":"Date when the data validation was initiated"},"validatedAt":{"type":"string","description":"Date when the data validation was completed","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","assetId","status","specUrl","initiationReference","validationReference","initiatedAt","validatedAt"]},"DataValidationStatus":{"type":"string","enum":["approved","cancelled","initiated","rejected"],"description":"**Data validation status:**\n- `initiated` - data validation has been requested and is awaiting operator review\n- `approved` - operator approved the data validation\n- `rejected` - operator rejected the data validation\n- `cancelled` - data validation was cancelled by the broker"}}}}
```

## Cancel fund data validation

> Cancel an existing fund data validation

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/data-validations/{dataValidationId}":{"patch":{"description":"Cancel an existing fund data validation","operationId":"cancelFundDataValidation","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"dataValidationId","required":true,"in":"path","description":"Data validation UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateFundDataValidationDto"}}}},"responses":{"200":{"description":"Successfully cancelled fund data validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataValidationDto"}}}}},"summary":"Cancel fund data validation","tags":["Funds"]}}},"components":{"schemas":{"UpdateFundDataValidationDto":{"type":"object","properties":{"status":{"allOf":[{"$ref":"#/components/schemas/DataValidationStatus"}],"description":"**Fund data validation status**\n- `cancelled` - cancel fund data validation","default":"cancelled"},"validationReference":{"type":"string","description":"Arbitrary reference provided by the broker to the fund data validation"}},"required":["status","validationReference"]},"DataValidationStatus":{"type":"string","enum":["approved","cancelled","initiated","rejected"],"description":"**Data validation status:**\n- `initiated` - data validation has been requested and is awaiting operator review\n- `approved` - operator approved the data validation\n- `rejected` - operator rejected the data validation\n- `cancelled` - data validation was cancelled by the broker"},"DataValidationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Data validation UUID identifier, global in scope of TSS","format":"uuid"},"assetId":{"type":"string","description":"Unique UUID of the asset in scope of this gateway","format":"uuid"},"status":{"allOf":[{"$ref":"#/components/schemas/DataValidationStatus"}]},"specUrl":{"type":"string","description":"IPFS link with data that was validated or needs to be validated"},"initiationReference":{"type":"string","description":"Reference provided by the broker during data validation initiation"},"validationReference":{"type":"string","description":"Reference provided by the operator during data validation","nullable":true},"initiatedAt":{"format":"date-time","type":"string","description":"Date when the data validation was initiated"},"validatedAt":{"type":"string","description":"Date when the data validation was completed","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","assetId","status","specUrl","initiationReference","validationReference","initiatedAt","validatedAt"]}}}}
```

## Get fund distributions

> Get a paginated list of distributions for a specific fund

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/distributions":{"get":{"description":"Get a paginated list of distributions for a specific fund","operationId":"getFundDistributions","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterDistributionDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"recordedAt":{"type":"string","enum":["asc","desc"]}},"required":["recordedAt"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, recordedAt"}],"responses":{"200":{"description":"Successfully retrieved a list of fund distributions.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/DistributionDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund distributions","tags":["Funds"]}}},"components":{"schemas":{"FilterDistributionDto":{"type":"object","properties":{"id":{"description":"Filter by distribution ID(s)","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"type":{"description":"Filter by distribution type(s)","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/DistributionType"},"minItems":1},{"$ref":"#/components/schemas/DistributionType"}]},"status":{"description":"Filter by distribution status(es)","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/DistributionStatus"},"minItems":1},{"$ref":"#/components/schemas/DistributionStatus"}]},"reference":{"description":"Filter by reference","oneOf":[{"type":"array","items":{"type":"string"},"minItems":1},{"type":"string"}]},"recordedAt":{"format":"date-time","description":"Filter distributions recorded from date or between two dates","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]},"settledAt":{"format":"date-time","description":"Filter distributions settled from date or between two dates","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]}}},"DistributionType":{"type":"string","enum":["fop","dvp"],"description":"**Type of distribution:**\n- `fop` - Free Of Payment: asset units are transferred for free\n- `dvp` - Delivery Versus Payment: asset units are transferred for an agreed currency amount"},"DistributionStatus":{"type":"string","enum":["settling","settled"],"description":"**Status of distribution:**\n- `settling` - distribution created and is settling\n- `settled` - distribution settled"},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"DistributionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Distribution UUID identifier, global in scope of TSS","format":"uuid"},"brokerId":{"type":"string","description":"Broker id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"type":{"allOf":[{"$ref":"#/components/schemas/DistributionType"}]},"supply":{"format":"int64","description":"Token supply to distribute.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Reference to a document or corporate action number, etc. - anything that could help relate distribution actions with other context"},"recordedAt":{"format":"date-time","type":"string","description":"Date and time of distribution registration"},"status":{"description":"**Status of distribution:**\n- `settling` - distribution created and is settling\n- `settled` - distribution settled","allOf":[{"$ref":"#/components/schemas/DistributionStatus"}]}},"required":["createdAt","updatedAt","id","brokerId","assetId","type","supply","reference","recordedAt","status"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Distribute fund

> Initiate fund distribution via Free Of Payment method. (Delivery Versus Payment is not supported yet.)

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/distributions":{"post":{"description":"Initiate fund distribution via Free Of Payment method. (Delivery Versus Payment is not supported yet.)","operationId":"createFundDistribution","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateDistributionDto"}}}},"responses":{"201":{"description":"Successfully created distribution of a fund","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DistributionDto"}}}}},"summary":"Distribute fund","tags":["Funds"]}}},"components":{"schemas":{"CreateDistributionDto":{"type":"object","properties":{"type":{"allOf":[{"$ref":"#/components/schemas/DistributionType"}]},"reference":{"type":"string","description":"Reference to a document or corporate action number, etc. - anything that could help relate distribution actions with other context"},"recordedAt":{"format":"date-time","type":"string","description":"Day when the action was documented to be executed. This is not necessarily the day when the asset is actually distributed to the investor."},"distributees":{"type":"array","description":"Array of accounts to distribute the asset to","items":{"oneOf":[{"$ref":"#/components/schemas/FopDistributee"},{"$ref":"#/components/schemas/DvpDistributee"}]}}},"required":["type","reference","recordedAt","distributees"]},"DistributionType":{"type":"string","enum":["fop","dvp"],"description":"**Type of distribution:**\n- `fop` - Free Of Payment: asset units are transferred for free\n- `dvp` - Delivery Versus Payment: asset units are transferred for an agreed currency amount"},"FopDistributee":{"type":"object","properties":{"accountAddress":{"type":"string","description":"Address of the account to distribute the asset to. Can be both one of this broker's investors or another broker's","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"amount":{"format":"int64","description":"Amount of asset units to send to the provided receiver.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["accountAddress","amount"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"DvpDistributee":{"type":"object","properties":{"accountAddress":{"type":"string","description":"Address of the account to distribute the asset to. Can be both one of this broker's investors or another broker's","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"amount":{"format":"int64","description":"Amount of asset units to send to the provided receiver.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"currencyAmount":{"format":"int64","description":"Price per asset unit to pay for in DVP type.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["accountAddress","amount","currencyAmount"]},"DistributionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Distribution UUID identifier, global in scope of TSS","format":"uuid"},"brokerId":{"type":"string","description":"Broker id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"type":{"allOf":[{"$ref":"#/components/schemas/DistributionType"}]},"supply":{"format":"int64","description":"Token supply to distribute.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Reference to a document or corporate action number, etc. - anything that could help relate distribution actions with other context"},"recordedAt":{"format":"date-time","type":"string","description":"Date and time of distribution registration"},"status":{"description":"**Status of distribution:**\n- `settling` - distribution created and is settling\n- `settled` - distribution settled","allOf":[{"$ref":"#/components/schemas/DistributionStatus"}]}},"required":["createdAt","updatedAt","id","brokerId","assetId","type","supply","reference","recordedAt","status"]},"DistributionStatus":{"type":"string","enum":["settling","settled"],"description":"**Status of distribution:**\n- `settling` - distribution created and is settling\n- `settled` - distribution settled"}}}}
```

## Get fund distribution FOP

> Get fund distribution's FOP by its id

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/distributions/{distributionId}/fops/{fopId}":{"get":{"description":"Get fund distribution's FOP by its id","operationId":"getFundDistributionFop","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"distributionId","required":true,"in":"path","description":"Distribution UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"fopId","required":true,"in":"path","description":"FOP UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Retrieved fund distribution FOP","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DistributionFopDto"}}}}},"summary":"Get fund distribution FOP","tags":["Funds"]}}},"components":{"schemas":{"DistributionFopDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Distribution FOP UUID identifier, unique in scope of this node","format":"uuid"},"distributionId":{"type":"string","description":"Distribution id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"accountAddress":{"type":"string","description":"Account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"amount":{"format":"int64","description":"Amount to receive.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"status":{"description":"Status","allOf":[{"$ref":"#/components/schemas/DistributionFopStatus"}]},"settledAt":{"format":"date-time","type":"string","description":"Date and time of distribution FOP"}},"required":["createdAt","updatedAt","id","distributionId","assetId","accountAddress","amount","status","settledAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"DistributionFopStatus":{"type":"string","enum":["upcoming","initiated","initiation-failed","completed","completion-failed"],"description":"**Update distribution FOP status**\n- `initiated` - (issuer agent) initiate `upcoming` or `initiation-failed` FOP distribution\n- `completed` - (investor agent) complete `initiated` FOP distribution"}}}}
```

## Retry failed distribution FOP

> Retry distribution for previously failed FOP.

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/distributions/{distributionId}/fops/{fopId}":{"patch":{"description":"Retry distribution for previously failed FOP.","operationId":"updateFundDistributionFop","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"distributionId","required":true,"in":"path","description":"Distribution UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"fopId","required":true,"in":"path","description":"FOP UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateDistributionFopDto"}}}},"responses":{"200":{"description":"Successfully retried distribution FOP.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DistributionFopDto"}}}}},"summary":"Retry failed distribution FOP","tags":["Funds"]}}},"components":{"schemas":{"UpdateDistributionFopDto":{"type":"object","properties":{"status":{"description":"**Update distribution FOP status**\n- `initiated` - (issuer agent) initiate `upcoming` or `initiation-failed` FOP distribution\n- `completed` - (investor agent) complete `initiated` FOP distribution","allOf":[{"$ref":"#/components/schemas/DistributionFopStatus"}]}},"required":["status"]},"DistributionFopStatus":{"type":"string","enum":["upcoming","initiated","initiation-failed","completed","completion-failed"],"description":"**Update distribution FOP status**\n- `initiated` - (issuer agent) initiate `upcoming` or `initiation-failed` FOP distribution\n- `completed` - (investor agent) complete `initiated` FOP distribution"},"DistributionFopDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Distribution FOP UUID identifier, unique in scope of this node","format":"uuid"},"distributionId":{"type":"string","description":"Distribution id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"accountAddress":{"type":"string","description":"Account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"amount":{"format":"int64","description":"Amount to receive.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"status":{"description":"Status","allOf":[{"$ref":"#/components/schemas/DistributionFopStatus"}]},"settledAt":{"format":"date-time","type":"string","description":"Date and time of distribution FOP"}},"required":["createdAt","updatedAt","id","distributionId","assetId","accountAddress","amount","status","settledAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get fund redemptions

> Retrieve a list of fund redemptions

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/redemptions":{"get":{"description":"Retrieve a list of fund redemptions","operationId":"getRedemptions","parameters":[{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterRedemptionDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"status":{"type":"string","enum":["asc","desc"]}},"required":["status"]},{"properties":{"totalPrice":{"type":"string","enum":["asc","desc"]}},"required":["totalPrice"]},{"properties":{"amount":{"type":"string","enum":["asc","desc"]}},"required":["amount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, status, totalPrice, amount"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/RedemptionDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund redemptions","tags":["Funds"]}}},"components":{"schemas":{"FilterRedemptionDto":{"type":"object","properties":{"fundId":{"description":"Filter redemptions by fund (asset) id","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"accountAddress":{"description":"Filter redemptions by investor wallet address","oneOf":[{"type":"array","items":{"description":"Account address","type":"string","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"minItems":1},{"type":"string","description":"Partial account address"}]},"investorBrokerId":{"description":"Filter redemptions by investor's broker id","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"issuerBrokerId":{"description":"Filter redemptions by issuer broker id","oneOf":[{"type":"array","items":{"description":"Unique UUIDs of an entity","format":"uuid","type":"string"},"minItems":1},{"description":"Unique UUID of an entity","format":"uuid","type":"string"}]},"cashLegType":{"description":"Filter redemptions by cash leg settlement method","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/SettlementMethod"},"minItems":1},{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Filter redemptions by status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/RedemptionStatus"},"minItems":1},{"$ref":"#/components/schemas/RedemptionStatus"}]}}},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"RedemptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund redemption status:**\n- `requested` - redemption requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; cash delivered to the investor"},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"RedemptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund redemption UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the redemption is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the redemption","allOf":[{"$ref":"#/components/schemas/RedemptionStatus"}]},"totalPrice":{"nullable":true,"description":"Settled cash proceeds, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Amount of fund units to redeem\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the redemption was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the redemption was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Create fund redemption

> Request a fund redemption on behalf of an investor (investor's broker agent)

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/redemptions":{"post":{"description":"Request a fund redemption on behalf of an investor (investor's broker agent)","operationId":"createRedemption","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateRedemptionDto"}}}},"responses":{"201":{"description":"Requested fund redemption","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RedemptionDto"}}}}},"summary":"Create fund redemption","tags":["Funds"]}}},"components":{"schemas":{"CreateRedemptionDto":{"type":"object","properties":{"fundId":{"type":"string","description":"Fund (asset) id to redeem from","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"amount":{"format":"int64","description":"Amount of fund units to redeem\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Optional reference stored against the redemption request","maxLength":256}},"required":["fundId","accountAddress","cashLegType","amount"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"RedemptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund redemption UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the redemption is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the redemption","allOf":[{"$ref":"#/components/schemas/RedemptionStatus"}]},"totalPrice":{"nullable":true,"description":"Settled cash proceeds, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Amount of fund units to redeem\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the redemption was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the redemption was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"RedemptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund redemption status:**\n- `requested` - redemption requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; cash delivered to the investor"}}}}
```

## Get fund redemption

> Get a fund redemption by its unique identifier

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/redemptions/{redemptionId}":{"get":{"description":"Get a fund redemption by its unique identifier","operationId":"getRedemption","parameters":[{"name":"redemptionId","required":true,"in":"path","description":"Fund redemption UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Full information about a single fund redemption","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RedemptionDto"}}}}},"summary":"Get fund redemption","tags":["Funds"]}}},"components":{"schemas":{"RedemptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund redemption UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the redemption is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the redemption","allOf":[{"$ref":"#/components/schemas/RedemptionStatus"}]},"totalPrice":{"nullable":true,"description":"Settled cash proceeds, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Amount of fund units to redeem\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the redemption was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the redemption was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"},"RedemptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund redemption status:**\n- `requested` - redemption requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; cash delivered to the investor"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Update fund redemption

> Cancel (investor agent), or reject / settle (issuer) a fund redemption

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/redemptions/{redemptionId}":{"patch":{"description":"Cancel (investor agent), or reject / settle (issuer) a fund redemption","operationId":"updateRedemption","parameters":[{"name":"redemptionId","required":true,"in":"path","description":"Fund redemption UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateRedemptionDto"}}}},"responses":{"200":{"description":"Updated fund redemption","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RedemptionDto"}}}}},"summary":"Update fund redemption","tags":["Funds"]}}},"components":{"schemas":{"UpdateRedemptionDto":{"type":"object","properties":{"status":{"description":"**Update fund redemption status:**\n- `settled` - (issuer agent) settle the redemption\n- `rejected` - (issuer agent) reject the redemption\n- `cancelled` - (investor agent) cancel the redemption","allOf":[{"$ref":"#/components/schemas/RedemptionStatus"}]},"totalPrice":{"format":"int64","description":"Settled cash proceeds, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Optional reference stored against this status change","maxLength":256}},"required":["status"]},"RedemptionStatus":{"type":"string","enum":["requested","cancelled","rejected","settled"],"description":"**Fund redemption status:**\n- `requested` - redemption requested by the investor's broker agent\n- `cancelled` - cancelled by the investor's broker agent\n- `rejected` - rejected by the issuer agent\n- `settled` - settled by the issuer agent; cash delivered to the investor"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"RedemptionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund redemption UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund (asset) id the redemption is for","format":"uuid"},"investorBrokerId":{"type":"string","description":"Broker id of the investor's agent","format":"uuid"},"issuerBrokerId":{"type":"string","description":"Broker id of the fund issuer","format":"uuid"},"accountAddress":{"type":"string","description":"Investor wallet address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"cashLegType":{"description":"Cash leg settlement method","allOf":[{"$ref":"#/components/schemas/SettlementMethod"}]},"status":{"description":"Lifecycle status of the redemption","allOf":[{"$ref":"#/components/schemas/RedemptionStatus"}]},"totalPrice":{"nullable":true,"description":"Settled cash proceeds, in the fund currency\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Amount of fund units to redeem\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestReference":{"type":"string","description":"Reference provided when the redemption was requested","maxLength":256,"nullable":true},"resolutionReference":{"type":"string","description":"Reference provided when the redemption was settled, rejected or cancelled","maxLength":256,"nullable":true}},"required":["createdAt","updatedAt","id","fundId","investorBrokerId","issuerBrokerId","accountAddress","cashLegType","status","totalPrice","amount","requestReference","resolutionReference"]},"SettlementMethod":{"type":"string","enum":["on-chain","off-chain"],"description":"**Cash leg settlement method:**\n- `on-chain` - cash leg settles on-chain\n- `off-chain` - cash leg settles off-chain"}}}}
```

## Get fund supply changes

> Retrieve a list of fund supply change requests available in the system

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/supply-changes":{"get":{"description":"Retrieve a list of fund supply change requests available in the system","operationId":"getFundSupplyChanges","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterSupplyChangeDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"amount":{"type":"string","enum":["asc","desc"]}},"required":["amount"]},{"properties":{"initiatedAt":{"type":"string","enum":["asc","desc"]}},"required":["initiatedAt"]},{"properties":{"validatedAt":{"type":"string","enum":["asc","desc"]}},"required":["validatedAt"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, amount, initiatedAt, validatedAt"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/SupplyChangeDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund supply changes","tags":["Funds"]}}},"components":{"schemas":{"FilterSupplyChangeDto":{"type":"object","properties":{"status":{"description":"Filter supply changes by status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/SupplyChangeStatus"},"minItems":1},{"$ref":"#/components/schemas/SupplyChangeStatus"}]},"action":{"description":"Filter supply changes by action","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/SupplyChangeAction"},"minItems":1},{"$ref":"#/components/schemas/SupplyChangeAction"}]}}},"SupplyChangeStatus":{"type":"string","enum":["approved","cancelled","completed","initiated","rejected"],"description":"Status of supply change request"},"SupplyChangeAction":{"type":"string","enum":["additionalTokenisation","initialTokenisation","issuance","redemption","supplyDecrease","supplyIncrease"],"description":"Action of supply change request"},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"SupplyChangeDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Supply Change UUID identifier, global in scope of TSS","format":"uuid"},"assetId":{"type":"string","description":"Unique UUID of the asset in scope of this gateway","format":"uuid"},"status":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeStatus"}]},"amount":{"format":"int64","description":"Amount change in supply requested (positive for issuance, negative for burn).\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"action":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeAction"}]},"initiationReference":{"type":"string","description":"Reference provided by the broker during supply change initiation"},"validationReference":{"type":"string","description":"Reference provided by the operator during supply change validation","nullable":true},"initiatedAt":{"format":"date-time","type":"string","description":"Date when the supply change was initiated"},"validatedAt":{"type":"string","description":"Date when the supply change was validated","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","assetId","status","amount","action","initiationReference","validationReference","initiatedAt","validatedAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Change fund's supply

> Initiate a supply change for an existing fund. Persists the request in \`initiated\` status; the on-chain mint and supply update only happen once the operator approves the request.

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/supply-changes":{"post":{"description":"Initiate a supply change for an existing fund. Persists the request in `initiated` status; the on-chain mint and supply update only happen once the operator approves the request.","operationId":"initiateFundSupplyChange","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFundSupplyChangeDto"}}}},"responses":{"201":{"description":"Successfully created a request to update fund supply","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupplyChangeDto"}}}}},"summary":"Change fund's supply","tags":["Funds"]}}},"components":{"schemas":{"CreateFundSupplyChangeDto":{"type":"object","properties":{"amount":{"format":"int64","description":"Signed change in fund supply. Positive for tokenisation/increase, negative for redemption/decrease.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"action":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeAction"}]},"initiationReference":{"type":"string","description":"Arbitrary reference provided by the broker to the fund supply change initiation."}},"required":["amount","action","initiationReference"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"SupplyChangeAction":{"type":"string","enum":["additionalTokenisation","initialTokenisation","issuance","redemption","supplyDecrease","supplyIncrease"],"description":"Action of supply change request"},"SupplyChangeDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Supply Change UUID identifier, global in scope of TSS","format":"uuid"},"assetId":{"type":"string","description":"Unique UUID of the asset in scope of this gateway","format":"uuid"},"status":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeStatus"}]},"amount":{"format":"int64","description":"Amount change in supply requested (positive for issuance, negative for burn).\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"action":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeAction"}]},"initiationReference":{"type":"string","description":"Reference provided by the broker during supply change initiation"},"validationReference":{"type":"string","description":"Reference provided by the operator during supply change validation","nullable":true},"initiatedAt":{"format":"date-time","type":"string","description":"Date when the supply change was initiated"},"validatedAt":{"type":"string","description":"Date when the supply change was validated","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","assetId","status","amount","action","initiationReference","validationReference","initiatedAt","validatedAt"]},"SupplyChangeStatus":{"type":"string","enum":["approved","cancelled","completed","initiated","rejected"],"description":"Status of supply change request"}}}}
```

## Cancel fund's supply

> Cancel an existing fund supply change request that is waiting for operator approval

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/supply-changes/{supplyChangeId}":{"patch":{"description":"Cancel an existing fund supply change request that is waiting for operator approval","operationId":"cancelFundSupplyChange","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"supplyChangeId","required":true,"in":"path","description":"Supply Change UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateFundSupplyChangeDto"}}}},"responses":{"200":{"description":"Successfully cancelled fund supply change","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupplyChangeDto"}}}}},"summary":"Cancel fund's supply","tags":["Funds"]}}},"components":{"schemas":{"UpdateFundSupplyChangeDto":{"type":"object","properties":{"status":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeStatus"}],"description":"**Update fund supply change status:**\n- `cancelled` - cancel fund supply change","default":"cancelled"},"validationReference":{"type":"string","description":"Arbitrary reference provided by the broker to the fund supply change cancellation"}},"required":["status","validationReference"]},"SupplyChangeStatus":{"type":"string","enum":["approved","cancelled","completed","initiated","rejected"],"description":"Status of supply change request"},"SupplyChangeDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Supply Change UUID identifier, global in scope of TSS","format":"uuid"},"assetId":{"type":"string","description":"Unique UUID of the asset in scope of this gateway","format":"uuid"},"status":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeStatus"}]},"amount":{"format":"int64","description":"Amount change in supply requested (positive for issuance, negative for burn).\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"action":{"allOf":[{"$ref":"#/components/schemas/SupplyChangeAction"}]},"initiationReference":{"type":"string","description":"Reference provided by the broker during supply change initiation"},"validationReference":{"type":"string","description":"Reference provided by the operator during supply change validation","nullable":true},"initiatedAt":{"format":"date-time","type":"string","description":"Date when the supply change was initiated"},"validatedAt":{"type":"string","description":"Date when the supply change was validated","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","assetId","status","amount","action","initiationReference","validationReference","initiatedAt","validatedAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"SupplyChangeAction":{"type":"string","enum":["additionalTokenisation","initialTokenisation","issuance","redemption","supplyDecrease","supplyIncrease"],"description":"Action of supply change request"}}}}
```

## Get fund's valuations

> Get paginated history of a fund's published valuations, including deleted ones unless filtered by deletedAt

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/valuations":{"get":{"description":"Get paginated history of a fund's published valuations, including deleted ones unless filtered by deletedAt","operationId":"getValuations","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterValuationDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"navDate":{"type":"string","enum":["asc","desc"]}},"required":["navDate"]},{"properties":{"recordedAt":{"type":"string","enum":["asc","desc"]}},"required":["recordedAt"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, navDate, recordedAt"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/ValuationDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund's valuations","tags":["Funds"]}}},"components":{"schemas":{"FilterValuationDto":{"type":"object","properties":{"navDate":{"format":"date-time","description":"Filter by calendar date or date range","oneOf":[{"type":"array","items":{"type":"string","format":"date"},"minItems":1,"maxItems":2},{"type":"string","format":"date"}]},"deletedAt":{"format":"date-time","description":"Filter by deletion date or date range; pass null to return only active valuations","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}],"nullable":true}}},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"ValuationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Valuation UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"navDate":{"type":"string","description":"NAV date the record applies to","format":"date"},"navPrice":{"format":"int64","description":"NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"marketNavPrice":{"nullable":true,"description":"Mark-to-market NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"wam":{"type":"number","description":"Weighted average maturity in days","nullable":true},"wal":{"type":"number","description":"Weighted average life in days","nullable":true},"oneDayYield":{"nullable":true,"description":"Annualised 1-day yield, may be negative\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"totalNetAsset":{"nullable":true,"description":"Total fund AUM\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"availableNetAsset":{"nullable":true,"description":"Fund net assets available (e.g. for redemption)\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Arbitrary reference provided by the broker","nullable":true},"recordedAt":{"format":"date-time","type":"string","description":"System-assigned timestamp recorded on the TSS"},"deletedAt":{"type":"string","description":"Deletion timestamp; null while the valuation is active","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","fundId","navDate","navPrice","marketNavPrice","wam","wal","oneDayYield","totalNetAsset","availableNetAsset","reference","recordedAt","deletedAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."}}}}
```

## Create fund's valuation

> Create a daily valuation (NAV and regulatory metrics) for a fund

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/valuations":{"post":{"description":"Create a daily valuation (NAV and regulatory metrics) for a fund","operationId":"createValuation","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateValuationDto"}}}},"responses":{"201":{"description":"Successfully created fund's valuation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValuationDto"}}}}},"summary":"Create fund's valuation","tags":["Funds"]}}},"components":{"schemas":{"CreateValuationDto":{"type":"object","properties":{"navDate":{"format":"date","type":"string","description":"NAV date the record applies to"},"navPrice":{"format":"int64","description":"NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"marketNavPrice":{"format":"int64","description":"Mark-to-market NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"wam":{"type":"number","description":"Weighted average maturity in days"},"wal":{"type":"number","description":"Weighted average life in days"},"oneDayYield":{"format":"int64","description":"Annualised 1-day yield, may be negative\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"totalNetAsset":{"format":"int64","description":"Total fund AUM\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"availableNetAsset":{"format":"int64","description":"Fund net assets available (e.g. for redemption)\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Arbitrary reference provided by the broker"}},"required":["navDate","navPrice"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."},"ValuationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Valuation UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"navDate":{"type":"string","description":"NAV date the record applies to","format":"date"},"navPrice":{"format":"int64","description":"NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"marketNavPrice":{"nullable":true,"description":"Mark-to-market NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"wam":{"type":"number","description":"Weighted average maturity in days","nullable":true},"wal":{"type":"number","description":"Weighted average life in days","nullable":true},"oneDayYield":{"nullable":true,"description":"Annualised 1-day yield, may be negative\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"totalNetAsset":{"nullable":true,"description":"Total fund AUM\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"availableNetAsset":{"nullable":true,"description":"Fund net assets available (e.g. for redemption)\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Arbitrary reference provided by the broker","nullable":true},"recordedAt":{"format":"date-time","type":"string","description":"System-assigned timestamp recorded on the TSS"},"deletedAt":{"type":"string","description":"Deletion timestamp; null while the valuation is active","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","fundId","navDate","navPrice","marketNavPrice","wam","wal","oneDayYield","totalNetAsset","availableNetAsset","reference","recordedAt","deletedAt"]}}}}
```

## Get fund's valuation by date

> Get a fund's valuation for a specific NAV date; returns the active valuation or, if all are deleted, the most recently deleted one

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/valuations/{date}":{"get":{"description":"Get a fund's valuation for a specific NAV date; returns the active valuation or, if all are deleted, the most recently deleted one","operationId":"getValuationByDate","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"date","required":true,"in":"path","description":"Date in YYYY-MM-DD format","schema":{"format":"date","type":"string"}}],"responses":{"200":{"description":"Successfully received fund's valuation for the given date","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValuationDto"}}}}},"summary":"Get fund's valuation by date","tags":["Funds"]}}},"components":{"schemas":{"ValuationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Valuation UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"navDate":{"type":"string","description":"NAV date the record applies to","format":"date"},"navPrice":{"format":"int64","description":"NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"marketNavPrice":{"nullable":true,"description":"Mark-to-market NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"wam":{"type":"number","description":"Weighted average maturity in days","nullable":true},"wal":{"type":"number","description":"Weighted average life in days","nullable":true},"oneDayYield":{"nullable":true,"description":"Annualised 1-day yield, may be negative\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"totalNetAsset":{"nullable":true,"description":"Total fund AUM\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"availableNetAsset":{"nullable":true,"description":"Fund net assets available (e.g. for redemption)\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Arbitrary reference provided by the broker","nullable":true},"recordedAt":{"format":"date-time","type":"string","description":"System-assigned timestamp recorded on the TSS"},"deletedAt":{"type":"string","description":"Deletion timestamp; null while the valuation is active","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","fundId","navDate","navPrice","marketNavPrice","wam","wal","oneDayYield","totalNetAsset","availableNetAsset","reference","recordedAt","deletedAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."}}}}
```

## Delete fund's valuation by date

> Delete existing daily valuation (NAV and regulatory metrics) for a fund by its NAV date

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/valuations/{date}":{"delete":{"description":"Delete existing daily valuation (NAV and regulatory metrics) for a fund by its NAV date","operationId":"deleteValuation","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"date","required":true,"in":"path","description":"Date in YYYY-MM-DD format","schema":{"format":"date","type":"string"}}],"responses":{"200":{"description":"Successfully deleted fund's valuation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ValuationDto"}}}}},"summary":"Delete fund's valuation by date","tags":["Funds"]}}},"components":{"schemas":{"ValuationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Valuation UUID identifier, global in scope of TSS","format":"uuid"},"fundId":{"type":"string","description":"Fund id","format":"uuid"},"navDate":{"type":"string","description":"NAV date the record applies to","format":"date"},"navPrice":{"format":"int64","description":"NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"marketNavPrice":{"nullable":true,"description":"Mark-to-market NAV price per unit\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"wam":{"type":"number","description":"Weighted average maturity in days","nullable":true},"wal":{"type":"number","description":"Weighted average life in days","nullable":true},"oneDayYield":{"nullable":true,"description":"Annualised 1-day yield, may be negative\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"totalNetAsset":{"nullable":true,"description":"Total fund AUM\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"availableNetAsset":{"nullable":true,"description":"Fund net assets available (e.g. for redemption)\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Arbitrary reference provided by the broker","nullable":true},"recordedAt":{"format":"date-time","type":"string","description":"System-assigned timestamp recorded on the TSS"},"deletedAt":{"type":"string","description":"Deletion timestamp; null while the valuation is active","format":"date-time","nullable":true}},"required":["createdAt","updatedAt","id","fundId","navDate","navPrice","marketNavPrice","wam","wal","oneDayYield","totalNetAsset","availableNetAsset","reference","recordedAt","deletedAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."}}}}
```

## Get fund distribution

> Get fund's distribution by its id

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/distributions/{distributionId}":{"get":{"description":"Get fund's distribution by its id","operationId":"getFundDistribution","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"distributionId","required":true,"in":"path","description":"Distribution UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Retrieved fund distribution","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DistributionDto"}}}}},"summary":"Get fund distribution","tags":["Funds"]}}},"components":{"schemas":{"DistributionDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Distribution UUID identifier, global in scope of TSS","format":"uuid"},"brokerId":{"type":"string","description":"Broker id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"type":{"allOf":[{"$ref":"#/components/schemas/DistributionType"}]},"supply":{"format":"int64","description":"Token supply to distribute.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"reference":{"type":"string","description":"Reference to a document or corporate action number, etc. - anything that could help relate distribution actions with other context"},"recordedAt":{"format":"date-time","type":"string","description":"Date and time of distribution registration"},"status":{"description":"**Status of distribution:**\n- `settling` - distribution created and is settling\n- `settled` - distribution settled","allOf":[{"$ref":"#/components/schemas/DistributionStatus"}]}},"required":["createdAt","updatedAt","id","brokerId","assetId","type","supply","reference","recordedAt","status"]},"DistributionType":{"type":"string","enum":["fop","dvp"],"description":"**Type of distribution:**\n- `fop` - Free Of Payment: asset units are transferred for free\n- `dvp` - Delivery Versus Payment: asset units are transferred for an agreed currency amount"},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"DistributionStatus":{"type":"string","enum":["settling","settled"],"description":"**Status of distribution:**\n- `settling` - distribution created and is settling\n- `settled` - distribution settled"}}}}
```

## Get fund distribution FOPs

> Get a paginated list of FOP sub-entries for a specific fund distribution

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/distributions/{distributionId}/fops":{"get":{"description":"Get a paginated list of FOP sub-entries for a specific fund distribution","operationId":"getFundDistributionFops","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"distributionId","required":true,"in":"path","description":"Distribution UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}}],"responses":{"200":{"description":"Successfully retrieved a list of fund distribution FOPs.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/DistributionFopDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund distribution FOPs","tags":["Funds"]}}},"components":{"schemas":{"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"DistributionFopDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Distribution FOP UUID identifier, unique in scope of this node","format":"uuid"},"distributionId":{"type":"string","description":"Distribution id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"accountAddress":{"type":"string","description":"Account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"amount":{"format":"int64","description":"Amount to receive.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"status":{"description":"Status","allOf":[{"$ref":"#/components/schemas/DistributionFopStatus"}]},"settledAt":{"format":"date-time","type":"string","description":"Date and time of distribution FOP"}},"required":["createdAt","updatedAt","id","distributionId","assetId","accountAddress","amount","status","settledAt"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"DistributionFopStatus":{"type":"string","enum":["upcoming","initiated","initiation-failed","completed","completion-failed"],"description":"**Update distribution FOP status**\n- `initiated` - (issuer agent) initiate `upcoming` or `initiation-failed` FOP distribution\n- `completed` - (investor agent) complete `initiated` FOP distribution"}}}}
```

## Get fund accounts

> Retrieve a list of accounts with balance for specified fund.

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/accounts":{"get":{"description":"Retrieve a list of accounts with balance for specified fund.","operationId":"getFundAccounts","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"query","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/QueryFundAccountDto"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterFundAccountDto"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"amount":{"type":"string","enum":["asc","desc"]}},"required":["amount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: amount"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/FundAccountBalanceDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund accounts","tags":["Funds"]}}},"components":{"schemas":{"QueryFundAccountDto":{"type":"object","properties":{"heldAt":{"format":"date-time","type":"string","description":"Get fund accounts by the end day they were held. (skip the property for current holdings)"}}},"FilterFundAccountDto":{"type":"object","properties":{"accountAddress":{"description":"Filter accounts by account address","oneOf":[{"type":"array","items":{"description":"Account address","type":"string","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"minItems":1},{"type":"string","description":"Partial account address"}]},"amount":{"description":"Filter accounts by amount from number or between two numbers","oneOf":[{"type":"array","items":{"type":"integer","format":"int64"},"minItems":1,"maxItems":2},{"type":"integer","format":"int64"}]}}},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"FundAccountBalanceDto":{"type":"object","properties":{"accountAddress":{"type":"string","description":"Account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"amount":{"format":"int64","description":"Fund amount held by the account.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"account":{"description":"Account details","nullable":true,"type":"object","allOf":[{"$ref":"#/components/schemas/AccountDto"}]}},"required":["accountAddress","amount","account"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"AccountDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"nodeId":{"type":"string","description":"Unique UUID of the node that manages this account","format":"uuid"},"address":{"type":"string","description":"Account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"type":{"description":"Type of account","allOf":[{"$ref":"#/components/schemas/AccountType"}]},"institutionSectorCode":{"description":"ESA 2010 / ECB institutional sector classification code used for statistical and regulatory reporting. This describes sector, not legal form.","nullable":true,"allOf":[{"$ref":"#/components/schemas/InstitutionSectorCode"}]},"walletType":{"description":"Indicates that funds are owned by either broker or client","nullable":true,"allOf":[{"$ref":"#/components/schemas/WalletType"}]},"status":{"description":"**Status of the account:**\n- `active` - account is allowed to interact with the system\n- `frozen` - no assets can be moved around\n- `deleted` - no further actions can be done","allOf":[{"$ref":"#/components/schemas/AccountStatus"}]},"openedAt":{"format":"date-time","type":"string","description":"Opened date"}},"required":["createdAt","updatedAt","nodeId","address","type","institutionSectorCode","walletType","status","openedAt"]},"AccountType":{"type":"string","enum":["broker","emi","funding","investor","issuer","issuing","node","operational","operator"],"description":"Type of account"},"InstitutionSectorCode":{"type":"string","enum":["S.11","S.121","S.122","S.123","S.124","S.125","S.126","S.127","S.128","S.129","S.13","S.1311","S.1312","S.1313","S.1314","S.14","S.15"],"description":"ESA 2010 / ECB institutional sector classification code used for statistical and regulatory reporting. This describes sector, not legal form."},"WalletType":{"type":"string","enum":["broker-own","client-individual"],"description":"Indicates that funds are owned by either broker or client"},"AccountStatus":{"type":"string","enum":["active","frozen","deleted"],"description":"**Status of the account:**\n- `active` - account is allowed to interact with the system\n- `frozen` - no assets can be moved around\n- `deleted` - no further actions can be done"}}}}
```

## Get fund's interests allocations

> Get a paginated list of a fund's interest allocations across all interests, filterable by account address and interest date

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/interests/allocations":{"get":{"description":"Get a paginated list of a fund's interest allocations across all interests, filterable by account address and interest date","operationId":"getInterestsAllocations","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterInterestAllocationDto"}},{"name":"mode","required":false,"in":"query","description":"Strategy applied when filtering/searching on multiple fields","schema":{"$ref":"#/components/schemas/FilterMode"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"fundAmount":{"type":"string","enum":["asc","desc"]}},"required":["fundAmount"]},{"properties":{"payoutAmount":{"type":"string","enum":["asc","desc"]}},"required":["payoutAmount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, fundAmount, payoutAmount"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/InterestAllocationDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund's interests allocations","tags":["Funds"]}}},"components":{"schemas":{"FilterInterestAllocationDto":{"type":"object","properties":{"accountAddress":{"description":"Filter by partial account address or list of account addresses","oneOf":[{"type":"array","items":{"description":"Account address","type":"string","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"minItems":1},{"type":"string","description":"Partial account address"}]},"date":{"format":"date-time","description":"Filter by calendar date or date range","oneOf":[{"type":"array","items":{"type":"string","format":"date"},"minItems":1,"maxItems":2},{"type":"string","format":"date"}]}}},"FilterMode":{"type":"string","enum":["and","or"]},"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"InterestAllocationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Allocation UUID identifier, global in scope of TSS","format":"uuid"},"interestId":{"type":"string","description":"Id of the interest this allocation belongs to","format":"uuid"},"accountAddress":{"type":"string","description":"Account address of the investor holding fund units at the interest record timestamp"},"fundAmount":{"format":"int64","description":"Fund amount held by the account address at the interest record timestamp\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"payoutAmount":{"format":"int64","description":"Part of the total interest payment allocated to the account address\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["createdAt","updatedAt","id","interestId","accountAddress","fundAmount","payoutAmount"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get fund's interest allocations

> Get a paginated list of investor-level allocations for a fund's interest

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/interests/{interestId}/allocations":{"get":{"description":"Get a paginated list of investor-level allocations for a fund's interest","operationId":"getInterestAllocations","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"interestId","required":true,"in":"path","description":"Interest UUID","schema":{"format":"uuid","type":"string"}},{"name":"pagination","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/PaginationRequestDto"}},{"name":"order","required":false,"in":"query","content":{"application/json":{"schema":{"type":"array","uniqueItems":true,"items":{"type":"object","oneOf":[{"properties":{"createdAt":{"type":"string","enum":["asc","desc"]}},"required":["createdAt"]},{"properties":{"fundAmount":{"type":"string","enum":["asc","desc"]}},"required":["fundAmount"]},{"properties":{"payoutAmount":{"type":"string","enum":["asc","desc"]}},"required":["payoutAmount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, fundAmount, payoutAmount"}],"responses":{"200":{"description":"Successfully retrieved a list of items.","content":{"application/json":{"schema":{"type":"object","properties":{"pagination":{"$ref":"#/components/schemas/PaginationResponseDto"},"items":{"type":"array","items":{"$ref":"#/components/schemas/InterestAllocationDto"}}},"required":["pagination","items"]}}}}},"summary":"Get fund's interest allocations","tags":["Funds"]}}},"components":{"schemas":{"PaginationRequestDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1}}},"PaginationResponseDto":{"type":"object","properties":{"size":{"type":"number","minimum":1,"default":10},"page":{"type":"number","minimum":1,"default":1},"totalItems":{"type":"number","description":"Total items count"},"totalPages":{"type":"number","description":"Total pages count"}},"required":["totalItems","totalPages"]},"InterestAllocationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Allocation UUID identifier, global in scope of TSS","format":"uuid"},"interestId":{"type":"string","description":"Id of the interest this allocation belongs to","format":"uuid"},"accountAddress":{"type":"string","description":"Account address of the investor holding fund units at the interest record timestamp"},"fundAmount":{"format":"int64","description":"Fund amount held by the account address at the interest record timestamp\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"payoutAmount":{"format":"int64","description":"Part of the total interest payment allocated to the account address\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["createdAt","updatedAt","id","interestId","accountAddress","fundAmount","payoutAmount"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get fund's interest allocation

> Get a fund interest's allocation by id

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}/interests/{interestId}/allocations/{allocationId}":{"get":{"description":"Get a fund interest's allocation by id","operationId":"getInterestAllocation","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"interestId","required":true,"in":"path","description":"Interest UUID","schema":{"format":"uuid","type":"string"}},{"name":"allocationId","required":true,"in":"path","description":"Interest allocation UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Successfully received fund interest's allocation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterestAllocationDto"}}}}},"summary":"Get fund's interest allocation","tags":["Funds"]}}},"components":{"schemas":{"InterestAllocationDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Allocation UUID identifier, global in scope of TSS","format":"uuid"},"interestId":{"type":"string","description":"Id of the interest this allocation belongs to","format":"uuid"},"accountAddress":{"type":"string","description":"Account address of the investor holding fund units at the interest record timestamp"},"fundAmount":{"format":"int64","description":"Fund amount held by the account address at the interest record timestamp\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"payoutAmount":{"format":"int64","description":"Part of the total interest payment allocated to the account address\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]}},"required":["createdAt","updatedAt","id","interestId","accountAddress","fundAmount","payoutAmount"]},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."}}}}
```

## Get fund

> Retrieve full information about a single fund, specified by fund id in the path

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/funds/{fundId}":{"get":{"description":"Retrieve full information about a single fund, specified by fund id in the path","operationId":"getFund","parameters":[{"name":"fundId","required":true,"in":"path","description":"Fund UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Successfully received a fund","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FundDto"}}}}},"summary":"Get fund","tags":["Funds"]}}},"components":{"schemas":{"FundDto":{"type":"object","properties":{"createdAt":{"format":"date-time","type":"string","description":"Created date"},"updatedAt":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Fund UUID identifier, global in scope of TSS","format":"uuid"},"issuerId":{"type":"string","description":"Unique UUID of the issuer in scope of this gateway","format":"uuid"},"currencyId":{"type":"string","description":"Unique UUID of the settlement currency in scope of this gateway","format":"uuid"},"brokerId":{"type":"string","description":"Unique UUID of the broker that manages this fund","format":"uuid"},"origin":{"allOf":[{"$ref":"#/components/schemas/InstrumentOrigin"}]},"vehicleType":{"allOf":[{"$ref":"#/components/schemas/VehicleType"}]},"incomeUse":{"allOf":[{"$ref":"#/components/schemas/IncomeUse"}]},"managementCompanyLei":{"type":"string","description":"LEI of the fund management company","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"mmfFlag":{"type":"boolean","description":"Flag indicating this fund is a Money Market Fund unit"},"mmfVariant":{"allOf":[{"$ref":"#/components/schemas/MmfVariant"}],"nullable":true},"custodian":{"type":"string","description":"Custodian where asset is registered outside","nullable":true},"custodianLeiCode":{"type":"string","description":"LEI code of original depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"issuerCsdLeiCode":{"type":"string","description":"LEI code of central securities depository where the issuer has registered the securities","pattern":"^[A-Z0-9]{4}00[A-Z0-9]{14}$","format":"lei-code","minLength":20,"maxLength":20,"nullable":true},"underlyingInstrumentCode":{"type":"string","description":"Underlying instrument code","nullable":true},"fisn":{"type":"string","description":"Financial Instrument Short Name (FISN) as per ISO 18774:2024","format":"iso-18774-fisn","maxLength":35,"nullable":true},"countryCode":{"type":"string","description":"Country code of where the security is issued"},"status":{"description":"Lifecycle status of the fund","allOf":[{"$ref":"#/components/schemas/FundStatus"}]},"issuingAccountAddress":{"type":"string","description":"Issuing account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"operationalAccountAddress":{"type":"string","description":"Operational account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"isin":{"type":"string","description":"International Securities Identification Number","nullable":true},"cfi":{"type":"string","description":"Classification of Financial Instruments (CFI) code as per ISO 10962","format":"iso-10962-cfi","pattern":"^[A-Z]{6}$","nullable":true},"figi":{"type":"string","description":"Financial Instrument Global Identifier","nullable":true},"ticker":{"type":"string","description":"Stock ticker symbol","nullable":true},"dti":{"type":"string","description":"Digital Token Identifier (DTI) as per ISO 24165","format":"iso-24165-dti","pattern":"^[B-DF-HJ-NP-TV-XZ1-9][B-DF-HJ-NP-TV-XZ0-9]{8}$","nullable":true},"ecbClassification":{"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists.","allOf":[{"$ref":"#/components/schemas/PAC2"}]},"bolClassification":{"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code.","allOf":[{"$ref":"#/components/schemas/BoLSecurityTypeCode"}]},"settlementUnitMultiple":{"type":"string","description":"Settlement unit multiple expressed in maximum decimal points amount allowed. Ex: 0,01 means 2"},"minimumSettlementUnit":{"type":"string","description":"Minimum settlement unit expressed in maximum decimal points amount allowed. Ex: 0,01 means 2"},"prospectusRegistered":{"type":"boolean","description":"Indicator, if the fund prospectus registered"},"isSubscribable":{"type":"boolean","description":"Whether the fund currently accepts subscriptions"},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the fund."},"name":{"type":"string","description":"Fund name"},"specUrl":{"type":"string","description":"IPFS link"},"exponent":{"type":"number","description":"**Exponent** - number of decimal places (scale) used for this asset or currency.\n- Decimal floating value: `stored_value / 10^exponent`.\n- Values are stored in the smallest accountable/divisible unit (e.g., cents when exponent = 2).\n- Examples: `2000` with exponent `2` => `20`; `2345` with exponent `3` => `2.345`; `2345` with exponent `0` => `2345`.","minimum":0,"maximum":10},"supply":{"format":"int64","description":"Current fund supply.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settlementType":{"allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"distributedAmount":{"format":"int64","description":"Amount of fund units that have been proposed to distribute to investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"cutOffTime":{"type":"string","description":"Cut-off time — deadline to receive subscriptions","pattern":"^([0-1][0-9]|2[0-3]):[0-5][0-9]$","format":"time","minLength":5,"maxLength":5},"freezeMinutesBeforeCutOff":{"type":"number","description":"Freeze window before the cut-off, in minutes"},"shareClassName":{"type":"string","description":"Share class of the fund","nullable":true},"managementFee":{"nullable":true,"description":"Annual management fee, expressed as a percentage (0–100).\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"minimumInvestment":{"type":"string","description":"Minimum investment required to subscribe to the fund","nullable":true},"payoutType":{"allOf":[{"$ref":"#/components/schemas/PayoutType"}],"nullable":true}},"required":["createdAt","updatedAt","id","issuerId","currencyId","brokerId","origin","vehicleType","incomeUse","managementCompanyLei","mmfFlag","mmfVariant","custodian","custodianLeiCode","issuerCsdLeiCode","underlyingInstrumentCode","fisn","countryCode","status","issuingAccountAddress","operationalAccountAddress","isin","cfi","figi","ticker","dti","ecbClassification","bolClassification","settlementUnitMultiple","minimumSettlementUnit","prospectusRegistered","isSubscribable","issuedAt","name","specUrl","exponent","supply","settlementType","distributedAmount","cutOffTime","freezeMinutesBeforeCutOff","shareClassName","managementFee","minimumInvestment","payoutType"]},"InstrumentOrigin":{"type":"string","enum":["native","tokenized"],"description":"**Origin of the fund:**\n- `native` - fund originally issued on Axiology TSS\n- `tokenized` - immobilised external fund tokenised on Axiology TSS"},"VehicleType":{"type":"string","enum":["UCITS sub-fund","AIF","Securitisation compartment","Standalone fund"],"description":"**Vehicle type of the fund:**\n- `UCITS sub-fund` - sub-fund of a UCITS umbrella\n- `AIF` - alternative investment fund\n- `Securitisation compartment` - compartment of a securitisation vehicle\n- `Standalone fund` - standalone fund without an umbrella structure"},"IncomeUse":{"type":"string","enum":["accumulating","distributing"],"description":"**Income use policy of the fund:**\n- `accumulating` - income is reinvested into the fund's NAV\n- `distributing` - income is paid out to unit-holders"},"MmfVariant":{"type":"string","enum":["CNAV","LVNAV","VNAV","Short-Term VNAV"],"description":"**Money Market Fund variant:**\n- `CNAV` - Constant Net Asset Value\n- `LVNAV` - Low-Volatility Net Asset Value\n- `VNAV` - Variable Net Asset Value\n- `Short-Term VNAV` - Short-Term Variable Net Asset Value"},"FundStatus":{"type":"string","enum":["draft","live","locked","collecting","collected","closed"],"description":"Lifecycle status of the fund"},"PAC2":{"type":"string","enum":["C","D","D.1","D.11","D.12","D.121","D.122","D.129","D.13","D.131","D.139","D.14","D.141","D.149","D.15","D.16","D.161","D.162","D.163","D.164","D.165","D.166","D.167","D.169","D.17","D.171","D.172","D.18","D.181","D.1811","D.1812","D.1813","D.1819","D.182","D.1821","D.1822","D.1823","D.1829","D.19","D.2","D.21","D.22","D.23","D.231","D.232","D.239","D.24","D.29","D.3","D.31","D.311","D.32","D.33","D.34","D.39","D.9","E","E.1","E.2","E.21","E.22","E.23","E.24","E.29","E.3","E.31","E.32","E.39","E.4","E.41","E.42","E.43","E.49","E.9","F","F.1","F.2","F.9","I","L","M","O","P","R","U"],"description":"**ECB Primary Asset Classification (PAC2)** code used in ECB SHS/SHSG reporting codelists."},"BoLSecurityTypeCode":{"type":"string","enum":["100","101","102","103","104","106","107","108","305","400","900","N/A"],"description":"**Bank of Lithuania VPT security type code** used in securities holdings reporting forms `VPT-01` and `VPT-02`.\n- The `VPT-01` form points to Annex II of ECB Regulation (EU) No `1011/2012` for classification guidance.\n- This schema stores the numeric code values used by the system for Bank of Lithuania reporting.\n- `N/A` is an internal system value and not an official Bank of Lithuania reporting code."},"ExponentScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by the asset's exponent: `encoded = real × 10^exponent`. E.g. for a bond denominated in EUR (exponent=2), a coupon payment of `123.45` is encoded as `12345`, and a nominal value of `1000.00` is encoded as `100000`."},"SettlementType":{"type":"string","enum":["external","internal"],"description":"**Corporate actions settlement type:**\n- `internal` - settled within Axiology TSS using EMTs\n- `external` - settled via bank or other payment systems outside Axiology TSS"},"ScaledDecimal":{"type":"integer","format":"int64","description":"Decimal value encoded on the wire as an integer scaled by [DefaultScale](#/components/schemas/DefaultScale): `encoded = real × 10^6`. E.g. `11.0` is encoded as 11000000, `0.5` as 500000."},"PayoutType":{"type":"string","enum":["currency","units"],"description":"**How the fund pays out income:**\n- `currency` - paid out in the settlement currency\n- `units` - reinvested as fund units"}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://axiology.gitbook.io/axiology-docs/rest-api/funds.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
