> 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/bonds.md).

# Bonds

## GET /bonds

> Retrieve a list of bonds available in the system

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds":{"get":{"description":"Retrieve a list of bonds available in the system","operationId":"getBonds","parameters":[{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterBondDto"}},{"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":{"seniority":{"type":"string","enum":["asc","desc"]}},"required":["seniority"]},{"properties":{"status":{"type":"string","enum":["asc","desc"]}},"required":["status"]},{"properties":{"nominalValue":{"type":"string","enum":["asc","desc"]}},"required":["nominalValue"]},{"properties":{"totalNominalValue":{"type":"string","enum":["asc","desc"]}},"required":["totalNominalValue"]},{"properties":{"interestRate":{"type":"string","enum":["asc","desc"]}},"required":["interestRate"]},{"properties":{"secured":{"type":"string","enum":["asc","desc"]}},"required":["secured"]},{"properties":{"issuedAt":{"type":"string","enum":["asc","desc"]}},"required":["issuedAt"]},{"properties":{"issuanceRecordAt":{"type":"string","enum":["asc","desc"]}},"required":["issuanceRecordAt"]},{"properties":{"settleAt":{"type":"string","enum":["asc","desc"]}},"required":["settleAt"]},{"properties":{"maturityRecordAt":{"type":"string","enum":["asc","desc"]}},"required":["maturityRecordAt"]},{"properties":{"matureAt":{"type":"string","enum":["asc","desc"]}},"required":["matureAt"]},{"properties":{"distributedAmount":{"type":"string","enum":["asc","desc"]}},"required":["distributedAmount"]},{"properties":{"requestedAmount":{"type":"string","enum":["asc","desc"]}},"required":["requestedAmount"]},{"properties":{"collectedAmount":{"type":"string","enum":["asc","desc"]}},"required":["collectedAmount"]},{"properties":{"supply":{"type":"string","enum":["asc","desc"]}},"required":["supply"]},{"properties":{"totalSupply":{"type":"string","enum":["asc","desc"]}},"required":["totalSupply"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, seniority, status, nominalValue, totalNominalValue, interestRate, secured, issuedAt, issuanceRecordAt, settleAt, maturityRecordAt, matureAt, distributedAmount, requestedAmount, collectedAmount, supply, totalSupply"}],"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/BondDto"}}},"required":["pagination","items"]}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"FilterBondDto":{"type":"object","properties":{"id":{"description":"Filter bonds 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 bonds 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 bonds 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 bonds 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 bonds 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 bonds by name"},"isin":{"type":"string","description":"Filter bonds by ISIN"},"ticker":{"type":"string","description":"Filter bonds by ticker"},"dti":{"type":"string","description":"Filter bonds by DTI"},"origin":{"description":"Filter bonds by origin","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/BondOrigin"},"minItems":1},{"$ref":"#/components/schemas/BondOrigin"}]},"custodian":{"type":"string","description":"Filter bonds 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 bonds by instrument code"},"fisn":{"type":"string","description":"Filter bonds by FISN","format":"iso-18774-fisn","maxLength":35},"countryCode":{"type":"string","description":"Filter bonds by country code where the security is issued"},"seniority":{"description":"Filter bonds by seniority","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/BondSeniority"},"minItems":1},{"$ref":"#/components/schemas/BondSeniority"}]},"initialPlacement":{"description":"Filter bonds by initial placement","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/InitialPlacementType"},"minItems":1},{"$ref":"#/components/schemas/InitialPlacementType"}]},"status":{"description":"Filter bonds by status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/BondStatus"},"minItems":1},{"$ref":"#/components/schemas/BondStatus"}]},"issuedAt":{"format":"date-time","description":"Filter bonds by issue date","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]},"settlementType":{"description":"Filter bonds by settlement type","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/SettlementType"},"minItems":1},{"$ref":"#/components/schemas/SettlementType"}]}}},"BondOrigin":{"type":"string","enum":["native","tokenized"],"description":"Origin of the bond"},"BondSeniority":{"type":"string","enum":["senior-debt","mezzanine","subordinated-debt","junior-debt"],"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation"},"InitialPlacementType":{"type":"string","enum":["public","private"],"description":"Initial placement type"},"BondStatus":{"type":"string","enum":["draft","recorded","issued","distributing","live","locked","mature","collecting","collected","closed"],"description":"**Status of the bond:**\n- `draft`- bond is created\n- `recorded`- data validation was created by issuer agent and approved by operator\n- `issued`- supply change was created by issuer agent and approved by operator\n- `distributing`- bond has been recorded, issued and ongoing distribution (step 1/2)\n- `live`- bond is distributed (step 2/2), now live and circulating\n- `locked`- bond is locked from trading, entering maturity process (step 1/5)\n- `mature`- bond is maturing, cannot be traded or transferred (step 2/5)\n- `collecting`- bond collection in progress (step 3/5)\n- `collected`- bond collection completed (step 4/5)\n- `closed`- bond has reached the end of its lifecycle (step 5/5)"},"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"]},"BondDto":{"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":"Bond 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 currency that payouts of the bond are made with in scope of this gateway","format":"uuid"},"brokerId":{"type":"string","description":"Unique UUID of the broker that manages this bond issue","format":"uuid"},"origin":{"description":"Origin of the bond","allOf":[{"$ref":"#/components/schemas/BondOrigin"}]},"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","nullable":true},"issuerCsdLeiCode":{"type":"string","description":"LEI code of central securities depository where the issuer has registered the securities","nullable":true},"csdRegisteredAt":{"type":"string","description":"Date of registration in central depository","format":"date-time","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"},"turnoverType":{"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred","nullable":true,"allOf":[{"$ref":"#/components/schemas/TurnoverType"}]},"seniority":{"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation","allOf":[{"$ref":"#/components/schemas/BondSeniority"}]},"status":{"description":"**Status of the bond:**\n- `draft`- bond is created\n- `recorded`- data validation was created by issuer agent and approved by operator\n- `issued`- supply change was created by issuer agent and approved by operator\n- `distributing`- bond has been recorded, issued and ongoing distribution (step 1/2)\n- `live`- bond is distributed (step 2/2), now live and circulating\n- `locked`- bond is locked from trading, entering maturity process (step 1/5)\n- `mature`- bond is maturing, cannot be traded or transferred (step 2/5)\n- `collecting`- bond collection in progress (step 3/5)\n- `collected`- bond collection completed (step 4/5)\n- `closed`- bond has reached the end of its lifecycle (step 5/5)","allOf":[{"$ref":"#/components/schemas/BondStatus"}]},"initialPlacement":{"description":"Initial placement type","default":"public","allOf":[{"$ref":"#/components/schemas/InitialPlacementType"}]},"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. Code that uniquely identifies a security globally","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. Code that uniquely identifies a security globally","nullable":true},"ticker":{"type":"string","description":"Stock ticker symbol. This is a unique series of letters assigned to a security or stock for trading purposes","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"}]},"issuePrice":{"type":"string","description":"Price of the bond issue"},"nominalValue":{"format":"int64","description":"Nominal value of a single bond unit, also known as face value.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalNominalValue":{"format":"int64","description":"Nominal value of a full bond issue, also known as total face value.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"type":"string","description":"Annual interest rate in % paid for holding this bond"},"interestType":{"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference","allOf":[{"$ref":"#/components/schemas/InterestType"}]},"interestBase":{"description":"Interest calculation option","allOf":[{"$ref":"#/components/schemas/InterestBaseOptions"}]},"interestInterval":{"description":"Interest payment interval","allOf":[{"$ref":"#/components/schemas/InterestIntervalOptions"}]},"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 bond prospectus registered"},"preEmptiveRights":{"type":"boolean","description":"Indicator, if the bond has pre-emptive rights"},"earlyRedemption":{"type":"boolean","description":"Indicator, if the bond can be redeemed early"},"secured":{"type":"boolean","description":"Indicator, if the bond is secured"},"securedBacking":{"type":"string","description":"Backing of the secured bond","nullable":true},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the bond."},"issuanceRecordAt":{"format":"date-time","type":"string","description":"Bond issue record date, from which the coupon accumulation starts."},"settleAt":{"format":"date-time","type":"string","description":"Date when the bond was or is expected to be fully distributed among initial holders."},"maturityRecordAt":{"format":"date-time","type":"string","description":"Date when the bond reaches maturity and final owners are fixed."},"matureAt":{"format":"date-time","type":"string","description":"Date when the bond maturity is expected to be paid out."},"distributedAmount":{"format":"int64","description":"Amount of bonds that have been proposed to distribute to investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestedAmount":{"format":"int64","description":"Amount of mature bonds requested to collect from investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"collectedAmount":{"format":"int64","description":"Amount of mature bonds collected back.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"name":{"type":"string","description":"Bond 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 bond supply.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalSupply":{"format":"int64","description":"Total bond supply ever issued.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"couponIds":{"description":"Coupon ids","type":"array","items":{"type":"string"}},"maturityPaymentIds":{"description":"Maturity payment ids","type":"array","items":{"type":"string"}},"distributionIds":{"description":"Distribution ids","type":"array","items":{"type":"string"}},"settlementType":{"description":"**Corporate actions settlement type:**\n- `internal` - payments (coupons, maturity) are settled within Axiology TSS using EMTs\n- `external` - payments are settled via bank or other payment systems outside Axiology TSS","allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"displayNotation":{"description":"Display hint only. The bond's monetary fields are returned as scaled monetary amounts regardless of this value; consumers use it to decide whether to render values as a percentage of nominal or as a per-unit amount.","allOf":[{"$ref":"#/components/schemas/PriceNotation"}]}},"required":["createdAt","updatedAt","id","issuerId","currencyId","brokerId","origin","custodian","custodianLeiCode","issuerCsdLeiCode","csdRegisteredAt","underlyingInstrumentCode","fisn","countryCode","turnoverType","seniority","status","initialPlacement","issuingAccountAddress","operationalAccountAddress","isin","cfi","figi","ticker","dti","ecbClassification","bolClassification","issuePrice","nominalValue","totalNominalValue","interestRate","interestType","interestBase","interestInterval","settlementUnitMultiple","minimumSettlementUnit","prospectusRegistered","preEmptiveRights","earlyRedemption","secured","securedBacking","issuedAt","issuanceRecordAt","settleAt","maturityRecordAt","matureAt","distributedAmount","requestedAmount","collectedAmount","name","specUrl","exponent","supply","totalSupply","couponIds","maturityPaymentIds","distributionIds","settlementType","displayNotation"]},"TurnoverType":{"type":"string","enum":["public","private"],"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred"},"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`."},"InterestType":{"type":"string","enum":["fixed","index-linked","other","stepped","floating","zero-coupon"],"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference"},"InterestBaseOptions":{"type":"string","enum":["act-act","act-360","act-365","thirty-360","thirty-e-360"],"description":"Interest calculation option"},"InterestIntervalOptions":{"type":"string","enum":["annual","monthly","quarterly","semiannual"],"description":"Interest payment interval"},"PriceNotation":{"type":"string","enum":["MONE","PERC","YIEL","BAPO"],"description":"**ESMA-aligned price notation codes** (MiFIR RTS 2/22).\n- `MONE` - monetary per-unit amount.\n- `PERC` - percentage (e.g. percentage of nominal value).\n- `YIEL` - yield.\n- `BAPO` - basis points."}}}}
```

## POST /bonds

> Create a new bond. Prepares blockchain accounts and makes data validation request to operator.

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds":{"post":{"description":"Create a new bond. Prepares blockchain accounts and makes data validation request to operator.","operationId":"createBond","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBondDto"}}}},"responses":{"201":{"description":"Successfully created a bond","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BondDto"}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"CreateBondDto":{"type":"object","properties":{"issuerId":{"type":"string","description":"Unique UUID of the issuer in scope of this gateway to assign as this bond's issuer","format":"uuid"},"currencyId":{"type":"string","description":"Unique UUID of the currency in scope of this gateway provided to set in which currency bond coupon and maturity payments will be executed with","format":"uuid"},"name":{"type":"string","description":"Full name of the bond"},"origin":{"description":"Origin of the bond. Indicates the source of the bond","default":"native","allOf":[{"$ref":"#/components/schemas/BondOrigin"}]},"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"},"issuerCsdLeiCode":{"type":"string","description":"LEI code of the issuer in central securities depository"},"csdRegisteredAt":{"format":"date-time","type":"string","description":"Date of registration in central depository"},"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"},"turnoverType":{"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred","allOf":[{"$ref":"#/components/schemas/TurnoverType"}]},"seniority":{"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation","allOf":[{"$ref":"#/components/schemas/BondSeniority"}]},"initialPlacement":{"description":"Initial placement type","allOf":[{"$ref":"#/components/schemas/InitialPlacementType"}]},"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. Code that uniquely identifies a security globally"},"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. Code that uniquely identifies a security globally"},"ticker":{"type":"string","description":"Stock ticker symbol. This is a unique series of letters assigned to a security or stock for trading purposes"},"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"}]},"issuePrice":{"type":"string","description":"Price of the bond issue"},"totalSupply":{"format":"int64","description":"Total amount of bond units that exist or will exist.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"nominalValue":{"format":"int64","description":"Nominal/face value of one bond, in the chosen currency.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"type":"string","description":"Annual interest rate in % paid for holding this bond"},"interestType":{"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference","allOf":[{"$ref":"#/components/schemas/InterestType"}]},"interestBase":{"description":"Method by which interest will be calculated","allOf":[{"$ref":"#/components/schemas/InterestBaseOptions"}]},"interestInterval":{"description":"Interest payment interval","allOf":[{"$ref":"#/components/schemas/InterestIntervalOptions"}]},"minimumSettlementUnit":{"type":"string","description":"Up to what part a bond can be divided"},"settlementUnitMultiple":{"type":"string","description":"The smallest part of settlement currency to trade"},"prospectusRegistered":{"type":"boolean","description":"Indicator, if the bond prospectus registered"},"preEmptiveRights":{"type":"boolean","description":"Indicator, if the bond has pre-emptive rights"},"earlyRedemption":{"type":"boolean","description":"Indicator, if the bond can be redeemed early"},"secured":{"type":"boolean","description":"Indicator, if the bond is secured"},"securedBacking":{"type":"string","description":"Backing of the secured bond"},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the bond."},"issuanceRecordAt":{"format":"date-time","type":"string","description":"Bond issue record date, from which the coupon accumulation starts."},"settleAt":{"format":"date-time","type":"string","description":"Date when the bond was or is expected to be fully distributed among initial holders."},"maturityRecordAt":{"format":"date-time","type":"string","description":"The official maturity record date and time. Timestamp marking the official maturity record cutoff (typically end of day, e.g. 23:59:59), defining which bondholders are legally entitled to receive principal repayment at maturity according to bond terms/prospectus."},"matureAt":{"format":"date-time","type":"string","description":"Date of bond's maturity or simpler, end of bond's lifetime."},"coupons":{"description":"Coupons defining periodic interest payments for this bond.","minItems":1,"type":"array","items":{"$ref":"#/components/schemas/CreateCouponDto"}},"reference":{"type":"string","description":"Reference to the new bond data document or other relevant information."},"settlementType":{"description":"Corporate actions settlement type. It indicates, whether coupon and maturity payments take place within Axiology in EMTs (internal) or via bank/other payments in another environment (external)","allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"displayNotation":{"description":"Display hint only. The bond's monetary fields are returned as scaled monetary amounts regardless of this value; consumers use it to decide whether to render values as a percentage of nominal or as a per-unit amount.","allOf":[{"$ref":"#/components/schemas/PriceNotation"}]}},"required":["issuerId","currencyId","name","origin","countryCode","seniority","initialPlacement","exponent","ecbClassification","bolClassification","issuePrice","totalSupply","nominalValue","interestRate","interestType","interestBase","interestInterval","minimumSettlementUnit","settlementUnitMultiple","prospectusRegistered","preEmptiveRights","earlyRedemption","secured","issuedAt","issuanceRecordAt","settleAt","maturityRecordAt","matureAt","reference","settlementType","displayNotation"]},"BondOrigin":{"type":"string","enum":["native","tokenized"],"description":"Origin of the bond"},"TurnoverType":{"type":"string","enum":["public","private"],"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred"},"BondSeniority":{"type":"string","enum":["senior-debt","mezzanine","subordinated-debt","junior-debt"],"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation"},"InitialPlacementType":{"type":"string","enum":["public","private"],"description":"Initial placement type"},"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`."},"InterestType":{"type":"string","enum":["fixed","index-linked","other","stepped","floating","zero-coupon"],"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference"},"InterestBaseOptions":{"type":"string","enum":["act-act","act-360","act-365","thirty-360","thirty-e-360"],"description":"Interest calculation option"},"InterestIntervalOptions":{"type":"string","enum":["annual","monthly","quarterly","semiannual"],"description":"Interest payment interval"},"CreateCouponDto":{"type":"object","properties":{"no":{"type":"number","description":"Coupon №"},"totalPayment":{"format":"int64","description":"Total payment of coupon, in the bond currency.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"nullable":true,"description":"Annual interest rate applicable to this coupon period. Maximum 100%. May be omitted for periods whose rate is not yet determined (e.g. floating-rate bonds).\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"recordAt":{"format":"date-time","type":"string","description":"The official coupon record date and time. Timestamp marking the official coupon record cutoff (typically end of day, e.g. 23:59:59), defining which bondholders are legally entitled to receive the upcoming coupon payment according bond terms/prospectus."},"payAt":{"format":"date-time","type":"string","description":"Date of coupon's payment, must be later than record date."}},"required":["no","totalPayment","recordAt","payAt"]},"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."},"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"},"PriceNotation":{"type":"string","enum":["MONE","PERC","YIEL","BAPO"],"description":"**ESMA-aligned price notation codes** (MiFIR RTS 2/22).\n- `MONE` - monetary per-unit amount.\n- `PERC` - percentage (e.g. percentage of nominal value).\n- `YIEL` - yield.\n- `BAPO` - basis points."},"BondDto":{"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":"Bond 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 currency that payouts of the bond are made with in scope of this gateway","format":"uuid"},"brokerId":{"type":"string","description":"Unique UUID of the broker that manages this bond issue","format":"uuid"},"origin":{"description":"Origin of the bond","allOf":[{"$ref":"#/components/schemas/BondOrigin"}]},"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","nullable":true},"issuerCsdLeiCode":{"type":"string","description":"LEI code of central securities depository where the issuer has registered the securities","nullable":true},"csdRegisteredAt":{"type":"string","description":"Date of registration in central depository","format":"date-time","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"},"turnoverType":{"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred","nullable":true,"allOf":[{"$ref":"#/components/schemas/TurnoverType"}]},"seniority":{"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation","allOf":[{"$ref":"#/components/schemas/BondSeniority"}]},"status":{"description":"**Status of the bond:**\n- `draft`- bond is created\n- `recorded`- data validation was created by issuer agent and approved by operator\n- `issued`- supply change was created by issuer agent and approved by operator\n- `distributing`- bond has been recorded, issued and ongoing distribution (step 1/2)\n- `live`- bond is distributed (step 2/2), now live and circulating\n- `locked`- bond is locked from trading, entering maturity process (step 1/5)\n- `mature`- bond is maturing, cannot be traded or transferred (step 2/5)\n- `collecting`- bond collection in progress (step 3/5)\n- `collected`- bond collection completed (step 4/5)\n- `closed`- bond has reached the end of its lifecycle (step 5/5)","allOf":[{"$ref":"#/components/schemas/BondStatus"}]},"initialPlacement":{"description":"Initial placement type","default":"public","allOf":[{"$ref":"#/components/schemas/InitialPlacementType"}]},"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. Code that uniquely identifies a security globally","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. Code that uniquely identifies a security globally","nullable":true},"ticker":{"type":"string","description":"Stock ticker symbol. This is a unique series of letters assigned to a security or stock for trading purposes","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"}]},"issuePrice":{"type":"string","description":"Price of the bond issue"},"nominalValue":{"format":"int64","description":"Nominal value of a single bond unit, also known as face value.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalNominalValue":{"format":"int64","description":"Nominal value of a full bond issue, also known as total face value.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"type":"string","description":"Annual interest rate in % paid for holding this bond"},"interestType":{"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference","allOf":[{"$ref":"#/components/schemas/InterestType"}]},"interestBase":{"description":"Interest calculation option","allOf":[{"$ref":"#/components/schemas/InterestBaseOptions"}]},"interestInterval":{"description":"Interest payment interval","allOf":[{"$ref":"#/components/schemas/InterestIntervalOptions"}]},"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 bond prospectus registered"},"preEmptiveRights":{"type":"boolean","description":"Indicator, if the bond has pre-emptive rights"},"earlyRedemption":{"type":"boolean","description":"Indicator, if the bond can be redeemed early"},"secured":{"type":"boolean","description":"Indicator, if the bond is secured"},"securedBacking":{"type":"string","description":"Backing of the secured bond","nullable":true},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the bond."},"issuanceRecordAt":{"format":"date-time","type":"string","description":"Bond issue record date, from which the coupon accumulation starts."},"settleAt":{"format":"date-time","type":"string","description":"Date when the bond was or is expected to be fully distributed among initial holders."},"maturityRecordAt":{"format":"date-time","type":"string","description":"Date when the bond reaches maturity and final owners are fixed."},"matureAt":{"format":"date-time","type":"string","description":"Date when the bond maturity is expected to be paid out."},"distributedAmount":{"format":"int64","description":"Amount of bonds that have been proposed to distribute to investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestedAmount":{"format":"int64","description":"Amount of mature bonds requested to collect from investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"collectedAmount":{"format":"int64","description":"Amount of mature bonds collected back.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"name":{"type":"string","description":"Bond 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 bond supply.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalSupply":{"format":"int64","description":"Total bond supply ever issued.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"couponIds":{"description":"Coupon ids","type":"array","items":{"type":"string"}},"maturityPaymentIds":{"description":"Maturity payment ids","type":"array","items":{"type":"string"}},"distributionIds":{"description":"Distribution ids","type":"array","items":{"type":"string"}},"settlementType":{"description":"**Corporate actions settlement type:**\n- `internal` - payments (coupons, maturity) are settled within Axiology TSS using EMTs\n- `external` - payments are settled via bank or other payment systems outside Axiology TSS","allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"displayNotation":{"description":"Display hint only. The bond's monetary fields are returned as scaled monetary amounts regardless of this value; consumers use it to decide whether to render values as a percentage of nominal or as a per-unit amount.","allOf":[{"$ref":"#/components/schemas/PriceNotation"}]}},"required":["createdAt","updatedAt","id","issuerId","currencyId","brokerId","origin","custodian","custodianLeiCode","issuerCsdLeiCode","csdRegisteredAt","underlyingInstrumentCode","fisn","countryCode","turnoverType","seniority","status","initialPlacement","issuingAccountAddress","operationalAccountAddress","isin","cfi","figi","ticker","dti","ecbClassification","bolClassification","issuePrice","nominalValue","totalNominalValue","interestRate","interestType","interestBase","interestInterval","settlementUnitMultiple","minimumSettlementUnit","prospectusRegistered","preEmptiveRights","earlyRedemption","secured","securedBacking","issuedAt","issuanceRecordAt","settleAt","maturityRecordAt","matureAt","distributedAmount","requestedAmount","collectedAmount","name","specUrl","exponent","supply","totalSupply","couponIds","maturityPaymentIds","distributionIds","settlementType","displayNotation"]},"BondStatus":{"type":"string","enum":["draft","recorded","issued","distributing","live","locked","mature","collecting","collected","closed"],"description":"**Status of the bond:**\n- `draft`- bond is created\n- `recorded`- data validation was created by issuer agent and approved by operator\n- `issued`- supply change was created by issuer agent and approved by operator\n- `distributing`- bond has been recorded, issued and ongoing distribution (step 1/2)\n- `live`- bond is distributed (step 2/2), now live and circulating\n- `locked`- bond is locked from trading, entering maturity process (step 1/5)\n- `mature`- bond is maturing, cannot be traded or transferred (step 2/5)\n- `collecting`- bond collection in progress (step 3/5)\n- `collected`- bond collection completed (step 4/5)\n- `closed`- bond has reached the end of its lifecycle (step 5/5)"}}}}
```

## Get bond's auctions

> Get auctions and their details with status for a single bond

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions":{"get":{"description":"Get auctions and their details with status for a single bond","operationId":"getBondAuctions","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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/FilterBondAuctionDto"}},{"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":{"minAmount":{"type":"string","enum":["asc","desc"]}},"required":["minAmount"]},{"properties":{"price":{"type":"string","enum":["asc","desc"]}},"required":["price"]},{"properties":{"startAt":{"type":"string","enum":["asc","desc"]}},"required":["startAt"]},{"properties":{"endAt":{"type":"string","enum":["asc","desc"]}},"required":["endAt"]},{"properties":{"settledTotalPrice":{"type":"string","enum":["asc","desc"]}},"required":["settledTotalPrice"]},{"properties":{"settledAt":{"type":"string","enum":["asc","desc"]}},"required":["settledAt"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, minAmount, price, startAt, endAt, settledTotalPrice, settledAt"}],"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/AuctionDto"}}},"required":["pagination","items"]}}}}},"summary":"Get bond's auctions","tags":["Bonds"]}}},"components":{"schemas":{"FilterBondAuctionDto":{"type":"object","properties":{"id":{"description":"Filter by single or multiple auction 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"}]},"type":{"description":"Filter by type of auction","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/AuctionType"},"minItems":1},{"$ref":"#/components/schemas/AuctionType"}]},"status":{"description":"Filter by status of auction","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/AuctionStatus"},"minItems":1},{"$ref":"#/components/schemas/AuctionStatus"}]},"startAt":{"format":"date-time","description":"Filter by auction start date and time","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]},"endAt":{"format":"date-time","description":"Filter by auction end date and time","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]}}},"AuctionType":{"type":"string","enum":["fixed-price","min-price"],"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive"},"AuctionStatus":{"type":"string","enum":["upcoming","open","closed","settled","failed","cancelled"],"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent"},"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"]},"AuctionDto":{"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":"Auction UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"type":{"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive","allOf":[{"$ref":"#/components/schemas/AuctionType"}]},"status":{"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent","allOf":[{"$ref":"#/components/schemas/AuctionStatus"}]},"minAmount":{"format":"int64","description":"Minimal amount that needs to be auctioned off for the auction to succeed.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Minimal or fixed price, determined by auction type.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"startAt":{"format":"date-time","type":"string","description":"Date and time of auction opening"},"endAt":{"format":"date-time","type":"string","description":"Date and time of auction closing"},"settledAmount":{"nullable":true,"description":"Total settled amount.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Date and time of auction settlement","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","type","status","minAmount","price","startAt","endAt","settledAmount","settledTotalPrice","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`."}}}}
```

## Create an auction

> Create an auction that  will be held and settled on the chain

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions":{"post":{"description":"Create an auction that  will be held and settled on the chain","operationId":"createAuction","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateAuctionDto"}}}},"responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuctionDto"}}}}},"summary":"Create an auction","tags":["Bonds"]}}},"components":{"schemas":{"CreateAuctionDto":{"type":"object","properties":{"type":{"description":"Type of auction","allOf":[{"$ref":"#/components/schemas/AuctionType"}]},"price":{"format":"int64","description":"Price of a single bond unit, when auction type is 'fixed-price'. Minimal price of a single bond unit, when auction type is 'min-price'.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"minAmount":{"format":"int64","description":"Minimal amount of bond units that must be auctioned off for the auction to be considered successful.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"startAt":{"format":"date-time","type":"string","description":"Date and time when auction opens"},"endAt":{"format":"date-time","type":"string","description":"Date and time when auction closes"}},"required":["type","price","minAmount","startAt","endAt"]},"AuctionType":{"type":"string","enum":["fixed-price","min-price"],"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive"},"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`."},"AuctionDto":{"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":"Auction UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"type":{"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive","allOf":[{"$ref":"#/components/schemas/AuctionType"}]},"status":{"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent","allOf":[{"$ref":"#/components/schemas/AuctionStatus"}]},"minAmount":{"format":"int64","description":"Minimal amount that needs to be auctioned off for the auction to succeed.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Minimal or fixed price, determined by auction type.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"startAt":{"format":"date-time","type":"string","description":"Date and time of auction opening"},"endAt":{"format":"date-time","type":"string","description":"Date and time of auction closing"},"settledAmount":{"nullable":true,"description":"Total settled amount.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Date and time of auction settlement","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","type","status","minAmount","price","startAt","endAt","settledAmount","settledTotalPrice","settledAt"]},"AuctionStatus":{"type":"string","enum":["upcoming","open","closed","settled","failed","cancelled"],"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent"}}}}
```

## Get auction

> Get auction details and status for a bond

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions/{auctionId}":{"get":{"description":"Get auction details and status for a bond","operationId":"getAuction","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"auctionId","required":true,"in":"path","description":"Auction UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuctionDto"}}}}},"summary":"Get auction","tags":["Bonds"]}}},"components":{"schemas":{"AuctionDto":{"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":"Auction UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"type":{"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive","allOf":[{"$ref":"#/components/schemas/AuctionType"}]},"status":{"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent","allOf":[{"$ref":"#/components/schemas/AuctionStatus"}]},"minAmount":{"format":"int64","description":"Minimal amount that needs to be auctioned off for the auction to succeed.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Minimal or fixed price, determined by auction type.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"startAt":{"format":"date-time","type":"string","description":"Date and time of auction opening"},"endAt":{"format":"date-time","type":"string","description":"Date and time of auction closing"},"settledAmount":{"nullable":true,"description":"Total settled amount.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Date and time of auction settlement","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","type","status","minAmount","price","startAt","endAt","settledAmount","settledTotalPrice","settledAt"]},"AuctionType":{"type":"string","enum":["fixed-price","min-price"],"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive"},"AuctionStatus":{"type":"string","enum":["upcoming","open","closed","settled","failed","cancelled"],"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent"},"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`."}}}}
```

## Cancel auction

> Cancel auction that has no active bids

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions/{auctionId}":{"patch":{"description":"Cancel auction that has no active bids","operationId":"updateAuction","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"auctionId","required":true,"in":"path","description":"Auction UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAuctionDto"}}}},"responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuctionDto"}}}}},"summary":"Cancel auction","tags":["Bonds"]}}},"components":{"schemas":{"UpdateAuctionDto":{"type":"object","properties":{"status":{"description":"**Update auction status**\n- `cancelled` - cancel auction","default":"cancelled","allOf":[{"$ref":"#/components/schemas/AuctionStatus"}]}},"required":["status"]},"AuctionStatus":{"type":"string","enum":["upcoming","open","closed","settled","failed","cancelled"],"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent"},"AuctionDto":{"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":"Auction UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker id","format":"uuid"},"assetId":{"type":"string","description":"Asset id","format":"uuid"},"type":{"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive","allOf":[{"$ref":"#/components/schemas/AuctionType"}]},"status":{"description":"**Auction status:**\n- `upcoming` - will open in the future\n- `open` - currently open and accepts bids\n- `closed` - successful, but not yet settled\n- `settled` - successful and settled\n- `failed` - unsuccessful auction, `minAmount` not reached\n- `cancelled` - cancelled by issuer agent","allOf":[{"$ref":"#/components/schemas/AuctionStatus"}]},"minAmount":{"format":"int64","description":"Minimal amount that needs to be auctioned off for the auction to succeed.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Minimal or fixed price, determined by auction type.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"startAt":{"format":"date-time","type":"string","description":"Date and time of auction opening"},"endAt":{"format":"date-time","type":"string","description":"Date and time of auction closing"},"settledAmount":{"nullable":true,"description":"Total settled amount.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Date and time of auction settlement","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","type","status","minAmount","price","startAt","endAt","settledAmount","settledTotalPrice","settledAt"]},"AuctionType":{"type":"string","enum":["fixed-price","min-price"],"description":"Type of auction:\n\n    'fixed-price' - price is fixed\n    'min-price' - price is limited to lower boundary, inclusive"},"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 all bids

> Get all bids in the auction

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions/{auctionId}/bids":{"get":{"description":"Get all bids in the auction","operationId":"getBids","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"auctionId","required":true,"in":"path","description":"Auction UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterBidDto"}},{"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":{"price":{"type":"string","enum":["asc","desc"]}},"required":["price"]},{"properties":{"totalPrice":{"type":"string","enum":["asc","desc"]}},"required":["totalPrice"]},{"properties":{"placedAt":{"type":"string","enum":["asc","desc"]}},"required":["placedAt"]},{"properties":{"settledAmount":{"type":"string","enum":["asc","desc"]}},"required":["settledAmount"]},{"properties":{"settledTotalPrice":{"type":"string","enum":["asc","desc"]}},"required":["settledTotalPrice"]},{"properties":{"settledAt":{"type":"string","enum":["asc","desc"]}},"required":["settledAt"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, amount, price, totalPrice, placedAt, settledAmount, settledTotalPrice, settledAt"}],"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/BidDto"}}},"required":["pagination","items"]}}}}},"summary":"Get all bids","tags":["Bonds"]}}},"components":{"schemas":{"FilterBidDto":{"type":"object","properties":{"id":{"description":"Filter by one or more bid 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 by one or more 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"}]},"status":{"description":"Filter by bid status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/BidStatus"},"minItems":1},{"$ref":"#/components/schemas/BidStatus"}]},"placedAt":{"format":"date-time","description":"Filter bids placed 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 bids 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"}]}}},"BidStatus":{"type":"string","enum":["placed","funded","matched","settled","not-matched","rejected","cancelled"],"description":"**Create bid status:**\n- `placed` - place unfunded bid\n- `funded` - place funded bid"},"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"]},"BidDto":{"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":"Bid UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker UUID that placed the bid","format":"uuid"},"assetId":{"type":"string","description":"Asset UUID that the bid is for","format":"uuid"},"auctionId":{"type":"string","description":"Auction UUID that the bid is for","format":"uuid"},"accountAddress":{"type":"string","description":"Account address that placed the bid","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"status":{"description":"Auction bid status","allOf":[{"$ref":"#/components/schemas/BidStatus"}]},"amount":{"format":"int64","description":"Bond amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Bond price per unit.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalPrice":{"format":"int64","description":"Total bid price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"placedAt":{"format":"date-time","type":"string","description":"Bid placement time","nullable":true},"settledAmount":{"nullable":true,"description":"Settled amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Bid settlement time","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","auctionId","accountAddress","status","amount","price","totalPrice","placedAt","settledAmount","settledTotalPrice","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`."}}}}
```

## Create a bid

> Create a bid on specific auction

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions/{auctionId}/bids":{"post":{"description":"Create a bid on specific auction","operationId":"createBid","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"auctionId","required":true,"in":"path","description":"Auction UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBidDto"}}}},"responses":{"201":{"description":"Created bid","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BidDto"}}}}},"summary":"Create a bid","tags":["Bonds"]}}},"components":{"schemas":{"CreateBidDto":{"type":"object","properties":{"accountAddress":{"type":"string","description":"Account address that is placing a bid","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"price":{"format":"int64","description":"Bid price per bond unit.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"amount":{"format":"int64","description":"Amount of bond units the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"status":{"description":"**Create bid status:**\n- `placed` - place unfunded bid\n- `funded` - place funded bid","default":"placed","allOf":[{"$ref":"#/components/schemas/BidStatus"}]}},"required":["accountAddress","price","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`."},"BidStatus":{"type":"string","enum":["placed","funded","matched","settled","not-matched","rejected","cancelled"],"description":"**Create bid status:**\n- `placed` - place unfunded bid\n- `funded` - place funded bid"},"BidDto":{"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":"Bid UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker UUID that placed the bid","format":"uuid"},"assetId":{"type":"string","description":"Asset UUID that the bid is for","format":"uuid"},"auctionId":{"type":"string","description":"Auction UUID that the bid is for","format":"uuid"},"accountAddress":{"type":"string","description":"Account address that placed the bid","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"status":{"description":"Auction bid status","allOf":[{"$ref":"#/components/schemas/BidStatus"}]},"amount":{"format":"int64","description":"Bond amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Bond price per unit.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalPrice":{"format":"int64","description":"Total bid price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"placedAt":{"format":"date-time","type":"string","description":"Bid placement time","nullable":true},"settledAmount":{"nullable":true,"description":"Settled amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Bid settlement time","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","auctionId","accountAddress","status","amount","price","totalPrice","placedAt","settledAmount","settledTotalPrice","settledAt"]}}}}
```

## Get bid

> Get auction bid by id

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions/{auctionId}/bids/{bidId}":{"get":{"description":"Get auction bid by id","operationId":"getBid","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"auctionId","required":true,"in":"path","description":"Auction UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}},{"name":"bidId","required":true,"in":"path","description":"Bid UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Auction bid","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BidDto"}}}}},"summary":"Get bid","tags":["Bonds"]}}},"components":{"schemas":{"BidDto":{"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":"Bid UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker UUID that placed the bid","format":"uuid"},"assetId":{"type":"string","description":"Asset UUID that the bid is for","format":"uuid"},"auctionId":{"type":"string","description":"Auction UUID that the bid is for","format":"uuid"},"accountAddress":{"type":"string","description":"Account address that placed the bid","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"status":{"description":"Auction bid status","allOf":[{"$ref":"#/components/schemas/BidStatus"}]},"amount":{"format":"int64","description":"Bond amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Bond price per unit.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalPrice":{"format":"int64","description":"Total bid price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"placedAt":{"format":"date-time","type":"string","description":"Bid placement time","nullable":true},"settledAmount":{"nullable":true,"description":"Settled amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Bid settlement time","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","auctionId","accountAddress","status","amount","price","totalPrice","placedAt","settledAmount","settledTotalPrice","settledAt"]},"BidStatus":{"type":"string","enum":["placed","funded","matched","settled","not-matched","rejected","cancelled"],"description":"**Create bid status:**\n- `placed` - place unfunded bid\n- `funded` - place funded bid"},"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`."}}}}
```

## Fund/defund/cancel bid

> Manage auction bid by funding, defunding or cancelling it

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/auctions/{auctionId}/bids/{bidId}":{"patch":{"description":"Manage auction bid by funding, defunding or cancelling it","operationId":"changeBid","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"auctionId","required":true,"in":"path","description":"Auction UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}},{"name":"bidId","required":true,"in":"path","description":"Bid UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateBidDto"}}}},"responses":{"200":{"description":"Changed bid","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BidDto"}}}}},"summary":"Fund/defund/cancel bid","tags":["Bonds"]}}},"components":{"schemas":{"UpdateBidDto":{"type":"object","properties":{"status":{"description":"**Update bid status:**\n- `funded` - fund `placed` bid\n- `placed` - defund `funded` bid\n- `cancelled` - cancel active bid","default":"funded","allOf":[{"$ref":"#/components/schemas/BidStatus"}]}},"required":["status"]},"BidStatus":{"type":"string","enum":["placed","funded","matched","settled","not-matched","rejected","cancelled"],"description":"**Create bid status:**\n- `placed` - place unfunded bid\n- `funded` - place funded bid"},"BidDto":{"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":"Bid UUID identifier, unique in scope of this node","format":"uuid"},"brokerId":{"type":"string","description":"Broker UUID that placed the bid","format":"uuid"},"assetId":{"type":"string","description":"Asset UUID that the bid is for","format":"uuid"},"auctionId":{"type":"string","description":"Auction UUID that the bid is for","format":"uuid"},"accountAddress":{"type":"string","description":"Account address that placed the bid","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"status":{"description":"Auction bid status","allOf":[{"$ref":"#/components/schemas/BidStatus"}]},"amount":{"format":"int64","description":"Bond amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"price":{"format":"int64","description":"Bond price per unit.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalPrice":{"format":"int64","description":"Total bid price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"placedAt":{"format":"date-time","type":"string","description":"Bid placement time","nullable":true},"settledAmount":{"nullable":true,"description":"Settled amount the bid is for.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledTotalPrice":{"nullable":true,"description":"Settled total price.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"settledAt":{"format":"date-time","type":"string","description":"Bid settlement time","nullable":true}},"required":["createdAt","updatedAt","id","brokerId","assetId","auctionId","accountAddress","status","amount","price","totalPrice","placedAt","settledAmount","settledTotalPrice","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`."}}}}
```

## Pay bond coupon manually

> Pay bond coupon that was not automatically paid

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/coupons/{couponId}":{"patch":{"description":"Pay bond coupon that was not automatically paid","operationId":"payCoupon","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"couponId","required":true,"in":"path","description":"Coupon UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Coupon paid","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CouponDto"}}}}},"summary":"Pay bond coupon manually","tags":["Bonds"]}}},"components":{"schemas":{"CouponDto":{"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":"Coupon UUID identifier, global in scope of TSS","format":"uuid"},"no":{"type":"number","description":"Coupon №"},"bondId":{"type":"string","description":"Bond UUID, unique in scope of this node","format":"uuid"},"status":{"description":"Coupon status","allOf":[{"$ref":"#/components/schemas/CouponStatus"}]},"totalPayment":{"format":"int64","description":"Total payment of coupon, in the bond currency.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"nullable":true,"description":"Annual interest rate applicable to this coupon period. Null when not yet set.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"recordAt":{"format":"date-time","type":"string","description":"Date of coupon's period end, bond holders are recorded."},"payAt":{"format":"date-time","type":"string","description":"Date of coupon's payment, must be later than record date."}},"required":["createdAt","updatedAt","id","no","bondId","status","totalPayment","interestRate","recordAt","payAt"]},"CouponStatus":{"type":"string","enum":["paid","readyToPay","upcoming","paying","noFunds"],"description":"Coupon 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`."},"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 /bonds/{bondId}/maturity-payments

> Retrieve a paginated list of bond maturity payments

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/maturity-payments":{"get":{"description":"Retrieve a paginated list of bond maturity payments","operationId":"getBondMaturityPayments","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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/FilterMaturityPaymentDto"}},{"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":{"bondAmount":{"type":"string","enum":["asc","desc"]}},"required":["bondAmount"]},{"properties":{"payoutAmount":{"type":"string","enum":["asc","desc"]}},"required":["payoutAmount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, status, bondAmount, 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/MaturityPaymentDto"}}},"required":["pagination","items"]}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"FilterMaturityPaymentDto":{"type":"object","properties":{"status":{"description":"Filter maturity payments by status","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/MaturityPaymentStatus"},"minItems":1},{"$ref":"#/components/schemas/MaturityPaymentStatus"}]},"receiverAddress":{"type":"string","description":"Filter maturity payments by receiver account address"}}},"MaturityPaymentStatus":{"type":"string","enum":["recorded","no-funds","initiated","initiation-failed","completed","completion-failed"],"description":"Status of the maturity payment"},"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"]},"MaturityPaymentDto":{"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":"Maturity Payment UUID identifier, unique in scope of this node","format":"uuid"},"status":{"description":"Status of the maturity payment","allOf":[{"$ref":"#/components/schemas/MaturityPaymentStatus"}]},"bondId":{"type":"string","description":"Unique UUID of the bond in scope of this gateway","format":"uuid"},"bondAmount":{"format":"int64","description":"Bond amount for this maturity payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"payoutAmount":{"format":"int64","description":"Amount to pay for this maturity payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"receiverAddress":{"type":"string","description":"Payment`s receiver address corresponding to the investor account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"errorMessage":{"type":"string","description":"Error message"}},"required":["createdAt","updatedAt","id","status","bondId","bondAmount","payoutAmount","receiverAddress"]},"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 /bonds/{bondId}/maturity-payments/{maturityPaymentId}

> Get maturity payment

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/maturity-payments/{maturityPaymentId}":{"get":{"description":"Get maturity payment","operationId":"getBondMaturityPayment","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"maturityPaymentId","required":true,"in":"path","description":"Maturity Payment UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Retrieve information about single maturity payment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MaturityPaymentDto"}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"MaturityPaymentDto":{"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":"Maturity Payment UUID identifier, unique in scope of this node","format":"uuid"},"status":{"description":"Status of the maturity payment","allOf":[{"$ref":"#/components/schemas/MaturityPaymentStatus"}]},"bondId":{"type":"string","description":"Unique UUID of the bond in scope of this gateway","format":"uuid"},"bondAmount":{"format":"int64","description":"Bond amount for this maturity payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"payoutAmount":{"format":"int64","description":"Amount to pay for this maturity payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"receiverAddress":{"type":"string","description":"Payment`s receiver address corresponding to the investor account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"errorMessage":{"type":"string","description":"Error message"}},"required":["createdAt","updatedAt","id","status","bondId","bondAmount","payoutAmount","receiverAddress"]},"MaturityPaymentStatus":{"type":"string","enum":["recorded","no-funds","initiated","initiation-failed","completed","completion-failed"],"description":"Status of the maturity payment"},"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`."}}}}
```

## PATCH /bonds/{bondId}/maturity-payments/{maturityPaymentId}

> Update bond maturity payments for previously failed or no funds holders

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/maturity-payments/{maturityPaymentId}":{"patch":{"description":"Update bond maturity payments for previously failed or no funds holders","operationId":"updateBondMaturityPayment","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"maturityPaymentId","required":true,"in":"path","description":"Maturity Payment UUID identifier, unique in scope of this node","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateMaturityPaymentDto"}}}},"responses":{"200":{"description":"Successfully received a bond maturity payment","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MaturityPaymentDto"}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"UpdateMaturityPaymentDto":{"type":"object","properties":{"status":{"description":"**Update maturity payment status**\n- `initiated` - (issuer agent) re-initiate `no-funds` or `initiation-failed`\n- `completed` - (investor agent) accept `initiated` payment","allOf":[{"$ref":"#/components/schemas/MaturityPaymentStatus"}]}},"required":["status"]},"MaturityPaymentStatus":{"type":"string","enum":["recorded","no-funds","initiated","initiation-failed","completed","completion-failed"],"description":"Status of the maturity payment"},"MaturityPaymentDto":{"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":"Maturity Payment UUID identifier, unique in scope of this node","format":"uuid"},"status":{"description":"Status of the maturity payment","allOf":[{"$ref":"#/components/schemas/MaturityPaymentStatus"}]},"bondId":{"type":"string","description":"Unique UUID of the bond in scope of this gateway","format":"uuid"},"bondAmount":{"format":"int64","description":"Bond amount for this maturity payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"payoutAmount":{"format":"int64","description":"Amount to pay for this maturity payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"receiverAddress":{"type":"string","description":"Payment`s receiver address corresponding to the investor account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"errorMessage":{"type":"string","description":"Error message"}},"required":["createdAt","updatedAt","id","status","bondId","bondAmount","payoutAmount","receiverAddress"]},"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 /bonds/{bondId}/prices/{length}

> Retrieve a page of price candlesticks from the tradable bond

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/prices/{length}":{"get":{"deprecated":true,"description":"Retrieve a page of price candlesticks from the tradable bond","operationId":"getBondPrices","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"length","required":true,"in":"path","description":"Length of the candlestick in minutes","schema":{"type":"number"}},{"name":"order","required":false,"in":"query","description":"Include/exclude withdrawals with deposits","schema":{"type":"string","enum":["asc","desc"]}},{"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/PriceCandleDto"}}},"required":["pagination","items"]}}}}},"summary":"","tags":["Bonds"]}}},"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"]},"PriceCandleDto":{"type":"object","properties":{"created_at":{"format":"date-time","type":"string","description":"Created date"},"updated_at":{"format":"date-time","type":"string","description":"Updated date"},"id":{"type":"string","description":"Price candlestick UUID identifier, unique in scope of this node","format":"uuid"},"tokenPairId":{"type":"string","description":"Identifier for the related token pair","format":"uuid"},"open":{"type":"number","description":"Opening price of the candlestick"},"close":{"type":"number","description":"Closing price of the candlestick"},"low":{"type":"number","description":"Lowest price during the candlestick period"},"high":{"type":"number","description":"Highest price during the candlestick period"},"length":{"type":"number","description":"Length of the candlestick in minutes"},"candleBegin":{"format":"date-time","type":"string","description":"Start daytime of the candlestick range"},"candleEnd":{"format":"date-time","type":"string","description":"End daytime of the candlestick range"}},"required":["created_at","updated_at","id","tokenPairId","open","close","low","high","length","candleBegin","candleEnd"]}}}}
```

## GET /bonds/{bondId}/data-validations

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

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/data-validations":{"get":{"description":"Retrieve a list of bond data validation requests available in the system","operationId":"getBondDataValidations","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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":"","tags":["Bonds"]}}},"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 bond's information

> Update existing bond'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":{"/bonds/{bondId}/data-validations":{"post":{"description":"Update existing bond's information. This only creates a change request. It is executed only after approval by operator","operationId":"initiateBondDataValidation","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBondDataValidationDto"}}}},"responses":{"201":{"description":"Successfully created a request to update bond data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataValidationDto"}}}}},"summary":"Change bond's information","tags":["Bonds"]}}},"components":{"schemas":{"CreateBondDataValidationDto":{"type":"object","properties":{"initiationReference":{"type":"string","description":"Arbitrary reference provided by the broker to the bond data validation initiation"},"spec":{"description":"Proposed bond data to validate","allOf":[{"$ref":"#/components/schemas/CreateBondDataValidationSpecDto"}]}},"required":["initiationReference","spec"]},"CreateBondDataValidationSpecDto":{"type":"object","properties":{"issuerId":{"type":"string","description":"Unique UUID of the issuer in scope of this gateway to assign as this bond's issuer","format":"uuid"},"currencyId":{"type":"string","description":"Unique UUID of the currency in scope of this gateway provided to set in which currency bond coupon and maturity payments will be executed with","format":"uuid"},"name":{"type":"string","description":"Full name of the bond"},"origin":{"description":"Origin of the bond. Indicates the source of the bond","default":"native","allOf":[{"$ref":"#/components/schemas/BondOrigin"}]},"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"},"issuerCsdLeiCode":{"type":"string","description":"LEI code of the issuer in central securities depository"},"csdRegisteredAt":{"format":"date-time","type":"string","description":"Date of registration in central depository"},"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"},"turnoverType":{"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred","allOf":[{"$ref":"#/components/schemas/TurnoverType"}]},"seniority":{"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation","allOf":[{"$ref":"#/components/schemas/BondSeniority"}]},"initialPlacement":{"description":"Initial placement type","allOf":[{"$ref":"#/components/schemas/InitialPlacementType"}]},"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. Code that uniquely identifies a security globally"},"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. Code that uniquely identifies a security globally"},"ticker":{"type":"string","description":"Stock ticker symbol. This is a unique series of letters assigned to a security or stock for trading purposes"},"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"}]},"issuePrice":{"type":"string","description":"Price of the bond issue"},"totalSupply":{"format":"int64","description":"Total amount of bond units that exist or will exist.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"nominalValue":{"format":"int64","description":"Nominal/face value of one bond, in the chosen currency.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"type":"string","description":"Annual interest rate in % paid for holding this bond"},"interestType":{"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference","allOf":[{"$ref":"#/components/schemas/InterestType"}]},"interestBase":{"description":"Method by which interest will be calculated","allOf":[{"$ref":"#/components/schemas/InterestBaseOptions"}]},"interestInterval":{"description":"Interest payment interval","allOf":[{"$ref":"#/components/schemas/InterestIntervalOptions"}]},"minimumSettlementUnit":{"type":"string","description":"Up to what part a bond can be divided"},"settlementUnitMultiple":{"type":"string","description":"The smallest part of settlement currency to trade"},"prospectusRegistered":{"type":"boolean","description":"Indicator, if the bond prospectus registered"},"preEmptiveRights":{"type":"boolean","description":"Indicator, if the bond has pre-emptive rights"},"earlyRedemption":{"type":"boolean","description":"Indicator, if the bond can be redeemed early"},"secured":{"type":"boolean","description":"Indicator, if the bond is secured"},"securedBacking":{"type":"string","description":"Backing of the secured bond"},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the bond."},"issuanceRecordAt":{"format":"date-time","type":"string","description":"Bond issue record date, from which the coupon accumulation starts."},"settleAt":{"format":"date-time","type":"string","description":"Date when the bond was or is expected to be fully distributed among initial holders."},"maturityRecordAt":{"format":"date-time","type":"string","description":"The official maturity record date and time. Timestamp marking the official maturity record cutoff (typically end of day, e.g. 23:59:59), defining which bondholders are legally entitled to receive principal repayment at maturity according to bond terms/prospectus."},"matureAt":{"format":"date-time","type":"string","description":"Date of bond's maturity or simpler, end of bond's lifetime."},"coupons":{"description":"Coupons defining periodic interest payments for this bond.","minItems":1,"type":"array","items":{"$ref":"#/components/schemas/CreateCouponDto"}},"settlementType":{"description":"Corporate actions settlement type. It indicates, whether coupon and maturity payments take place within Axiology in EMTs (internal) or via bank/other payments in another environment (external)","allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"displayNotation":{"description":"Display hint only. The bond's monetary fields are returned as scaled monetary amounts regardless of this value; consumers use it to decide whether to render values as a percentage of nominal or as a per-unit amount.","allOf":[{"$ref":"#/components/schemas/PriceNotation"}]}},"required":["issuerId","currencyId","name","origin","countryCode","seniority","initialPlacement","exponent","ecbClassification","bolClassification","issuePrice","totalSupply","nominalValue","interestRate","interestType","interestBase","interestInterval","minimumSettlementUnit","settlementUnitMultiple","prospectusRegistered","preEmptiveRights","earlyRedemption","secured","issuedAt","issuanceRecordAt","settleAt","maturityRecordAt","matureAt","settlementType","displayNotation"]},"BondOrigin":{"type":"string","enum":["native","tokenized"],"description":"Origin of the bond"},"TurnoverType":{"type":"string","enum":["public","private"],"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred"},"BondSeniority":{"type":"string","enum":["senior-debt","mezzanine","subordinated-debt","junior-debt"],"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation"},"InitialPlacementType":{"type":"string","enum":["public","private"],"description":"Initial placement type"},"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`."},"InterestType":{"type":"string","enum":["fixed","index-linked","other","stepped","floating","zero-coupon"],"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference"},"InterestBaseOptions":{"type":"string","enum":["act-act","act-360","act-365","thirty-360","thirty-e-360"],"description":"Interest calculation option"},"InterestIntervalOptions":{"type":"string","enum":["annual","monthly","quarterly","semiannual"],"description":"Interest payment interval"},"CreateCouponDto":{"type":"object","properties":{"no":{"type":"number","description":"Coupon №"},"totalPayment":{"format":"int64","description":"Total payment of coupon, in the bond currency.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"nullable":true,"description":"Annual interest rate applicable to this coupon period. Maximum 100%. May be omitted for periods whose rate is not yet determined (e.g. floating-rate bonds).\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"recordAt":{"format":"date-time","type":"string","description":"The official coupon record date and time. Timestamp marking the official coupon record cutoff (typically end of day, e.g. 23:59:59), defining which bondholders are legally entitled to receive the upcoming coupon payment according bond terms/prospectus."},"payAt":{"format":"date-time","type":"string","description":"Date of coupon's payment, must be later than record date."}},"required":["no","totalPayment","recordAt","payAt"]},"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."},"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"},"PriceNotation":{"type":"string","enum":["MONE","PERC","YIEL","BAPO"],"description":"**ESMA-aligned price notation codes** (MiFIR RTS 2/22).\n- `MONE` - monetary per-unit amount.\n- `PERC` - percentage (e.g. percentage of nominal value).\n- `YIEL` - yield.\n- `BAPO` - basis points."},"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 bond's information

> Cancel existing bond's information that is waiting for operator approval

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/data-validations/{dataValidationId}":{"patch":{"description":"Cancel existing bond's information that is waiting for operator approval","operationId":"cancelBondData","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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/UpdateBondDataValidationDto"}}}},"responses":{"200":{"description":"Successfully cancelled a request to update bond data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataValidationDto"}}}}},"summary":"Cancel bond's information","tags":["Bonds"]}}},"components":{"schemas":{"UpdateBondDataValidationDto":{"type":"object","properties":{"status":{"description":"**Bond data validation status**\n- `cancelled` - cancel bond data validation","default":"cancelled","allOf":[{"$ref":"#/components/schemas/DataValidationStatus"}]},"reference":{"type":"string","description":"Arbitrary reference provided by the broker to the bond data validation"}},"required":["status","reference"]},"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 bond distributions

> Get a paginated list of distributions for a specific bond

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/distributions":{"get":{"description":"Get a paginated list of distributions for a specific bond","operationId":"getDistributions","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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 bond 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 bond distributions","tags":["Bonds"]}}},"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 bond

> Initiate bond 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":{"/bonds/{bondId}/distributions":{"post":{"description":"Initiate bond distribution via Free Of Payment method. (Delivery Versus Payment is not supported yet.)","operationId":"createBondDistribution","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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 bond","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DistributionDto"}}}}},"summary":"Distribute bond","tags":["Bonds"]}}},"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 bond distribution FOP

> Get bond distribution's FOP by its id

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/distributions/{distributionId}/fops/{fopId}":{"get":{"description":"Get bond distribution's FOP by its id","operationId":"getBondDistributionFop","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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 bond distribution FOP","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DistributionFopDto"}}}}},"summary":"Get bond distribution FOP","tags":["Bonds"]}}},"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":{"/bonds/{bondId}/distributions/{distributionId}/fops/{fopId}":{"patch":{"description":"Retry distribution for previously failed FOP.","operationId":"updateBondDistributionFop","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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":["Bonds"]}}},"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 /bonds/{bondId}/supply-changes

> Retrieve a list of bond supply changes requests available in the system

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/supply-changes":{"get":{"description":"Retrieve a list of bond supply changes requests available in the system","operationId":"getBondSupplyChanges","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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":"","tags":["Bonds"]}}},"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 bond's supply

> Update existing bond's supply. 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":{"/bonds/{bondId}/supply-changes":{"post":{"description":"Update existing bond's supply. This only creates a change request. It is executed only after approval by operator","operationId":"initiateBondSupplyChange","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBondSupplyChangeDto"}}}},"responses":{"201":{"description":"Successfully created a request to update bond supply","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupplyChangeDto"}}}}},"summary":"Change bond's supply","tags":["Bonds"]}}},"components":{"schemas":{"CreateBondSupplyChangeDto":{"type":"object","properties":{"amount":{"format":"int64","description":"Signed change in bond supply. Positive increases supply, negative decreases it.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"action":{"description":"Action that is wished to be performed with the bond supply","allOf":[{"$ref":"#/components/schemas/SupplyChangeAction"}]},"initiationReference":{"type":"string","description":"Arbitrary reference provided by the broker to the bond 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 bond's supply

> Cancel existing bond's supply that is waiting for operator approval

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/supply-changes/{supplyChangeId}":{"patch":{"description":"Cancel existing bond's supply that is waiting for operator approval","operationId":"cancelBondSupplyChange","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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/UpdateBondSupplyChangeDto"}}}},"responses":{"200":{"description":"Successfully cancelled a request to update bond supply","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SupplyChangeDto"}}}}},"summary":"Cancel bond's supply","tags":["Bonds"]}}},"components":{"schemas":{"UpdateBondSupplyChangeDto":{"type":"object","properties":{"status":{"description":"**Update bond supply change status:**\n- `cancelled` - cancel bond supply change","allOf":[{"$ref":"#/components/schemas/SupplyChangeStatus"}]},"validationReference":{"type":"string","description":"Arbitrary reference provided by the issuer agent to the bond supply change"}},"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 /bonds/{bondId}

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

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}":{"get":{"description":"Retrieve full information about a single bond, specified by bond id in the path","operationId":"getBond","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}}],"responses":{"200":{"description":"Successfully received a bond","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BondDto"}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"BondDto":{"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":"Bond 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 currency that payouts of the bond are made with in scope of this gateway","format":"uuid"},"brokerId":{"type":"string","description":"Unique UUID of the broker that manages this bond issue","format":"uuid"},"origin":{"description":"Origin of the bond","allOf":[{"$ref":"#/components/schemas/BondOrigin"}]},"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","nullable":true},"issuerCsdLeiCode":{"type":"string","description":"LEI code of central securities depository where the issuer has registered the securities","nullable":true},"csdRegisteredAt":{"type":"string","description":"Date of registration in central depository","format":"date-time","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"},"turnoverType":{"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred","nullable":true,"allOf":[{"$ref":"#/components/schemas/TurnoverType"}]},"seniority":{"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation","allOf":[{"$ref":"#/components/schemas/BondSeniority"}]},"status":{"description":"**Status of the bond:**\n- `draft`- bond is created\n- `recorded`- data validation was created by issuer agent and approved by operator\n- `issued`- supply change was created by issuer agent and approved by operator\n- `distributing`- bond has been recorded, issued and ongoing distribution (step 1/2)\n- `live`- bond is distributed (step 2/2), now live and circulating\n- `locked`- bond is locked from trading, entering maturity process (step 1/5)\n- `mature`- bond is maturing, cannot be traded or transferred (step 2/5)\n- `collecting`- bond collection in progress (step 3/5)\n- `collected`- bond collection completed (step 4/5)\n- `closed`- bond has reached the end of its lifecycle (step 5/5)","allOf":[{"$ref":"#/components/schemas/BondStatus"}]},"initialPlacement":{"description":"Initial placement type","default":"public","allOf":[{"$ref":"#/components/schemas/InitialPlacementType"}]},"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. Code that uniquely identifies a security globally","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. Code that uniquely identifies a security globally","nullable":true},"ticker":{"type":"string","description":"Stock ticker symbol. This is a unique series of letters assigned to a security or stock for trading purposes","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"}]},"issuePrice":{"type":"string","description":"Price of the bond issue"},"nominalValue":{"format":"int64","description":"Nominal value of a single bond unit, also known as face value.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalNominalValue":{"format":"int64","description":"Nominal value of a full bond issue, also known as total face value.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"type":"string","description":"Annual interest rate in % paid for holding this bond"},"interestType":{"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference","allOf":[{"$ref":"#/components/schemas/InterestType"}]},"interestBase":{"description":"Interest calculation option","allOf":[{"$ref":"#/components/schemas/InterestBaseOptions"}]},"interestInterval":{"description":"Interest payment interval","allOf":[{"$ref":"#/components/schemas/InterestIntervalOptions"}]},"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 bond prospectus registered"},"preEmptiveRights":{"type":"boolean","description":"Indicator, if the bond has pre-emptive rights"},"earlyRedemption":{"type":"boolean","description":"Indicator, if the bond can be redeemed early"},"secured":{"type":"boolean","description":"Indicator, if the bond is secured"},"securedBacking":{"type":"string","description":"Backing of the secured bond","nullable":true},"issuedAt":{"format":"date-time","type":"string","description":"Issue date of the bond."},"issuanceRecordAt":{"format":"date-time","type":"string","description":"Bond issue record date, from which the coupon accumulation starts."},"settleAt":{"format":"date-time","type":"string","description":"Date when the bond was or is expected to be fully distributed among initial holders."},"maturityRecordAt":{"format":"date-time","type":"string","description":"Date when the bond reaches maturity and final owners are fixed."},"matureAt":{"format":"date-time","type":"string","description":"Date when the bond maturity is expected to be paid out."},"distributedAmount":{"format":"int64","description":"Amount of bonds that have been proposed to distribute to investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"requestedAmount":{"format":"int64","description":"Amount of mature bonds requested to collect from investors.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"collectedAmount":{"format":"int64","description":"Amount of mature bonds collected back.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"name":{"type":"string","description":"Bond 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 bond supply.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"totalSupply":{"format":"int64","description":"Total bond supply ever issued.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"couponIds":{"description":"Coupon ids","type":"array","items":{"type":"string"}},"maturityPaymentIds":{"description":"Maturity payment ids","type":"array","items":{"type":"string"}},"distributionIds":{"description":"Distribution ids","type":"array","items":{"type":"string"}},"settlementType":{"description":"**Corporate actions settlement type:**\n- `internal` - payments (coupons, maturity) are settled within Axiology TSS using EMTs\n- `external` - payments are settled via bank or other payment systems outside Axiology TSS","allOf":[{"$ref":"#/components/schemas/SettlementType"}]},"displayNotation":{"description":"Display hint only. The bond's monetary fields are returned as scaled monetary amounts regardless of this value; consumers use it to decide whether to render values as a percentage of nominal or as a per-unit amount.","allOf":[{"$ref":"#/components/schemas/PriceNotation"}]}},"required":["createdAt","updatedAt","id","issuerId","currencyId","brokerId","origin","custodian","custodianLeiCode","issuerCsdLeiCode","csdRegisteredAt","underlyingInstrumentCode","fisn","countryCode","turnoverType","seniority","status","initialPlacement","issuingAccountAddress","operationalAccountAddress","isin","cfi","figi","ticker","dti","ecbClassification","bolClassification","issuePrice","nominalValue","totalNominalValue","interestRate","interestType","interestBase","interestInterval","settlementUnitMultiple","minimumSettlementUnit","prospectusRegistered","preEmptiveRights","earlyRedemption","secured","securedBacking","issuedAt","issuanceRecordAt","settleAt","maturityRecordAt","matureAt","distributedAmount","requestedAmount","collectedAmount","name","specUrl","exponent","supply","totalSupply","couponIds","maturityPaymentIds","distributionIds","settlementType","displayNotation"]},"BondOrigin":{"type":"string","enum":["native","tokenized"],"description":"Origin of the bond"},"TurnoverType":{"type":"string","enum":["public","private"],"description":"Type of turnover for the bond. Indicates how the bond is traded or transferred"},"BondSeniority":{"type":"string","enum":["senior-debt","mezzanine","subordinated-debt","junior-debt"],"description":"Seniority of the bond. Indicates the priority of claims in case of liquidation"},"BondStatus":{"type":"string","enum":["draft","recorded","issued","distributing","live","locked","mature","collecting","collected","closed"],"description":"**Status of the bond:**\n- `draft`- bond is created\n- `recorded`- data validation was created by issuer agent and approved by operator\n- `issued`- supply change was created by issuer agent and approved by operator\n- `distributing`- bond has been recorded, issued and ongoing distribution (step 1/2)\n- `live`- bond is distributed (step 2/2), now live and circulating\n- `locked`- bond is locked from trading, entering maturity process (step 1/5)\n- `mature`- bond is maturing, cannot be traded or transferred (step 2/5)\n- `collecting`- bond collection in progress (step 3/5)\n- `collected`- bond collection completed (step 4/5)\n- `closed`- bond has reached the end of its lifecycle (step 5/5)"},"InitialPlacementType":{"type":"string","enum":["public","private"],"description":"Initial placement type"},"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`."},"InterestType":{"type":"string","enum":["fixed","index-linked","other","stepped","floating","zero-coupon"],"description":"**Interest type of the bond** using Axiology bond terminology.\n- `fixed` - fixed-rate debt security with a coupon rate that remains constant for the life of the instrument\n- `index-linked` - debt security whose coupon and/or redemption amount is linked to a reference index, for example an inflation index\n- `other` - residual category for debt securities whose interest structure does not fit the named interest-type categories\n- `stepped` - stepped-coupon debt security with a predefined coupon step-up or step-down schedule\n- `floating` - floating-rate debt security with a coupon that is periodically reset against a reference rate\n- `zero-coupon` - zero-coupon debt security with no periodic coupon payments; return is realised through the issue/redemption price difference"},"InterestBaseOptions":{"type":"string","enum":["act-act","act-360","act-365","thirty-360","thirty-e-360"],"description":"Interest calculation option"},"InterestIntervalOptions":{"type":"string","enum":["annual","monthly","quarterly","semiannual"],"description":"Interest payment interval"},"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"},"PriceNotation":{"type":"string","enum":["MONE","PERC","YIEL","BAPO"],"description":"**ESMA-aligned price notation codes** (MiFIR RTS 2/22).\n- `MONE` - monetary per-unit amount.\n- `PERC` - percentage (e.g. percentage of nominal value).\n- `YIEL` - yield.\n- `BAPO` - basis points."}}}}
```

## GET /bonds/{bondId}/accounts

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

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/accounts":{"get":{"description":"Retrieve a list of accounts with balance for specified bond.","operationId":"getBondAccounts","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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/QueryBondAccountDto"}},{"name":"filter","required":false,"in":"query","style":"deepObject","explode":true,"schema":{"$ref":"#/components/schemas/FilterBondAccountDto"}},{"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/BondAccountBalanceDto"}}},"required":["pagination","items"]}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"QueryBondAccountDto":{"type":"object","properties":{"heldAt":{"format":"date-time","type":"string","description":"Get bond accounts by the end day they were held. (skip the property for current holdings)"}}},"FilterBondAccountDto":{"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"]},"BondAccountBalanceDto":{"type":"object","properties":{"accountAddress":{"type":"string","description":"Account address","format":"xrp-address","pattern":"r[0-9a-zA-Z]{24,34}"},"amount":{"format":"int64","description":"Bond amount held by the account.\n\nScaled as `ExponentScaledDecimal`.","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 bond coupons

> Get a paginated list of bonds coupons

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/coupons":{"get":{"description":"Get a paginated list of bonds coupons","operationId":"getBondCoupons","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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/FilterCouponDto"}},{"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":{"no":{"type":"string","enum":["asc","desc"]}},"required":["no"]},{"properties":{"recordAt":{"type":"string","enum":["asc","desc"]}},"required":["recordAt"]},{"properties":{"payAt":{"type":"string","enum":["asc","desc"]}},"required":["payAt"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, no, recordAt, payAt"}],"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/CouponDto"}}},"required":["pagination","items"]}}}}},"summary":"Get bond coupons","tags":["Bonds"]}}},"components":{"schemas":{"FilterCouponDto":{"type":"object","properties":{"id":{"description":"Filter by coupon 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"}]},"status":{"description":"Filter by coupon status(es)","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/CouponStatus"},"minItems":1},{"$ref":"#/components/schemas/CouponStatus"}]},"recordAt":{"format":"date-time","description":"Filter coupons 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"}]},"payAt":{"format":"date-time","description":"Filter coupons payable from date or between two dates","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]}}},"CouponStatus":{"type":"string","enum":["paid","readyToPay","upcoming","paying","noFunds"],"description":"Coupon status"},"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"]},"CouponDto":{"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":"Coupon UUID identifier, global in scope of TSS","format":"uuid"},"no":{"type":"number","description":"Coupon №"},"bondId":{"type":"string","description":"Bond UUID, unique in scope of this node","format":"uuid"},"status":{"description":"Coupon status","allOf":[{"$ref":"#/components/schemas/CouponStatus"}]},"totalPayment":{"format":"int64","description":"Total payment of coupon, in the bond currency.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"interestRate":{"nullable":true,"description":"Annual interest rate applicable to this coupon period. Null when not yet set.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"recordAt":{"format":"date-time","type":"string","description":"Date of coupon's period end, bond holders are recorded."},"payAt":{"format":"date-time","type":"string","description":"Date of coupon's payment, must be later than record date."}},"required":["createdAt","updatedAt","id","no","bondId","status","totalPayment","interestRate","recordAt","payAt"]},"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 /bonds/{bondId}/coupons/{couponId}/payments

> Retrieve a list of bond coupon payments.

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/coupons/{couponId}/payments":{"get":{"description":"Retrieve a list of bond coupon payments.","operationId":"getBondCouponPayments","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"couponId","required":true,"in":"path","description":"Coupon 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/FilterCouponPaymentDto"}},{"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":{"bondAmount":{"type":"string","enum":["asc","desc"]}},"required":["bondAmount"]},{"properties":{"payoutAmount":{"type":"string","enum":["asc","desc"]}},"required":["payoutAmount"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, bondAmount, 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/CouponPaymentDto"}}},"required":["pagination","items"]}}}}},"summary":"","tags":["Bonds"]}}},"components":{"schemas":{"FilterCouponPaymentDto":{"type":"object","properties":{"id":{"description":"Filter by coupon payment 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"}]},"status":{"description":"Filter by coupon payment status(es)","oneOf":[{"type":"array","items":{"$ref":"#/components/schemas/CouponPaymentStatus"},"minItems":1},{"$ref":"#/components/schemas/CouponPaymentStatus"}]},"receiverAddress":{"description":"Filter by partial receiver address or list of receiver 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"}]},"createdAt":{"format":"date-time","description":"Filter coupon payments created from date or between two dates","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]}}},"CouponPaymentStatus":{"type":"string","enum":["paid","unpaid"],"description":"Status of the coupon payment"},"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"]},"CouponPaymentDto":{"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":"Coupon payment UUID identifier, unique in scope of this node","format":"uuid"},"status":{"description":"Status of the coupon payment","allOf":[{"$ref":"#/components/schemas/CouponPaymentStatus"}]},"receiverAddress":{"type":"string","description":"Payment`s receiver address corresponding to the investor account address"},"bondAmount":{"format":"int64","description":"Bond amount for this coupon payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"payoutAmount":{"format":"int64","description":"Amount to pay for this payment.\n\nScaled as `ExponentScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ExponentScaledDecimal"}]},"couponId":{"type":"string","description":"Id of the coupon this payment is created from","format":"uuid"}},"required":["createdAt","updatedAt","id","status","receiverAddress","bondAmount","payoutAmount","couponId"]},"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 bond distribution

> Get bond's distribution by its id

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/distributions/{distributionId}":{"get":{"description":"Get bond's distribution by its id","operationId":"getDistribution","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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 bond distribution","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DistributionDto"}}}}},"summary":"Get bond distribution","tags":["Bonds"]}}},"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 bond distribution FOPs

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

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/distributions/{distributionId}/fops":{"get":{"description":"Get a paginated list of FOP sub-entries for a specific bond distribution","operationId":"getBondDistributionFops","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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 bond 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 bond distribution FOPs","tags":["Bonds"]}}},"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 bond interest

> Get a paginated list of daily accrued interest entries for a bond

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/interest":{"get":{"description":"Get a paginated list of daily accrued interest entries for a bond","operationId":"getBondInterest","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond 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/FilterInterestDto"}},{"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"]},{"properties":{"elapsedDays":{"type":"string","enum":["asc","desc"]}},"required":["elapsedDays"]},{"properties":{"accruedPct":{"type":"string","enum":["asc","desc"]}},"required":["accruedPct"]}]}}}},"description":"Array of fields and directions to order. Supported fields: createdAt, date, elapsedDays, accruedPct"}],"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/InterestDto"}}},"required":["pagination","items"]}}}}},"summary":"Get bond interest","tags":["Bonds"]}}},"components":{"schemas":{"FilterInterestDto":{"type":"object","properties":{"date":{"format":"date-time","description":"Filter by date or date range","oneOf":[{"type":"array","items":{"type":"string","format":"date-time"},"minItems":1,"maxItems":2},{"type":"string","format":"date-time"}]}}},"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"]},"InterestDto":{"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":"Bond interest UUID identifier, unique in scope of this node","format":"uuid"},"bondId":{"type":"string","description":"Bond UUID","format":"uuid"},"couponId":{"type":"string","description":"Coupon UUID anchoring this accrual period","format":"uuid"},"date":{"type":"string","description":"Calendar date of this interest entry (YYYY-MM-DD)"},"elapsedDays":{"type":"number","description":"Day-count numerator: elapsed days from the coupon start to this date under the bond day-count convention."},"pct":{"format":"int64","description":"Daily accrued interest, as a percentage.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"amount":{"format":"int64","description":"Daily accrued interest, in the bond currency.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"accruedPct":{"format":"int64","description":"Cumulative accrued interest inclusive of this day, as a percentage.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"accruedAmount":{"format":"int64","description":"Cumulative accrued interest inclusive of this day, in the bond currency.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]}},"required":["createdAt","updatedAt","id","bondId","couponId","date","elapsedDays","pct","amount","accruedPct","accruedAmount"]},"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 bond interest by date

> Get accrued interest for a bond on a specific date

```json
{"openapi":"3.1.0","info":{"title":"Axiology TSS Broker Node API","version":"0.0.1"},"paths":{"/bonds/{bondId}/interest/{date}":{"get":{"description":"Get accrued interest for a bond on a specific date","operationId":"getBondInterestByDate","parameters":[{"name":"bondId","required":true,"in":"path","description":"Bond UUID identifier, global in scope of TSS","schema":{"format":"uuid","type":"string"}},{"name":"date","required":true,"in":"path","description":"Any valid date or datetime string (e.g. \"2025-01-06\" or \"2025-01-06T14:30:00Z\")","schema":{"format":"date-time","type":"string"}}],"responses":{"200":{"description":"Accrued interest for the bond on the given date","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InterestDto"}}}}},"summary":"Get bond interest by date","tags":["Bonds"]}}},"components":{"schemas":{"InterestDto":{"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":"Bond interest UUID identifier, unique in scope of this node","format":"uuid"},"bondId":{"type":"string","description":"Bond UUID","format":"uuid"},"couponId":{"type":"string","description":"Coupon UUID anchoring this accrual period","format":"uuid"},"date":{"type":"string","description":"Calendar date of this interest entry (YYYY-MM-DD)"},"elapsedDays":{"type":"number","description":"Day-count numerator: elapsed days from the coupon start to this date under the bond day-count convention."},"pct":{"format":"int64","description":"Daily accrued interest, as a percentage.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"amount":{"format":"int64","description":"Daily accrued interest, in the bond currency.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"accruedPct":{"format":"int64","description":"Cumulative accrued interest inclusive of this day, as a percentage.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]},"accruedAmount":{"format":"int64","description":"Cumulative accrued interest inclusive of this day, in the bond currency.\n\nScaled as `ScaledDecimal`.","allOf":[{"$ref":"#/components/schemas/ScaledDecimal"}]}},"required":["createdAt","updatedAt","id","bondId","couponId","date","elapsedDays","pct","amount","accruedPct","accruedAmount"]},"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."}}}}
```


---

# 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/bonds.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.
