-
Notifications
You must be signed in to change notification settings - Fork 0
/
public-api.json
1 lines (1 loc) · 16.8 KB
/
public-api.json
1
{"openapi":"3.0.3","info":{"title":"XFT Public API","version":"v0"},"paths":{"/funds/{fundId}":{"get":{"operationId":"getFund","tags":["Funds"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"cutOffHour":{"type":"number","description":"a number"},"id":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"slug":{"type":"string","description":"a non empty string","minLength":1},"timezone":{"type":"string","enum":["Europe/Paris","Europe/Dublin","Europe/London","Europe/Luxembourg"]},"executionMethod":{"type":"string","enum":["knownNAVs","unknownNAVs"]},"nonOperatingDays":{"type":"array","items":{"type":"string","description":"a valid Date","format":"date-time"}},"launchDay":{"type":"string","description":"a valid Date","format":"date-time"},"adminEmail":{"type":"string","description":"A valid Email address","pattern":"^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$"}},"required":["cutOffHour","id","slug","timezone","executionMethod","nonOperatingDays","launchDay","adminEmail"]}}}}},"parameters":[{"name":"fundId","in":"path","schema":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"required":true,"description":"a Universally Unique Identifier"}]}},"/funds/":{"get":{"operationId":"getAllFunds","tags":["Funds"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"cutOffHour":{"type":"number","description":"a number"},"id":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"slug":{"type":"string","description":"a non empty string","minLength":1},"timezone":{"type":"string","enum":["Europe/Paris","Europe/Dublin","Europe/London","Europe/Luxembourg"]},"executionMethod":{"type":"string","enum":["knownNAVs","unknownNAVs"]},"nonOperatingDays":{"type":"array","items":{"type":"string","description":"a valid Date","format":"date-time"}},"launchDay":{"type":"string","description":"a valid Date","format":"date-time"},"adminEmail":{"type":"string","description":"A valid Email address","pattern":"^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$"}},"required":["cutOffHour","id","slug","timezone","executionMethod","nonOperatingDays","launchDay","adminEmail"]}}}}}}}},"/funds/{fundId}/data":{"get":{"operationId":"getFundData","tags":["Funds"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"data":{"type":"object","properties":{"en":{"type":"object","additionalProperties":{"type":"string","description":"a string"}},"fr":{"type":"object","additionalProperties":{"type":"string","description":"a string"}}},"required":["en","fr"]}},"required":["id","data"]}}}}},"parameters":[{"name":"fundId","in":"path","schema":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"required":true,"description":"a Universally Unique Identifier"}]}},"/share-classes/":{"get":{"operationId":"getAllShareClasses","tags":["Share Classes"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"symbol":{"type":"string","description":"a string"},"id":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"fundId":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"isin":{"type":"string","description":"A valid ISIN"},"navDecimals":{"type":"integer","description":"a number between 0 and 20","maximum":20,"minimum":0},"shareDecimals":{"type":"integer","description":"a number between 0 and 20","maximum":20,"minimum":0},"currency":{"type":"string","enum":["EUR","USD","GBP","CHF","JPY","SGD","___"]},"tokens":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"number","enum":[1,11155111,137,80002,84532]},"address":{"type":"string","description":"A valid Ethereum address"}},"required":["chainId","address"]}},"useOfIncome":{"type":"string","enum":["accumulating","distributing"]},"minimumInitialSubscription":{"type":"string","description":"a non-negative BigDecimal"},"minimumSubsequentSubscription":{"type":"string","description":"a non-negative BigDecimal"},"minimumRedemption":{"type":"string","description":"a non-negative BigDecimal"},"subscriptionFees":{"type":"string","description":"a non-negative BigDecimal"},"redemptionFees":{"type":"string","description":"a non-negative BigDecimal"},"managementFees":{"type":"string","description":"a non-negative BigDecimal"},"managementFeesAreWaived":{"type":"boolean","description":"a boolean"},"administrativeFees":{"type":"string","description":"a non-negative BigDecimal"},"bankAccountNumber":{"type":"string","description":"A valid IBAN"},"bankAccountBic":{"type":"string","description":"A valid BIC"}},"required":["symbol","id","fundId","isin","navDecimals","shareDecimals","currency","tokens","useOfIncome","minimumInitialSubscription","minimumSubsequentSubscription","minimumRedemption","subscriptionFees","redemptionFees","managementFees","administrativeFees","bankAccountNumber","bankAccountBic"]}}}}}}}},"/share-classes/{shareClassSymbol}":{"get":{"operationId":"getShareClass","tags":["Share Classes"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"symbol":{"type":"string","description":"a string"},"id":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"fundId":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"isin":{"type":"string","description":"A valid ISIN"},"navDecimals":{"type":"integer","description":"a number between 0 and 20","maximum":20,"minimum":0},"shareDecimals":{"type":"integer","description":"a number between 0 and 20","maximum":20,"minimum":0},"currency":{"type":"string","enum":["EUR","USD","GBP","CHF","JPY","SGD","___"]},"tokens":{"type":"array","items":{"type":"object","properties":{"chainId":{"type":"number","enum":[1,11155111,137,80002,84532]},"address":{"type":"string","description":"A valid Ethereum address"}},"required":["chainId","address"]}},"useOfIncome":{"type":"string","enum":["accumulating","distributing"]},"minimumInitialSubscription":{"type":"string","description":"a non-negative BigDecimal"},"minimumSubsequentSubscription":{"type":"string","description":"a non-negative BigDecimal"},"minimumRedemption":{"type":"string","description":"a non-negative BigDecimal"},"subscriptionFees":{"type":"string","description":"a non-negative BigDecimal"},"redemptionFees":{"type":"string","description":"a non-negative BigDecimal"},"managementFees":{"type":"string","description":"a non-negative BigDecimal"},"managementFeesAreWaived":{"type":"boolean","description":"a boolean"},"administrativeFees":{"type":"string","description":"a non-negative BigDecimal"},"bankAccountNumber":{"type":"string","description":"A valid IBAN"},"bankAccountBic":{"type":"string","description":"A valid BIC"}},"required":["symbol","id","fundId","isin","navDecimals","shareDecimals","currency","tokens","useOfIncome","minimumInitialSubscription","minimumSubsequentSubscription","minimumRedemption","subscriptionFees","redemptionFees","managementFees","administrativeFees","bankAccountNumber","bankAccountBic"]}}}}},"parameters":[{"name":"shareClassSymbol","in":"path","schema":{"type":"string","description":"a string"},"required":true,"description":"a string"}]}},"/share-classes/{shareClassSymbol}/data":{"get":{"operationId":"getShareClassData","tags":["Share Classes"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"data":{"type":"object","properties":{"en":{"type":"object","properties":{"name":{"type":"string","description":"a non empty string","minLength":1},"dashboardName":{"type":"string","description":"a non empty string","minLength":1},"description":{"type":"string","description":"a non empty string","minLength":1},"howItWorks":{"type":"object","properties":{"standard":{"type":"string","description":"a non empty string","minLength":1},"web3":{"type":"string","description":"a non empty string","minLength":1}},"required":["standard","web3"]},"investmentPolicy":{"type":"string","description":"a non empty string","minLength":1},"protection":{"type":"object","properties":{"standard":{"type":"string","description":"a non empty string","minLength":1},"web3":{"type":"string","description":"a non empty string","minLength":1}},"required":["standard","web3"]},"executionPolicy":{"type":"object","properties":{"standard":{"type":"string","description":"a non empty string","minLength":1},"web3":{"type":"string","description":"a non empty string","minLength":1}},"required":["standard","web3"]},"tooltipManagementFees":{"type":"object","properties":{"titleTooltip":{"type":"string","description":"a non empty string","minLength":1},"valueTooltip":{"type":"string","description":"a non empty string","minLength":1},"valueTooltipWhenWaived":{"type":"string","description":"a non empty string","minLength":1}},"required":["titleTooltip","valueTooltip"]},"tooltipAdministrativeFees":{"type":"string","description":"a non empty string","minLength":1}},"required":["name","dashboardName","description","howItWorks","investmentPolicy","protection","executionPolicy","tooltipManagementFees","tooltipAdministrativeFees"]},"fr":{"type":"object","properties":{"name":{"type":"string","description":"a non empty string","minLength":1},"dashboardName":{"type":"string","description":"a non empty string","minLength":1},"description":{"type":"string","description":"a non empty string","minLength":1},"howItWorks":{"type":"object","properties":{"standard":{"type":"string","description":"a non empty string","minLength":1},"web3":{"type":"string","description":"a non empty string","minLength":1}},"required":["standard","web3"]},"investmentPolicy":{"type":"string","description":"a non empty string","minLength":1},"protection":{"type":"object","properties":{"standard":{"type":"string","description":"a non empty string","minLength":1},"web3":{"type":"string","description":"a non empty string","minLength":1}},"required":["standard","web3"]},"executionPolicy":{"type":"object","properties":{"standard":{"type":"string","description":"a non empty string","minLength":1},"web3":{"type":"string","description":"a non empty string","minLength":1}},"required":["standard","web3"]},"tooltipManagementFees":{"type":"object","properties":{"titleTooltip":{"type":"string","description":"a non empty string","minLength":1},"valueTooltip":{"type":"string","description":"a non empty string","minLength":1},"valueTooltipWhenWaived":{"type":"string","description":"a non empty string","minLength":1}},"required":["titleTooltip","valueTooltip"]},"tooltipAdministrativeFees":{"type":"string","description":"a non empty string","minLength":1}},"required":["name","dashboardName","description","howItWorks","investmentPolicy","protection","executionPolicy","tooltipManagementFees","tooltipAdministrativeFees"]}},"required":["en","fr"]}},"required":["id","data"]}}}}},"parameters":[{"name":"shareClassSymbol","in":"path","schema":{"type":"string","description":"a string"},"required":true,"description":"a string"}]}},"/share-classes/{shareClassSymbol}/yield":{"get":{"operationId":"getCurrentYield","tags":["Share Classes"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"shareClassId":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"value":{"type":"string","description":"a string"},"updatedAt":{"type":"string","description":"a valid Date","format":"date-time"},"nextYieldTimestamp":{"type":"string","description":"a non-negative bigint"}},"required":["shareClassId","value","updatedAt","nextYieldTimestamp"]}}}}},"parameters":[{"name":"shareClassSymbol","in":"path","schema":{"type":"string","description":"a string"},"required":true,"description":"a string"}]}},"/share-classes/{shareClassSymbol}/totals":{"get":{"operationId":"getShareClassTotals","tags":["Share Classes"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"numberOfHolders":{"type":"number","description":"a number"},"totalShares":{"type":"string","description":"a string"},"totalAssets":{"$ref":"#/components/schemas/NonNegativeAmount"},"netAssetValue":{"type":"object","properties":{"shareClassId":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"day":{"type":"string","description":"a valid Date","format":"date-time"},"amount":{"$ref":"#/components/schemas/NonNegativeAmount"},"updatedAt":{"type":"string","description":"a valid Date","format":"date-time"}},"required":["shareClassId","day","amount","updatedAt"]},"yield":{"type":"object","properties":{"shareClassId":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"value":{"type":"string","description":"a string"},"updatedAt":{"type":"string","description":"a valid Date","format":"date-time"},"nextYieldTimestamp":{"type":"string","description":"a non-negative bigint"}},"required":["shareClassId","value","updatedAt","nextYieldTimestamp"]}},"required":["numberOfHolders","totalShares","totalAssets","netAssetValue","yield"]}}}}},"parameters":[{"name":"shareClassSymbol","in":"path","schema":{"type":"string","description":"a string"},"required":true,"description":"a string"}]}},"/net-asset-values/{shareClassSymbol}/{day}":{"get":{"operationId":"getNetAssetValue","tags":["Net Asset Values"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"shareClassId":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"day":{"type":"string","description":"a valid Date","format":"date-time"},"amount":{"$ref":"#/components/schemas/NonNegativeAmount"},"updatedAt":{"type":"string","description":"a valid Date","format":"date-time"}},"required":["shareClassId","day","amount","updatedAt"]}}}}},"parameters":[{"name":"shareClassSymbol","in":"path","schema":{"type":"string","description":"a string"},"required":true,"description":"a string"},{"name":"day","in":"path","schema":{"type":"string","description":"Day formatted as yyyy-MM-dd"},"required":true,"description":"Day formatted as yyyy-MM-dd"}]}},"/net-asset-values/{shareClassSymbol}/latest":{"get":{"operationId":"getLatestNetAssetValue","tags":["Net Asset Values"],"responses":{"200":{"description":"Response 200","content":{"application/json":{"schema":{"type":"object","properties":{"shareClassId":{"type":"string","description":"a Universally Unique Identifier","pattern":"^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"},"day":{"type":"string","description":"a valid Date","format":"date-time"},"amount":{"$ref":"#/components/schemas/NonNegativeAmount"},"updatedAt":{"type":"string","description":"a valid Date","format":"date-time"}},"required":["shareClassId","day","amount","updatedAt"]}}}}},"parameters":[{"name":"shareClassSymbol","in":"path","schema":{"type":"string","description":"a string"},"required":true,"description":"a string"}]}}},"tags":[{"name":"Funds"},{"name":"Share Classes"},{"name":"Net Asset Values"}],"servers":[{"url":"https://public-api.XFT.finance/v0"}],"components":{"schemas":{"NonNegativeAmount":{"type":"object","properties":{"value":{"type":"string","description":"a non-negative BigDecimal"},"currency":{"type":"string","enum":["EUR","USD","GBP","CHF","JPY","SGD","___"]}},"required":["value","currency"]}}}}