@brokerize/client 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (512) hide show
  1. package/README.md +89 -0
  2. package/dist/apiCtx.d.ts +71 -0
  3. package/dist/apiCtx.js +86 -0
  4. package/dist/authorizedApiContext.d.ts +137 -0
  5. package/dist/authorizedApiContext.js +407 -0
  6. package/dist/client.d.ts +13144 -0
  7. package/dist/dependencyDefinitions/abortController.d.ts +16 -0
  8. package/dist/dependencyDefinitions/abortController.js +2 -0
  9. package/dist/dependencyDefinitions/abortSignal.d.ts +13 -0
  10. package/dist/dependencyDefinitions/abortSignal.js +2 -0
  11. package/dist/dependencyDefinitions/fetch.d.ts +160 -0
  12. package/dist/dependencyDefinitions/fetch.js +2 -0
  13. package/dist/dependencyDefinitions/readableStream.d.ts +68 -0
  14. package/dist/dependencyDefinitions/readableStream.js +1 -0
  15. package/dist/dependencyDefinitions/textDecoder.d.ts +39 -0
  16. package/dist/dependencyDefinitions/textDecoder.js +1 -0
  17. package/dist/dependencyDefinitions/webSocket.d.ts +182 -0
  18. package/dist/dependencyDefinitions/webSocket.js +2 -0
  19. package/dist/dependencyDefinitions/xmlHttpRequest.d.ts +245 -0
  20. package/dist/dependencyDefinitions/xmlHttpRequest.js +2 -0
  21. package/dist/errors.d.ts +67 -0
  22. package/dist/errors.js +25 -0
  23. package/dist/index.d.ts +41 -0
  24. package/dist/index.js +101 -0
  25. package/dist/modelExports.d.ts +154 -0
  26. package/dist/modelExports.js +21 -0
  27. package/dist/pollingSubscription.d.ts +14 -0
  28. package/dist/pollingSubscription.js +53 -0
  29. package/dist/swagger/apis/AdminApi.d.ts +129 -0
  30. package/dist/swagger/apis/AdminApi.js +389 -0
  31. package/dist/swagger/apis/BrokerLoginApi.d.ts +59 -0
  32. package/dist/swagger/apis/BrokerLoginApi.js +169 -0
  33. package/dist/swagger/apis/CancelOrderApi.d.ts +41 -0
  34. package/dist/swagger/apis/CancelOrderApi.js +100 -0
  35. package/dist/swagger/apis/ChangeOrderApi.d.ts +53 -0
  36. package/dist/swagger/apis/ChangeOrderApi.js +141 -0
  37. package/dist/swagger/apis/DefaultApi.d.ts +228 -0
  38. package/dist/swagger/apis/DefaultApi.js +787 -0
  39. package/dist/swagger/apis/DemobrokerApi.d.ts +58 -0
  40. package/dist/swagger/apis/DemobrokerApi.js +157 -0
  41. package/dist/swagger/apis/ExportApi.d.ts +28 -0
  42. package/dist/swagger/apis/ExportApi.js +57 -0
  43. package/dist/swagger/apis/MetaApi.d.ts +53 -0
  44. package/dist/swagger/apis/MetaApi.js +128 -0
  45. package/dist/swagger/apis/SecuritiesApi.d.ts +39 -0
  46. package/dist/swagger/apis/SecuritiesApi.js +91 -0
  47. package/dist/swagger/apis/TradeApi.d.ts +98 -0
  48. package/dist/swagger/apis/TradeApi.js +312 -0
  49. package/dist/swagger/apis/TradeDraftApi.d.ts +74 -0
  50. package/dist/swagger/apis/TradeDraftApi.js +203 -0
  51. package/dist/swagger/apis/UserApi.d.ts +51 -0
  52. package/dist/swagger/apis/UserApi.js +152 -0
  53. package/dist/swagger/apis/index.d.ts +12 -0
  54. package/dist/swagger/apis/index.js +14 -0
  55. package/dist/swagger/index.d.ts +3 -0
  56. package/dist/swagger/index.js +5 -0
  57. package/dist/swagger/models/AccessTokenItem.d.ts +45 -0
  58. package/dist/swagger/models/AccessTokenItem.js +43 -0
  59. package/dist/swagger/models/AccessTokenResult.d.ts +33 -0
  60. package/dist/swagger/models/AccessTokenResult.js +39 -0
  61. package/dist/swagger/models/AddOAuthReturnToUrlRequest.d.ts +27 -0
  62. package/dist/swagger/models/AddOAuthReturnToUrlRequest.js +37 -0
  63. package/dist/swagger/models/AddOriginRequest.d.ts +27 -0
  64. package/dist/swagger/models/AddOriginRequest.js +37 -0
  65. package/dist/swagger/models/AddSessionCompleteChallengeParams.d.ts +33 -0
  66. package/dist/swagger/models/AddSessionCompleteChallengeParams.js +39 -0
  67. package/dist/swagger/models/AddSessionParams.d.ts +45 -0
  68. package/dist/swagger/models/AddSessionParams.js +43 -0
  69. package/dist/swagger/models/Amount.d.ts +72 -0
  70. package/dist/swagger/models/Amount.js +50 -0
  71. package/dist/swagger/models/AuthInfo.d.ts +54 -0
  72. package/dist/swagger/models/AuthInfo.js +53 -0
  73. package/dist/swagger/models/AuthMethod.d.ts +28 -0
  74. package/dist/swagger/models/AuthMethod.js +51 -0
  75. package/dist/swagger/models/AuthMethodChallengeResponse.d.ts +94 -0
  76. package/dist/swagger/models/AuthMethodChallengeResponse.js +68 -0
  77. package/dist/swagger/models/AuthMethodChallengeResponseAllOf.d.ts +34 -0
  78. package/dist/swagger/models/AuthMethodChallengeResponseAllOf.js +44 -0
  79. package/dist/swagger/models/AuthMethodChallengeResponseSpecifics.d.ts +70 -0
  80. package/dist/swagger/models/AuthMethodChallengeResponseSpecifics.js +64 -0
  81. package/dist/swagger/models/AuthMethodDecoupled.d.ts +62 -0
  82. package/dist/swagger/models/AuthMethodDecoupled.js +56 -0
  83. package/dist/swagger/models/AuthMethodDecoupledAllOf.d.ts +34 -0
  84. package/dist/swagger/models/AuthMethodDecoupledAllOf.js +44 -0
  85. package/dist/swagger/models/AuthMethodDecoupledSpecifics.d.ts +46 -0
  86. package/dist/swagger/models/AuthMethodDecoupledSpecifics.js +48 -0
  87. package/dist/swagger/models/AuthMethodFlow.d.ts +23 -0
  88. package/dist/swagger/models/AuthMethodFlow.js +30 -0
  89. package/dist/swagger/models/AuthMethodTan.d.ts +67 -0
  90. package/dist/swagger/models/AuthMethodTan.js +58 -0
  91. package/dist/swagger/models/AuthMethodTanAllOf.d.ts +34 -0
  92. package/dist/swagger/models/AuthMethodTanAllOf.js +44 -0
  93. package/dist/swagger/models/AuthMethodTanSpecifics.d.ts +52 -0
  94. package/dist/swagger/models/AuthMethodTanSpecifics.js +52 -0
  95. package/dist/swagger/models/AvailablePermissionsNode.d.ts +39 -0
  96. package/dist/swagger/models/AvailablePermissionsNode.js +46 -0
  97. package/dist/swagger/models/BitpandaClientCfg.d.ts +33 -0
  98. package/dist/swagger/models/BitpandaClientCfg.js +44 -0
  99. package/dist/swagger/models/BrokerClientCfg.d.ts +28 -0
  100. package/dist/swagger/models/BrokerClientCfg.js +41 -0
  101. package/dist/swagger/models/BrokerEnvFilterType.d.ts +24 -0
  102. package/dist/swagger/models/BrokerEnvFilterType.js +31 -0
  103. package/dist/swagger/models/BrokerEnvironment.d.ts +39 -0
  104. package/dist/swagger/models/BrokerEnvironment.js +41 -0
  105. package/dist/swagger/models/BrokerLoginForm.d.ts +34 -0
  106. package/dist/swagger/models/BrokerLoginForm.js +40 -0
  107. package/dist/swagger/models/BrokerLoginFormField.d.ts +41 -0
  108. package/dist/swagger/models/BrokerLoginFormField.js +46 -0
  109. package/dist/swagger/models/BrokerMeta.d.ts +74 -0
  110. package/dist/swagger/models/BrokerMeta.js +60 -0
  111. package/dist/swagger/models/BrokerMetaFeatures.d.ts +53 -0
  112. package/dist/swagger/models/BrokerMetaFeatures.js +55 -0
  113. package/dist/swagger/models/BrokerMetaImages.d.ts +45 -0
  114. package/dist/swagger/models/BrokerMetaImages.js +43 -0
  115. package/dist/swagger/models/CancelOrderChallengeParams.d.ts +27 -0
  116. package/dist/swagger/models/CancelOrderChallengeParams.js +37 -0
  117. package/dist/swagger/models/CancelOrderChallengeResponse.d.ts +52 -0
  118. package/dist/swagger/models/CancelOrderChallengeResponse.js +50 -0
  119. package/dist/swagger/models/CancelOrderChallengeResponseAllOf.d.ts +34 -0
  120. package/dist/swagger/models/CancelOrderChallengeResponseAllOf.js +44 -0
  121. package/dist/swagger/models/CancelOrderChallengeResponseSpecifics.d.ts +39 -0
  122. package/dist/swagger/models/CancelOrderChallengeResponseSpecifics.js +44 -0
  123. package/dist/swagger/models/CancelOrderParams.d.ts +25 -0
  124. package/dist/swagger/models/CancelOrderParams.js +46 -0
  125. package/dist/swagger/models/CancelOrderParamsMode.d.ts +22 -0
  126. package/dist/swagger/models/CancelOrderParamsMode.js +29 -0
  127. package/dist/swagger/models/CashAccount.d.ts +51 -0
  128. package/dist/swagger/models/CashAccount.js +43 -0
  129. package/dist/swagger/models/CashAccountQuotes.d.ts +40 -0
  130. package/dist/swagger/models/CashAccountQuotes.js +49 -0
  131. package/dist/swagger/models/CashQuotation.d.ts +27 -0
  132. package/dist/swagger/models/CashQuotation.js +34 -0
  133. package/dist/swagger/models/Challenge.d.ts +53 -0
  134. package/dist/swagger/models/Challenge.js +53 -0
  135. package/dist/swagger/models/ChangeOrderChallengeParams.d.ts +34 -0
  136. package/dist/swagger/models/ChangeOrderChallengeParams.js +40 -0
  137. package/dist/swagger/models/ChangeOrderParams.d.ts +46 -0
  138. package/dist/swagger/models/ChangeOrderParams.js +47 -0
  139. package/dist/swagger/models/ClientConfig.d.ts +117 -0
  140. package/dist/swagger/models/ClientConfig.js +80 -0
  141. package/dist/swagger/models/ClientConfigMaintenanceStatus.d.ts +33 -0
  142. package/dist/swagger/models/ClientConfigMaintenanceStatus.js +44 -0
  143. package/dist/swagger/models/ClientConfigUpdate.d.ts +150 -0
  144. package/dist/swagger/models/ClientConfigUpdate.js +121 -0
  145. package/dist/swagger/models/ClientConfigUpdateOAuthLoginForm.d.ts +69 -0
  146. package/dist/swagger/models/ClientConfigUpdateOAuthLoginForm.js +68 -0
  147. package/dist/swagger/models/ClientConfigUpdatePage.d.ts +51 -0
  148. package/dist/swagger/models/ClientConfigUpdatePage.js +48 -0
  149. package/dist/swagger/models/ClientConfigUpdateRateLimitPointsToConsume.d.ts +33 -0
  150. package/dist/swagger/models/ClientConfigUpdateRateLimitPointsToConsume.js +42 -0
  151. package/dist/swagger/models/ClientsResponseInner.d.ts +40 -0
  152. package/dist/swagger/models/ClientsResponseInner.js +42 -0
  153. package/dist/swagger/models/ConfirmOAuthParams.d.ts +33 -0
  154. package/dist/swagger/models/ConfirmOAuthParams.js +39 -0
  155. package/dist/swagger/models/ConfirmOAuthResponse.d.ts +27 -0
  156. package/dist/swagger/models/ConfirmOAuthResponse.js +37 -0
  157. package/dist/swagger/models/CostDetailsLink.d.ts +39 -0
  158. package/dist/swagger/models/CostDetailsLink.js +42 -0
  159. package/dist/swagger/models/CreateAccessTokenParams.d.ts +44 -0
  160. package/dist/swagger/models/CreateAccessTokenParams.js +41 -0
  161. package/dist/swagger/models/CreateClient200Response.d.ts +33 -0
  162. package/dist/swagger/models/CreateClient200Response.js +39 -0
  163. package/dist/swagger/models/CreateGuestUserResponse.d.ts +59 -0
  164. package/dist/swagger/models/CreateGuestUserResponse.js +52 -0
  165. package/dist/swagger/models/CreateModeSessionTan.d.ts +34 -0
  166. package/dist/swagger/models/CreateModeSessionTan.js +43 -0
  167. package/dist/swagger/models/CreateModeSessionTanAllOf.d.ts +34 -0
  168. package/dist/swagger/models/CreateModeSessionTanAllOf.js +44 -0
  169. package/dist/swagger/models/CreateOrderChallengeParams.d.ts +41 -0
  170. package/dist/swagger/models/CreateOrderChallengeParams.js +45 -0
  171. package/dist/swagger/models/CreateOrderParams.d.ts +53 -0
  172. package/dist/swagger/models/CreateOrderParams.js +51 -0
  173. package/dist/swagger/models/CreateTanChallengeParams.d.ts +27 -0
  174. package/dist/swagger/models/CreateTanChallengeParams.js +37 -0
  175. package/dist/swagger/models/CreateTradeDrafts200Response.d.ts +27 -0
  176. package/dist/swagger/models/CreateTradeDrafts200Response.js +37 -0
  177. package/dist/swagger/models/CreateTradeResponse.d.ts +27 -0
  178. package/dist/swagger/models/CreateTradeResponse.js +38 -0
  179. package/dist/swagger/models/CreatedResponseBody.d.ts +33 -0
  180. package/dist/swagger/models/CreatedResponseBody.js +39 -0
  181. package/dist/swagger/models/DecoupledOperationState.d.ts +24 -0
  182. package/dist/swagger/models/DecoupledOperationState.js +31 -0
  183. package/dist/swagger/models/DecoupledOperationStatus.d.ts +34 -0
  184. package/dist/swagger/models/DecoupledOperationStatus.js +41 -0
  185. package/dist/swagger/models/DefaultOrderValidityByOrderModel.d.ts +94 -0
  186. package/dist/swagger/models/DefaultOrderValidityByOrderModel.js +85 -0
  187. package/dist/swagger/models/DemoAccount.d.ts +40 -0
  188. package/dist/swagger/models/DemoAccount.js +42 -0
  189. package/dist/swagger/models/DemoAccountSettings.d.ts +51 -0
  190. package/dist/swagger/models/DemoAccountSettings.js +50 -0
  191. package/dist/swagger/models/DemoAccountsResponse.d.ts +28 -0
  192. package/dist/swagger/models/DemoAccountsResponse.js +38 -0
  193. package/dist/swagger/models/Direction.d.ts +22 -0
  194. package/dist/swagger/models/Direction.js +29 -0
  195. package/dist/swagger/models/EnableSessionTanParams.d.ts +28 -0
  196. package/dist/swagger/models/EnableSessionTanParams.js +51 -0
  197. package/dist/swagger/models/EnableSessionTanParamsChallengeResponse.d.ts +52 -0
  198. package/dist/swagger/models/EnableSessionTanParamsChallengeResponse.js +49 -0
  199. package/dist/swagger/models/EnableSessionTanParamsChallengeResponseAllOf.d.ts +34 -0
  200. package/dist/swagger/models/EnableSessionTanParamsChallengeResponseAllOf.js +44 -0
  201. package/dist/swagger/models/EnableSessionTanParamsChallengeResponseSpecifics.d.ts +39 -0
  202. package/dist/swagger/models/EnableSessionTanParamsChallengeResponseSpecifics.js +44 -0
  203. package/dist/swagger/models/EnableSessionTanParamsDecoupled.d.ts +40 -0
  204. package/dist/swagger/models/EnableSessionTanParamsDecoupled.js +45 -0
  205. package/dist/swagger/models/EnableSessionTanParamsDecoupledAllOf.d.ts +34 -0
  206. package/dist/swagger/models/EnableSessionTanParamsDecoupledAllOf.js +44 -0
  207. package/dist/swagger/models/EnableSessionTanParamsDecoupledSpecifics.d.ts +27 -0
  208. package/dist/swagger/models/EnableSessionTanParamsDecoupledSpecifics.js +38 -0
  209. package/dist/swagger/models/EnableSessionTanParamsKind.d.ts +23 -0
  210. package/dist/swagger/models/EnableSessionTanParamsKind.js +30 -0
  211. package/dist/swagger/models/EnableSessionTanParamsTan.d.ts +46 -0
  212. package/dist/swagger/models/EnableSessionTanParamsTan.js +47 -0
  213. package/dist/swagger/models/EnableSessionTanParamsTanAllOf.d.ts +34 -0
  214. package/dist/swagger/models/EnableSessionTanParamsTanAllOf.js +44 -0
  215. package/dist/swagger/models/EnableSessionTanParamsTanSpecifics.d.ts +33 -0
  216. package/dist/swagger/models/EnableSessionTanParamsTanSpecifics.js +40 -0
  217. package/dist/swagger/models/EnableSessionTanResponse.d.ts +33 -0
  218. package/dist/swagger/models/EnableSessionTanResponse.js +42 -0
  219. package/dist/swagger/models/EnableSessionTanResponseAnyOf.d.ts +27 -0
  220. package/dist/swagger/models/EnableSessionTanResponseAnyOf.js +40 -0
  221. package/dist/swagger/models/EndSessionTanResponse.d.ts +27 -0
  222. package/dist/swagger/models/EndSessionTanResponse.js +38 -0
  223. package/dist/swagger/models/ErrorResponse.d.ts +68 -0
  224. package/dist/swagger/models/ErrorResponse.js +59 -0
  225. package/dist/swagger/models/EstimateChangeOrderCostsParams.d.ts +28 -0
  226. package/dist/swagger/models/EstimateChangeOrderCostsParams.js +38 -0
  227. package/dist/swagger/models/Exchange.d.ts +127 -0
  228. package/dist/swagger/models/Exchange.js +89 -0
  229. package/dist/swagger/models/ExchangeMeta.d.ts +33 -0
  230. package/dist/swagger/models/ExchangeMeta.js +39 -0
  231. package/dist/swagger/models/ExchangesResponse.d.ts +28 -0
  232. package/dist/swagger/models/ExchangesResponse.js +38 -0
  233. package/dist/swagger/models/GenericTable.d.ts +41 -0
  234. package/dist/swagger/models/GenericTable.js +50 -0
  235. package/dist/swagger/models/GenericTableRow.d.ts +28 -0
  236. package/dist/swagger/models/GenericTableRow.js +51 -0
  237. package/dist/swagger/models/GenericTableRowEntry.d.ts +59 -0
  238. package/dist/swagger/models/GenericTableRowEntry.js +55 -0
  239. package/dist/swagger/models/GenericTableRowEntryAllOf.d.ts +34 -0
  240. package/dist/swagger/models/GenericTableRowEntryAllOf.js +44 -0
  241. package/dist/swagger/models/GenericTableRowEntrySpecifics.d.ts +46 -0
  242. package/dist/swagger/models/GenericTableRowEntrySpecifics.js +47 -0
  243. package/dist/swagger/models/GenericTableRowSubheading.d.ts +40 -0
  244. package/dist/swagger/models/GenericTableRowSubheading.js +45 -0
  245. package/dist/swagger/models/GenericTableRowSubheadingAllOf.d.ts +34 -0
  246. package/dist/swagger/models/GenericTableRowSubheadingAllOf.js +44 -0
  247. package/dist/swagger/models/GenericTableRowSubheadingSpecifics.d.ts +27 -0
  248. package/dist/swagger/models/GenericTableRowSubheadingSpecifics.js +38 -0
  249. package/dist/swagger/models/GenericTableRowText.d.ts +40 -0
  250. package/dist/swagger/models/GenericTableRowText.js +45 -0
  251. package/dist/swagger/models/GenericTableRowTextAllOf.d.ts +34 -0
  252. package/dist/swagger/models/GenericTableRowTextAllOf.js +44 -0
  253. package/dist/swagger/models/GenericTableRowTextSpecifics.d.ts +27 -0
  254. package/dist/swagger/models/GenericTableRowTextSpecifics.js +38 -0
  255. package/dist/swagger/models/GenericTableRowType.d.ts +23 -0
  256. package/dist/swagger/models/GenericTableRowType.js +30 -0
  257. package/dist/swagger/models/GenericTableRowValue.d.ts +31 -0
  258. package/dist/swagger/models/GenericTableRowValue.js +56 -0
  259. package/dist/swagger/models/GenericTableRowValueAmount.d.ts +41 -0
  260. package/dist/swagger/models/GenericTableRowValueAmount.js +46 -0
  261. package/dist/swagger/models/GenericTableRowValueAmountAllOf.d.ts +34 -0
  262. package/dist/swagger/models/GenericTableRowValueAmountAllOf.js +44 -0
  263. package/dist/swagger/models/GenericTableRowValueAmountSpecifics.d.ts +28 -0
  264. package/dist/swagger/models/GenericTableRowValueAmountSpecifics.js +39 -0
  265. package/dist/swagger/models/GenericTableRowValueDatetime.d.ts +40 -0
  266. package/dist/swagger/models/GenericTableRowValueDatetime.js +45 -0
  267. package/dist/swagger/models/GenericTableRowValueDatetimeAllOf.d.ts +34 -0
  268. package/dist/swagger/models/GenericTableRowValueDatetimeAllOf.js +44 -0
  269. package/dist/swagger/models/GenericTableRowValueDatetimeSpecifics.d.ts +27 -0
  270. package/dist/swagger/models/GenericTableRowValueDatetimeSpecifics.js +38 -0
  271. package/dist/swagger/models/GenericTableRowValueLink.d.ts +41 -0
  272. package/dist/swagger/models/GenericTableRowValueLink.js +46 -0
  273. package/dist/swagger/models/GenericTableRowValueLinkAllOf.d.ts +34 -0
  274. package/dist/swagger/models/GenericTableRowValueLinkAllOf.js +44 -0
  275. package/dist/swagger/models/GenericTableRowValueLinkPortfolio.d.ts +46 -0
  276. package/dist/swagger/models/GenericTableRowValueLinkPortfolio.js +47 -0
  277. package/dist/swagger/models/GenericTableRowValueLinkPortfolioAllOf.d.ts +34 -0
  278. package/dist/swagger/models/GenericTableRowValueLinkPortfolioAllOf.js +44 -0
  279. package/dist/swagger/models/GenericTableRowValueLinkPortfolioSpecifics.d.ts +33 -0
  280. package/dist/swagger/models/GenericTableRowValueLinkPortfolioSpecifics.js +40 -0
  281. package/dist/swagger/models/GenericTableRowValueLinkSpecifics.d.ts +28 -0
  282. package/dist/swagger/models/GenericTableRowValueLinkSpecifics.js +41 -0
  283. package/dist/swagger/models/GenericTableRowValueLinkUrl.d.ts +46 -0
  284. package/dist/swagger/models/GenericTableRowValueLinkUrl.js +47 -0
  285. package/dist/swagger/models/GenericTableRowValueLinkUrlAllOf.d.ts +34 -0
  286. package/dist/swagger/models/GenericTableRowValueLinkUrlAllOf.js +44 -0
  287. package/dist/swagger/models/GenericTableRowValueLinkUrlSpecifics.d.ts +33 -0
  288. package/dist/swagger/models/GenericTableRowValueLinkUrlSpecifics.js +40 -0
  289. package/dist/swagger/models/GenericTableRowValueLinkValue.d.ts +25 -0
  290. package/dist/swagger/models/GenericTableRowValueLinkValue.js +46 -0
  291. package/dist/swagger/models/GenericTableRowValueLinkValueType.d.ts +22 -0
  292. package/dist/swagger/models/GenericTableRowValueLinkValueType.js +29 -0
  293. package/dist/swagger/models/GenericTableRowValueText.d.ts +40 -0
  294. package/dist/swagger/models/GenericTableRowValueText.js +45 -0
  295. package/dist/swagger/models/GenericTableRowValueTextSpecifics.d.ts +27 -0
  296. package/dist/swagger/models/GenericTableRowValueTextSpecifics.js +38 -0
  297. package/dist/swagger/models/GenericTableRowValueType.d.ts +24 -0
  298. package/dist/swagger/models/GenericTableRowValueType.js +31 -0
  299. package/dist/swagger/models/GetAccessTokensResponse.d.ts +28 -0
  300. package/dist/swagger/models/GetAccessTokensResponse.js +38 -0
  301. package/dist/swagger/models/GetAcessTokenAvailablePermissions200Response.d.ts +28 -0
  302. package/dist/swagger/models/GetAcessTokenAvailablePermissions200Response.js +38 -0
  303. package/dist/swagger/models/GetActiveTradeDraftsResponse.d.ts +34 -0
  304. package/dist/swagger/models/GetActiveTradeDraftsResponse.js +40 -0
  305. package/dist/swagger/models/GetAuthInfoResponse.d.ts +28 -0
  306. package/dist/swagger/models/GetAuthInfoResponse.js +38 -0
  307. package/dist/swagger/models/GetBrokersResponse.d.ts +28 -0
  308. package/dist/swagger/models/GetBrokersResponse.js +38 -0
  309. package/dist/swagger/models/GetCostEstimationParams.d.ts +28 -0
  310. package/dist/swagger/models/GetCostEstimationParams.js +38 -0
  311. package/dist/swagger/models/GetOrderResponse.d.ts +28 -0
  312. package/dist/swagger/models/GetOrderResponse.js +38 -0
  313. package/dist/swagger/models/GetPortfolioOrdersResponse.d.ts +34 -0
  314. package/dist/swagger/models/GetPortfolioOrdersResponse.js +40 -0
  315. package/dist/swagger/models/GetPortfolioPositionsResponse.d.ts +28 -0
  316. package/dist/swagger/models/GetPortfolioPositionsResponse.js +38 -0
  317. package/dist/swagger/models/GetPortfolioQuotesResponse.d.ts +43 -0
  318. package/dist/swagger/models/GetPortfolioQuotesResponse.js +52 -0
  319. package/dist/swagger/models/GetQuoteParams.d.ts +67 -0
  320. package/dist/swagger/models/GetQuoteParams.js +55 -0
  321. package/dist/swagger/models/GetQuoteResponse.d.ts +86 -0
  322. package/dist/swagger/models/GetQuoteResponse.js +68 -0
  323. package/dist/swagger/models/GetUserResponse.d.ts +27 -0
  324. package/dist/swagger/models/GetUserResponse.js +37 -0
  325. package/dist/swagger/models/GuestUserLifetime.d.ts +22 -0
  326. package/dist/swagger/models/GuestUserLifetime.js +29 -0
  327. package/dist/swagger/models/Hint.d.ts +33 -0
  328. package/dist/swagger/models/Hint.js +39 -0
  329. package/dist/swagger/models/LegalTermConfirmItem.d.ts +33 -0
  330. package/dist/swagger/models/LegalTermConfirmItem.js +39 -0
  331. package/dist/swagger/models/LegalTermsResponse.d.ts +41 -0
  332. package/dist/swagger/models/LegalTermsResponse.js +42 -0
  333. package/dist/swagger/models/LoginResponse.d.ts +25 -0
  334. package/dist/swagger/models/LoginResponse.js +46 -0
  335. package/dist/swagger/models/LoginResponseChallenge.d.ts +41 -0
  336. package/dist/swagger/models/LoginResponseChallenge.js +46 -0
  337. package/dist/swagger/models/LoginResponseChallengeAllOf.d.ts +34 -0
  338. package/dist/swagger/models/LoginResponseChallengeAllOf.js +44 -0
  339. package/dist/swagger/models/LoginResponseChallengeSpecifics.d.ts +28 -0
  340. package/dist/swagger/models/LoginResponseChallengeSpecifics.js +41 -0
  341. package/dist/swagger/models/LoginResponseReady.d.ts +40 -0
  342. package/dist/swagger/models/LoginResponseReady.js +45 -0
  343. package/dist/swagger/models/LoginResponseReadyAllOf.d.ts +34 -0
  344. package/dist/swagger/models/LoginResponseReadyAllOf.js +44 -0
  345. package/dist/swagger/models/LoginResponseReadySpecifics.d.ts +27 -0
  346. package/dist/swagger/models/LoginResponseReadySpecifics.js +38 -0
  347. package/dist/swagger/models/LoginResponseState.d.ts +22 -0
  348. package/dist/swagger/models/LoginResponseState.js +29 -0
  349. package/dist/swagger/models/MaintenanceStatus.d.ts +33 -0
  350. package/dist/swagger/models/MaintenanceStatus.js +44 -0
  351. package/dist/swagger/models/OAuthLoginFormConfig.d.ts +69 -0
  352. package/dist/swagger/models/OAuthLoginFormConfig.js +68 -0
  353. package/dist/swagger/models/ObtainToken200Response.d.ts +51 -0
  354. package/dist/swagger/models/ObtainToken200Response.js +45 -0
  355. package/dist/swagger/models/OkResponseBody.d.ts +27 -0
  356. package/dist/swagger/models/OkResponseBody.js +37 -0
  357. package/dist/swagger/models/Order.d.ts +415 -0
  358. package/dist/swagger/models/Order.js +246 -0
  359. package/dist/swagger/models/OrderChanges.d.ts +92 -0
  360. package/dist/swagger/models/OrderChanges.js +67 -0
  361. package/dist/swagger/models/OrderCostEstimation.d.ts +80 -0
  362. package/dist/swagger/models/OrderCostEstimation.js +75 -0
  363. package/dist/swagger/models/OrderCreate.d.ts +209 -0
  364. package/dist/swagger/models/OrderCreate.js +119 -0
  365. package/dist/swagger/models/OrderExecution.d.ts +82 -0
  366. package/dist/swagger/models/OrderExecution.js +69 -0
  367. package/dist/swagger/models/OrderExtension.d.ts +29 -0
  368. package/dist/swagger/models/OrderExtension.js +36 -0
  369. package/dist/swagger/models/OrderIntent.d.ts +23 -0
  370. package/dist/swagger/models/OrderIntent.js +30 -0
  371. package/dist/swagger/models/OrderIntentAvailability.d.ts +34 -0
  372. package/dist/swagger/models/OrderIntentAvailability.js +40 -0
  373. package/dist/swagger/models/OrderModel.d.ts +34 -0
  374. package/dist/swagger/models/OrderModel.js +41 -0
  375. package/dist/swagger/models/OrderStatus.d.ts +25 -0
  376. package/dist/swagger/models/OrderStatus.js +32 -0
  377. package/dist/swagger/models/OrderValidity.d.ts +41 -0
  378. package/dist/swagger/models/OrderValidity.js +43 -0
  379. package/dist/swagger/models/OrderValidityType.d.ts +34 -0
  380. package/dist/swagger/models/OrderValidityType.js +41 -0
  381. package/dist/swagger/models/OrderValidityTypeByOrderModel.d.ts +94 -0
  382. package/dist/swagger/models/OrderValidityTypeByOrderModel.js +109 -0
  383. package/dist/swagger/models/PageConfig.d.ts +51 -0
  384. package/dist/swagger/models/PageConfig.js +48 -0
  385. package/dist/swagger/models/PagesConfigurationResponse.d.ts +33 -0
  386. package/dist/swagger/models/PagesConfigurationResponse.js +39 -0
  387. package/dist/swagger/models/Portfolio.d.ts +87 -0
  388. package/dist/swagger/models/Portfolio.js +54 -0
  389. package/dist/swagger/models/PortfolioQuotes.d.ts +70 -0
  390. package/dist/swagger/models/PortfolioQuotes.js +69 -0
  391. package/dist/swagger/models/PortfolioSyncInfo.d.ts +31 -0
  392. package/dist/swagger/models/PortfolioSyncInfo.js +56 -0
  393. package/dist/swagger/models/PortfolioSyncInfoComplete.d.ts +40 -0
  394. package/dist/swagger/models/PortfolioSyncInfoComplete.js +45 -0
  395. package/dist/swagger/models/PortfolioSyncInfoCompleteAllOf.d.ts +34 -0
  396. package/dist/swagger/models/PortfolioSyncInfoCompleteAllOf.js +44 -0
  397. package/dist/swagger/models/PortfolioSyncInfoCompleteSpecifics.d.ts +27 -0
  398. package/dist/swagger/models/PortfolioSyncInfoCompleteSpecifics.js +40 -0
  399. package/dist/swagger/models/PortfolioSyncInfoError.d.ts +41 -0
  400. package/dist/swagger/models/PortfolioSyncInfoError.js +46 -0
  401. package/dist/swagger/models/PortfolioSyncInfoErrorAllOf.d.ts +34 -0
  402. package/dist/swagger/models/PortfolioSyncInfoErrorAllOf.js +44 -0
  403. package/dist/swagger/models/PortfolioSyncInfoErrorSpecifics.d.ts +28 -0
  404. package/dist/swagger/models/PortfolioSyncInfoErrorSpecifics.js +41 -0
  405. package/dist/swagger/models/PortfolioSyncInfoIncomplete.d.ts +40 -0
  406. package/dist/swagger/models/PortfolioSyncInfoIncomplete.js +45 -0
  407. package/dist/swagger/models/PortfolioSyncInfoIncompleteAllOf.d.ts +34 -0
  408. package/dist/swagger/models/PortfolioSyncInfoIncompleteAllOf.js +44 -0
  409. package/dist/swagger/models/PortfolioSyncInfoIncompleteSpecifics.d.ts +27 -0
  410. package/dist/swagger/models/PortfolioSyncInfoIncompleteSpecifics.js +40 -0
  411. package/dist/swagger/models/PortfolioSyncInfoPending.d.ts +34 -0
  412. package/dist/swagger/models/PortfolioSyncInfoPending.js +43 -0
  413. package/dist/swagger/models/PortfolioSyncInfoPendingAllOf.d.ts +34 -0
  414. package/dist/swagger/models/PortfolioSyncInfoPendingAllOf.js +44 -0
  415. package/dist/swagger/models/PortfolioSyncInfoStatus.d.ts +24 -0
  416. package/dist/swagger/models/PortfolioSyncInfoStatus.js +31 -0
  417. package/dist/swagger/models/PortfoliosResponse.d.ts +35 -0
  418. package/dist/swagger/models/PortfoliosResponse.js +41 -0
  419. package/dist/swagger/models/Position.d.ts +182 -0
  420. package/dist/swagger/models/Position.js +124 -0
  421. package/dist/swagger/models/PositionValuation.d.ts +46 -0
  422. package/dist/swagger/models/PositionValuation.js +49 -0
  423. package/dist/swagger/models/PrepareOAuthRedirectParams.d.ts +39 -0
  424. package/dist/swagger/models/PrepareOAuthRedirectParams.js +41 -0
  425. package/dist/swagger/models/PrepareOAuthRedirectResponse.d.ts +27 -0
  426. package/dist/swagger/models/PrepareOAuthRedirectResponse.js +37 -0
  427. package/dist/swagger/models/PrepareTradeResponse.d.ts +28 -0
  428. package/dist/swagger/models/PrepareTradeResponse.js +38 -0
  429. package/dist/swagger/models/PreparedTrade.d.ts +154 -0
  430. package/dist/swagger/models/PreparedTrade.js +103 -0
  431. package/dist/swagger/models/QuoteExpiration.d.ts +41 -0
  432. package/dist/swagger/models/QuoteExpiration.js +41 -0
  433. package/dist/swagger/models/RenamePortfolioRequest.d.ts +27 -0
  434. package/dist/swagger/models/RenamePortfolioRequest.js +37 -0
  435. package/dist/swagger/models/RenderGenericTableParams.d.ts +28 -0
  436. package/dist/swagger/models/RenderGenericTableParams.js +38 -0
  437. package/dist/swagger/models/RiskClassInfo.d.ts +40 -0
  438. package/dist/swagger/models/RiskClassInfo.js +44 -0
  439. package/dist/swagger/models/Security.d.ts +99 -0
  440. package/dist/swagger/models/Security.js +64 -0
  441. package/dist/swagger/models/SecurityDetailedInfo.d.ts +34 -0
  442. package/dist/swagger/models/SecurityDetailedInfo.js +39 -0
  443. package/dist/swagger/models/SecurityQuote.d.ts +33 -0
  444. package/dist/swagger/models/SecurityQuote.js +40 -0
  445. package/dist/swagger/models/SecurityQuotes.d.ts +34 -0
  446. package/dist/swagger/models/SecurityQuotes.js +41 -0
  447. package/dist/swagger/models/SecurityQuotesMeta.d.ts +39 -0
  448. package/dist/swagger/models/SecurityQuotesMeta.js +41 -0
  449. package/dist/swagger/models/SecurityQuotesResponse.d.ts +28 -0
  450. package/dist/swagger/models/SecurityQuotesResponse.js +38 -0
  451. package/dist/swagger/models/SecuritySelector.d.ts +57 -0
  452. package/dist/swagger/models/SecuritySelector.js +48 -0
  453. package/dist/swagger/models/SellPosition.d.ts +33 -0
  454. package/dist/swagger/models/SellPosition.js +39 -0
  455. package/dist/swagger/models/Session.d.ts +67 -0
  456. package/dist/swagger/models/Session.js +61 -0
  457. package/dist/swagger/models/SessionResponse.d.ts +28 -0
  458. package/dist/swagger/models/SessionResponse.js +38 -0
  459. package/dist/swagger/models/SessionSyncInfo.d.ts +28 -0
  460. package/dist/swagger/models/SessionSyncInfo.js +51 -0
  461. package/dist/swagger/models/SessionSyncInfoError.d.ts +41 -0
  462. package/dist/swagger/models/SessionSyncInfoError.js +46 -0
  463. package/dist/swagger/models/SessionSyncInfoErrorSpecifics.d.ts +28 -0
  464. package/dist/swagger/models/SessionSyncInfoErrorSpecifics.js +41 -0
  465. package/dist/swagger/models/SessionSyncInfoPending.d.ts +34 -0
  466. package/dist/swagger/models/SessionSyncInfoPending.js +43 -0
  467. package/dist/swagger/models/SessionSyncInfoStatus.d.ts +23 -0
  468. package/dist/swagger/models/SessionSyncInfoStatus.js +30 -0
  469. package/dist/swagger/models/SessionSyncInfoSynced.d.ts +40 -0
  470. package/dist/swagger/models/SessionSyncInfoSynced.js +45 -0
  471. package/dist/swagger/models/SessionSyncInfoSyncedAllOf.d.ts +34 -0
  472. package/dist/swagger/models/SessionSyncInfoSyncedAllOf.js +44 -0
  473. package/dist/swagger/models/SessionSyncInfoSyncedSpecifics.d.ts +27 -0
  474. package/dist/swagger/models/SessionSyncInfoSyncedSpecifics.js +40 -0
  475. package/dist/swagger/models/SetClientConfigRequest.d.ts +28 -0
  476. package/dist/swagger/models/SetClientConfigRequest.js +38 -0
  477. package/dist/swagger/models/SizeUnitConstraint.d.ts +46 -0
  478. package/dist/swagger/models/SizeUnitConstraint.js +51 -0
  479. package/dist/swagger/models/StringMapByOrderModel.d.ts +93 -0
  480. package/dist/swagger/models/StringMapByOrderModel.js +68 -0
  481. package/dist/swagger/models/SyncError.d.ts +33 -0
  482. package/dist/swagger/models/SyncError.js +39 -0
  483. package/dist/swagger/models/TakeProfitStopLossCapabilites.d.ts +42 -0
  484. package/dist/swagger/models/TakeProfitStopLossCapabilites.js +42 -0
  485. package/dist/swagger/models/TakeProfitStopLossDetail.d.ts +35 -0
  486. package/dist/swagger/models/TakeProfitStopLossDetail.js +41 -0
  487. package/dist/swagger/models/TradeDraft.d.ts +64 -0
  488. package/dist/swagger/models/TradeDraft.js +50 -0
  489. package/dist/swagger/models/TradeDraftCreateParams.d.ts +34 -0
  490. package/dist/swagger/models/TradeDraftCreateParams.js +41 -0
  491. package/dist/swagger/models/TradeDraftOrderCreate.d.ts +122 -0
  492. package/dist/swagger/models/TradeDraftOrderCreate.js +79 -0
  493. package/dist/swagger/models/TradeDraftUpdateParams.d.ts +40 -0
  494. package/dist/swagger/models/TradeDraftUpdateParams.js +45 -0
  495. package/dist/swagger/models/TradeDraftUpdateParamsOrderId.d.ts +21 -0
  496. package/dist/swagger/models/TradeDraftUpdateParamsOrderId.js +24 -0
  497. package/dist/swagger/models/TrailingDistance.d.ts +42 -0
  498. package/dist/swagger/models/TrailingDistance.js +46 -0
  499. package/dist/swagger/models/ValidationDetail.d.ts +33 -0
  500. package/dist/swagger/models/ValidationDetail.js +39 -0
  501. package/dist/swagger/models/index.d.ts +222 -0
  502. package/dist/swagger/models/index.js +224 -0
  503. package/dist/swagger/runtime.d.ts +156 -0
  504. package/dist/swagger/runtime.js +257 -0
  505. package/dist/tsdoc-metadata.json +11 -0
  506. package/dist/utils.d.ts +9 -0
  507. package/dist/utils.js +24 -0
  508. package/dist/websocketClient.d.ts +59 -0
  509. package/dist/websocketClient.js +316 -0
  510. package/dist/websocketTypes.d.ts +71 -0
  511. package/dist/websocketTypes.js +1 -0
  512. package/package.json +66 -0
@@ -0,0 +1,787 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * brokerize
5
+ * The brokerize API allows clients to implement multi-brokerage with a unified interface. For more information, visit brokerize.com
6
+ *
7
+ *
8
+ *
9
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
10
+ * https://openapi-generator.tech
11
+ * Do not edit the class manually.
12
+ */
13
+ import * as runtime from "../runtime";
14
+ import { ChallengeFromJSON, CreateGuestUserResponseFromJSON, CreateTanChallengeParamsToJSON, DecoupledOperationStatusFromJSON, EnableSessionTanParamsToJSON, EnableSessionTanResponseFromJSON, EndSessionTanResponseFromJSON, GetAuthInfoResponseFromJSON, GetOrderResponseFromJSON, GetPortfolioOrdersResponseFromJSON, GetPortfolioPositionsResponseFromJSON, GetPortfolioQuotesResponseFromJSON, GetUserResponseFromJSON, ObtainToken200ResponseFromJSON, OkResponseBodyFromJSON, PortfoliosResponseFromJSON, RenamePortfolioRequestToJSON, SessionResponseFromJSON, } from "../models";
15
+ /**
16
+ *
17
+ */
18
+ export class DefaultApi extends runtime.BaseAPI {
19
+ /**
20
+ */
21
+ async cancelDecoupledOperationRaw(requestParameters, initOverrides) {
22
+ if (requestParameters.sessionId === null ||
23
+ requestParameters.sessionId === undefined) {
24
+ throw new runtime.RequiredError("sessionId", "Required parameter requestParameters.sessionId was null or undefined when calling cancelDecoupledOperation.");
25
+ }
26
+ if (requestParameters.decoupledOperationId === null ||
27
+ requestParameters.decoupledOperationId === undefined) {
28
+ throw new runtime.RequiredError("decoupledOperationId", "Required parameter requestParameters.decoupledOperationId was null or undefined when calling cancelDecoupledOperation.");
29
+ }
30
+ const queryParameters = {};
31
+ const headerParameters = {};
32
+ if (this.configuration && this.configuration.apiKey) {
33
+ headerParameters["x-brkrz-client-id"] =
34
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
35
+ }
36
+ if (this.configuration && this.configuration.accessToken) {
37
+ const token = this.configuration.accessToken;
38
+ const tokenString = await token("idToken", []);
39
+ if (tokenString) {
40
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
41
+ }
42
+ }
43
+ const response = await this.request({
44
+ path: `/sessions/{sessionId}/decoupledOperation/{decoupledOperationId}`
45
+ .replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId)))
46
+ .replace(`{${"decoupledOperationId"}}`, encodeURIComponent(String(requestParameters.decoupledOperationId))),
47
+ method: "DELETE",
48
+ headers: headerParameters,
49
+ query: queryParameters,
50
+ }, initOverrides);
51
+ return new runtime.VoidApiResponse(response);
52
+ }
53
+ /**
54
+ */
55
+ async cancelDecoupledOperation(requestParameters, initOverrides) {
56
+ await this.cancelDecoupledOperationRaw(requestParameters, initOverrides);
57
+ }
58
+ /**
59
+ * Create a guest user and return a token which can be used to access resources. The lifetime of the generated temporary user as well as the returned `access_token` depend on the client configuration. It is usually around 24 hours. For some clients, tokens can be expired earlier based on inactivity. If the client has configured a longer lifetime for their guest users, a `refresh_token` is included in the response. This token can be used to renew the `access_token` after it has expired. The `refresh_token` can be used to obtain a new `access_token` after the original token has expired using the `/user/token` endpoint.
60
+ */
61
+ async createGuestUserRaw(initOverrides) {
62
+ const queryParameters = {};
63
+ const headerParameters = {};
64
+ if (this.configuration && this.configuration.apiKey) {
65
+ headerParameters["x-brkrz-client-id"] =
66
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
67
+ }
68
+ const response = await this.request({
69
+ path: `/user/guest`,
70
+ method: "POST",
71
+ headers: headerParameters,
72
+ query: queryParameters,
73
+ }, initOverrides);
74
+ return new runtime.JSONApiResponse(response, (jsonValue) => CreateGuestUserResponseFromJSON(jsonValue));
75
+ }
76
+ /**
77
+ * Create a guest user and return a token which can be used to access resources. The lifetime of the generated temporary user as well as the returned `access_token` depend on the client configuration. It is usually around 24 hours. For some clients, tokens can be expired earlier based on inactivity. If the client has configured a longer lifetime for their guest users, a `refresh_token` is included in the response. This token can be used to renew the `access_token` after it has expired. The `refresh_token` can be used to obtain a new `access_token` after the original token has expired using the `/user/token` endpoint.
78
+ */
79
+ async createGuestUser(initOverrides) {
80
+ const response = await this.createGuestUserRaw(initOverrides);
81
+ return await response.value();
82
+ }
83
+ /**
84
+ * If the user chose an auth method from `GetAuthInfo` with the flow `CHALLENGE_RESPONSE`, before enabling session TAN, a challenge must be requested first.
85
+ */
86
+ async createSessionTanChallengeRaw(requestParameters, initOverrides) {
87
+ if (requestParameters.sessionId === null ||
88
+ requestParameters.sessionId === undefined) {
89
+ throw new runtime.RequiredError("sessionId", "Required parameter requestParameters.sessionId was null or undefined when calling createSessionTanChallenge.");
90
+ }
91
+ if (requestParameters.createTanChallengeParams === null ||
92
+ requestParameters.createTanChallengeParams === undefined) {
93
+ throw new runtime.RequiredError("createTanChallengeParams", "Required parameter requestParameters.createTanChallengeParams was null or undefined when calling createSessionTanChallenge.");
94
+ }
95
+ const queryParameters = {};
96
+ const headerParameters = {};
97
+ headerParameters["Content-Type"] = "application/json";
98
+ if (this.configuration && this.configuration.apiKey) {
99
+ headerParameters["x-brkrz-client-id"] =
100
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
101
+ }
102
+ if (this.configuration && this.configuration.accessToken) {
103
+ const token = this.configuration.accessToken;
104
+ const tokenString = await token("idToken", []);
105
+ if (tokenString) {
106
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
107
+ }
108
+ }
109
+ const response = await this.request({
110
+ path: `/sessions/{sessionId}/sessiontanchallenge`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
111
+ method: "POST",
112
+ headers: headerParameters,
113
+ query: queryParameters,
114
+ body: CreateTanChallengeParamsToJSON(requestParameters.createTanChallengeParams),
115
+ }, initOverrides);
116
+ return new runtime.JSONApiResponse(response, (jsonValue) => ChallengeFromJSON(jsonValue));
117
+ }
118
+ /**
119
+ * If the user chose an auth method from `GetAuthInfo` with the flow `CHALLENGE_RESPONSE`, before enabling session TAN, a challenge must be requested first.
120
+ */
121
+ async createSessionTanChallenge(requestParameters, initOverrides) {
122
+ const response = await this.createSessionTanChallengeRaw(requestParameters, initOverrides);
123
+ return await response.value();
124
+ }
125
+ /**
126
+ * Delete the current user (only allowed if it is a guest account). Also logs out all active broker sessions attached to the user.
127
+ */
128
+ async deleteGuestUserRaw(initOverrides) {
129
+ const queryParameters = {};
130
+ const headerParameters = {};
131
+ if (this.configuration && this.configuration.apiKey) {
132
+ headerParameters["x-brkrz-client-id"] =
133
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
134
+ }
135
+ if (this.configuration && this.configuration.accessToken) {
136
+ const token = this.configuration.accessToken;
137
+ const tokenString = await token("idToken", []);
138
+ if (tokenString) {
139
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
140
+ }
141
+ }
142
+ const response = await this.request({
143
+ path: `/user`,
144
+ method: "DELETE",
145
+ headers: headerParameters,
146
+ query: queryParameters,
147
+ }, initOverrides);
148
+ return new runtime.VoidApiResponse(response);
149
+ }
150
+ /**
151
+ * Delete the current user (only allowed if it is a guest account). Also logs out all active broker sessions attached to the user.
152
+ */
153
+ async deleteGuestUser(initOverrides) {
154
+ await this.deleteGuestUserRaw(initOverrides);
155
+ }
156
+ /**
157
+ */
158
+ async deletePortfolioRaw(requestParameters, initOverrides) {
159
+ if (requestParameters.portfolioId === null ||
160
+ requestParameters.portfolioId === undefined) {
161
+ throw new runtime.RequiredError("portfolioId", "Required parameter requestParameters.portfolioId was null or undefined when calling deletePortfolio.");
162
+ }
163
+ const queryParameters = {};
164
+ const headerParameters = {};
165
+ if (this.configuration && this.configuration.apiKey) {
166
+ headerParameters["x-brkrz-client-id"] =
167
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
168
+ }
169
+ if (this.configuration && this.configuration.accessToken) {
170
+ const token = this.configuration.accessToken;
171
+ const tokenString = await token("idToken", []);
172
+ if (tokenString) {
173
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
174
+ }
175
+ }
176
+ const response = await this.request({
177
+ path: `/portfolios/{portfolioId}`.replace(`{${"portfolioId"}}`, encodeURIComponent(String(requestParameters.portfolioId))),
178
+ method: "DELETE",
179
+ headers: headerParameters,
180
+ query: queryParameters,
181
+ }, initOverrides);
182
+ return new runtime.JSONApiResponse(response, (jsonValue) => OkResponseBodyFromJSON(jsonValue));
183
+ }
184
+ /**
185
+ */
186
+ async deletePortfolio(requestParameters, initOverrides) {
187
+ const response = await this.deletePortfolioRaw(requestParameters, initOverrides);
188
+ return await response.value();
189
+ }
190
+ /**
191
+ */
192
+ async enableSessionTanRaw(requestParameters, initOverrides) {
193
+ if (requestParameters.sessionId === null ||
194
+ requestParameters.sessionId === undefined) {
195
+ throw new runtime.RequiredError("sessionId", "Required parameter requestParameters.sessionId was null or undefined when calling enableSessionTan.");
196
+ }
197
+ if (requestParameters.enableSessionTanParams === null ||
198
+ requestParameters.enableSessionTanParams === undefined) {
199
+ throw new runtime.RequiredError("enableSessionTanParams", "Required parameter requestParameters.enableSessionTanParams was null or undefined when calling enableSessionTan.");
200
+ }
201
+ const queryParameters = {};
202
+ const headerParameters = {};
203
+ headerParameters["Content-Type"] = "application/json";
204
+ if (this.configuration && this.configuration.apiKey) {
205
+ headerParameters["x-brkrz-client-id"] =
206
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
207
+ }
208
+ if (this.configuration && this.configuration.accessToken) {
209
+ const token = this.configuration.accessToken;
210
+ const tokenString = await token("idToken", []);
211
+ if (tokenString) {
212
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
213
+ }
214
+ }
215
+ const response = await this.request({
216
+ path: `/sessions/{sessionId}/sessiontan`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
217
+ method: "POST",
218
+ headers: headerParameters,
219
+ query: queryParameters,
220
+ body: EnableSessionTanParamsToJSON(requestParameters.enableSessionTanParams),
221
+ }, initOverrides);
222
+ return new runtime.JSONApiResponse(response, (jsonValue) => EnableSessionTanResponseFromJSON(jsonValue));
223
+ }
224
+ /**
225
+ */
226
+ async enableSessionTan(requestParameters, initOverrides) {
227
+ const response = await this.enableSessionTanRaw(requestParameters, initOverrides);
228
+ return await response.value();
229
+ }
230
+ /**
231
+ * End Session TAN for the given broker session. If applicable, the broker may return a message with a confirmation code which can be looked up in the initial activation SMS. If message is present in the response, it should be displayed to the user.
232
+ */
233
+ async endSessionTanRaw(requestParameters, initOverrides) {
234
+ if (requestParameters.sessionId === null ||
235
+ requestParameters.sessionId === undefined) {
236
+ throw new runtime.RequiredError("sessionId", "Required parameter requestParameters.sessionId was null or undefined when calling endSessionTan.");
237
+ }
238
+ const queryParameters = {};
239
+ const headerParameters = {};
240
+ if (this.configuration && this.configuration.apiKey) {
241
+ headerParameters["x-brkrz-client-id"] =
242
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
243
+ }
244
+ if (this.configuration && this.configuration.accessToken) {
245
+ const token = this.configuration.accessToken;
246
+ const tokenString = await token("idToken", []);
247
+ if (tokenString) {
248
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
249
+ }
250
+ }
251
+ const response = await this.request({
252
+ path: `/sessions/{sessionId}/sessiontan`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
253
+ method: "DELETE",
254
+ headers: headerParameters,
255
+ query: queryParameters,
256
+ }, initOverrides);
257
+ return new runtime.JSONApiResponse(response, (jsonValue) => EndSessionTanResponseFromJSON(jsonValue));
258
+ }
259
+ /**
260
+ * End Session TAN for the given broker session. If applicable, the broker may return a message with a confirmation code which can be looked up in the initial activation SMS. If message is present in the response, it should be displayed to the user.
261
+ */
262
+ async endSessionTan(requestParameters, initOverrides) {
263
+ const response = await this.endSessionTanRaw(requestParameters, initOverrides);
264
+ return await response.value();
265
+ }
266
+ /**
267
+ * Get the AuthInfo for the given portfolio. If the portfolio does not have an online session, this will return a 400 status code. If it does, the response describes whether session TAN is available or active and which auth methods are available for the given portfolio (this information depends on the broker and the user\'s account settings). The response determines which of the following operations can be used and which are required to successfully perform an operation in a portfolio: - Session TAN handling (for performing other actions in portfolios without further per-case authorization) - [CreateSessionTanChallenge](#operation/CreateSessionTanChallenge) to request a challenge for s TAN activation. - [EnableSessionTan](#operation/EnableSessionTan) to enable the session TAN. - [EndSessionTan](#operation/EndSessionTan) to end the session TAN. - Create a trade - [PrepareTrade](#operation/PrepareTrade) to figure out how a given security can be traded in a portfolio. - [CreateTradeChallenge](#operation/CreateTradeChallenge) to (for example) request a TAN for a trade. - [CreateTrade](#operation/CreateTrade) to perform the trade. - Edit an order - [CreateChangeOrderChallenge](#operation/CreateChangeOrderChallenge) to request a challenge for an order change. - [ChangeOrder](#operation/ChangeOrder) to change an order. - Cancel an order - [CreateCancelOrderChallenge](#operation/CreateCancelOrderChallenge) to request a Challenge for an order cancellation. - [CancelOrder](#operation/CancelOrder) to cancel an order. The list of available AuthMethods should only be presented to the user if session TAN is not active (yet). The list and names are defined by our partner brokers. All auth methods are generally categorized using the `flow` attribute: | `flow` | requires challenge? | Description | | -------------------- | ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `TAN` | no | the simplest flow: no challenge is required to perform the operation. the TAN is simply sent as parameter `tan` | | `CHALLENGE_RESPONSE` | yes | a challenge must be created using the `createXYZChallenge` operations and the challenge must be presented to the user. The user can then execute the action using the `challengeId` and `challengeResponse` parameters. If the auth method has `challengeResponseIsOnlyConfirmation=true`, that challengeResponse is always an empty string and users do not enter a TAN. Otherwise, a text field labelled with `tanFieldLabel` must be displayed where the user enteirs their challengeResponse. | | `DECOUPLED` | no | the operation is executed without any TAN, but returns a `decoupledOperationId` which can be used to read the action\'s status. Users will authorize the action in another frontend (usually in their broker\'s app). Note that currently `DECOUPLED` auth methods only work for enabling session TAN. | - If `sessionTanActive` is `true`: Session TAN has been enabled for the session that currently backs the portfolio. In this case, all operations like `CreateTrade` can be executed right away without an `authMethod`. The UI should *not* show a dropdown with the auth methods in this case. - If `sessionTanActive` is `false` but `sessionTanSupported` is `true`: the user can enable session TAN using `CreateSessionTanChallenge` / `EnableSessionTan`. - If `allOperationsRequireSessionTan` is `true`, the auth methods can *ONLY* be used for enabling session TAN. - Otherwise, the `authMethods` can be used to perform individual operations. | sessionTanActive | sessionTanSupported | allOperationsRequireSessionTan | Description | | ---------------- | ------------------- | ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `true` | `true` | - | Session TAN has been enabled for the session that currently backs the portfolio. In this case, all operations like `CreateTrade`, `ChangeOrder`, `CancelOrder` can be executed right away without an `authMethod`. The UI should _not_ show a dropdown with the auth methods in this case. | | `false` | `true` | `true` | the user can enable session TAN using the provided auth methods via `CreateSessionTanChallenge` / `EnableSessionTan`. All other operations can only take place after session TAN has been enabled. | | `false` | `true` | `false` | the user can enable any operation (enable session tan, create trade, cancel order, change order) using the provided auth methods | Note that it is possible that brokers only reveal all details about the available auth methods *TOGETHER* with the first `GetChallenge` request. This special behavior can be simulated with our demo broker when the flag `lazyAuthMethods=true` is specified upon creation of a demo account. In those accounts, the `GetAuthInfo` endpoint will initially return a single \"placeholder\" method with `{flow: \"CHALLENGE_RESPONSE\", isDefaultMethod: true, ...}`. In the situation where there is *exactly one* auth method like this, frontends may immediately request the challenge for the desired operation without waiting for the user to click the get challenge button (for Session TAN, this means that as soon as the user opens the dialog for enabling session TAN, `CreateSessionTanChallenge` can be called). In the case described here, `AuthInfo` will be populated with the actual list of auth methods when the create challenge request returns (also, the corresponding WebSocket event is published to notify about this change). `GetAuthInfo` must be called again in this case and repopulate the corresponding frontend (e.g. the name of the auth method will become available etc.). So what is done in this case is: request a challenge for the *unknown* default method in order to get both a challenge and an update of the auth methods. Note that usually challenges have effects like an SMS or some broker app notification for the end user, so it is important to keep the requested challenge info, *even when auth info is refreshed*. For example, if there is a select box with the auth method list, that box must keep its selected `id` while updating the now-available `label`. This way, the user can use the first requested challenge, as the frontend will still be in the right state.
268
+ */
269
+ async getAuthInfoRaw(requestParameters, initOverrides) {
270
+ if (requestParameters.portfolioId === null ||
271
+ requestParameters.portfolioId === undefined) {
272
+ throw new runtime.RequiredError("portfolioId", "Required parameter requestParameters.portfolioId was null or undefined when calling getAuthInfo.");
273
+ }
274
+ const queryParameters = {};
275
+ const headerParameters = {};
276
+ if (this.configuration && this.configuration.apiKey) {
277
+ headerParameters["x-brkrz-client-id"] =
278
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
279
+ }
280
+ if (this.configuration && this.configuration.accessToken) {
281
+ const token = this.configuration.accessToken;
282
+ const tokenString = await token("idToken", []);
283
+ if (tokenString) {
284
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
285
+ }
286
+ }
287
+ const response = await this.request({
288
+ path: `/portfolios/{portfolioId}/authinfo`.replace(`{${"portfolioId"}}`, encodeURIComponent(String(requestParameters.portfolioId))),
289
+ method: "GET",
290
+ headers: headerParameters,
291
+ query: queryParameters,
292
+ }, initOverrides);
293
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetAuthInfoResponseFromJSON(jsonValue));
294
+ }
295
+ /**
296
+ * Get the AuthInfo for the given portfolio. If the portfolio does not have an online session, this will return a 400 status code. If it does, the response describes whether session TAN is available or active and which auth methods are available for the given portfolio (this information depends on the broker and the user\'s account settings). The response determines which of the following operations can be used and which are required to successfully perform an operation in a portfolio: - Session TAN handling (for performing other actions in portfolios without further per-case authorization) - [CreateSessionTanChallenge](#operation/CreateSessionTanChallenge) to request a challenge for s TAN activation. - [EnableSessionTan](#operation/EnableSessionTan) to enable the session TAN. - [EndSessionTan](#operation/EndSessionTan) to end the session TAN. - Create a trade - [PrepareTrade](#operation/PrepareTrade) to figure out how a given security can be traded in a portfolio. - [CreateTradeChallenge](#operation/CreateTradeChallenge) to (for example) request a TAN for a trade. - [CreateTrade](#operation/CreateTrade) to perform the trade. - Edit an order - [CreateChangeOrderChallenge](#operation/CreateChangeOrderChallenge) to request a challenge for an order change. - [ChangeOrder](#operation/ChangeOrder) to change an order. - Cancel an order - [CreateCancelOrderChallenge](#operation/CreateCancelOrderChallenge) to request a Challenge for an order cancellation. - [CancelOrder](#operation/CancelOrder) to cancel an order. The list of available AuthMethods should only be presented to the user if session TAN is not active (yet). The list and names are defined by our partner brokers. All auth methods are generally categorized using the `flow` attribute: | `flow` | requires challenge? | Description | | -------------------- | ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `TAN` | no | the simplest flow: no challenge is required to perform the operation. the TAN is simply sent as parameter `tan` | | `CHALLENGE_RESPONSE` | yes | a challenge must be created using the `createXYZChallenge` operations and the challenge must be presented to the user. The user can then execute the action using the `challengeId` and `challengeResponse` parameters. If the auth method has `challengeResponseIsOnlyConfirmation=true`, that challengeResponse is always an empty string and users do not enter a TAN. Otherwise, a text field labelled with `tanFieldLabel` must be displayed where the user enteirs their challengeResponse. | | `DECOUPLED` | no | the operation is executed without any TAN, but returns a `decoupledOperationId` which can be used to read the action\'s status. Users will authorize the action in another frontend (usually in their broker\'s app). Note that currently `DECOUPLED` auth methods only work for enabling session TAN. | - If `sessionTanActive` is `true`: Session TAN has been enabled for the session that currently backs the portfolio. In this case, all operations like `CreateTrade` can be executed right away without an `authMethod`. The UI should *not* show a dropdown with the auth methods in this case. - If `sessionTanActive` is `false` but `sessionTanSupported` is `true`: the user can enable session TAN using `CreateSessionTanChallenge` / `EnableSessionTan`. - If `allOperationsRequireSessionTan` is `true`, the auth methods can *ONLY* be used for enabling session TAN. - Otherwise, the `authMethods` can be used to perform individual operations. | sessionTanActive | sessionTanSupported | allOperationsRequireSessionTan | Description | | ---------------- | ------------------- | ------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `true` | `true` | - | Session TAN has been enabled for the session that currently backs the portfolio. In this case, all operations like `CreateTrade`, `ChangeOrder`, `CancelOrder` can be executed right away without an `authMethod`. The UI should _not_ show a dropdown with the auth methods in this case. | | `false` | `true` | `true` | the user can enable session TAN using the provided auth methods via `CreateSessionTanChallenge` / `EnableSessionTan`. All other operations can only take place after session TAN has been enabled. | | `false` | `true` | `false` | the user can enable any operation (enable session tan, create trade, cancel order, change order) using the provided auth methods | Note that it is possible that brokers only reveal all details about the available auth methods *TOGETHER* with the first `GetChallenge` request. This special behavior can be simulated with our demo broker when the flag `lazyAuthMethods=true` is specified upon creation of a demo account. In those accounts, the `GetAuthInfo` endpoint will initially return a single \"placeholder\" method with `{flow: \"CHALLENGE_RESPONSE\", isDefaultMethod: true, ...}`. In the situation where there is *exactly one* auth method like this, frontends may immediately request the challenge for the desired operation without waiting for the user to click the get challenge button (for Session TAN, this means that as soon as the user opens the dialog for enabling session TAN, `CreateSessionTanChallenge` can be called). In the case described here, `AuthInfo` will be populated with the actual list of auth methods when the create challenge request returns (also, the corresponding WebSocket event is published to notify about this change). `GetAuthInfo` must be called again in this case and repopulate the corresponding frontend (e.g. the name of the auth method will become available etc.). So what is done in this case is: request a challenge for the *unknown* default method in order to get both a challenge and an update of the auth methods. Note that usually challenges have effects like an SMS or some broker app notification for the end user, so it is important to keep the requested challenge info, *even when auth info is refreshed*. For example, if there is a select box with the auth method list, that box must keep its selected `id` while updating the now-available `label`. This way, the user can use the first requested challenge, as the frontend will still be in the right state.
297
+ */
298
+ async getAuthInfo(requestParameters, initOverrides) {
299
+ const response = await this.getAuthInfoRaw(requestParameters, initOverrides);
300
+ return await response.value();
301
+ }
302
+ /**
303
+ */
304
+ async getDecoupledOperationStatusRaw(requestParameters, initOverrides) {
305
+ if (requestParameters.sessionId === null ||
306
+ requestParameters.sessionId === undefined) {
307
+ throw new runtime.RequiredError("sessionId", "Required parameter requestParameters.sessionId was null or undefined when calling getDecoupledOperationStatus.");
308
+ }
309
+ if (requestParameters.decoupledOperationId === null ||
310
+ requestParameters.decoupledOperationId === undefined) {
311
+ throw new runtime.RequiredError("decoupledOperationId", "Required parameter requestParameters.decoupledOperationId was null or undefined when calling getDecoupledOperationStatus.");
312
+ }
313
+ const queryParameters = {};
314
+ const headerParameters = {};
315
+ if (this.configuration && this.configuration.apiKey) {
316
+ headerParameters["x-brkrz-client-id"] =
317
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
318
+ }
319
+ if (this.configuration && this.configuration.accessToken) {
320
+ const token = this.configuration.accessToken;
321
+ const tokenString = await token("idToken", []);
322
+ if (tokenString) {
323
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
324
+ }
325
+ }
326
+ const response = await this.request({
327
+ path: `/sessions/{sessionId}/decoupledOperation/{decoupledOperationId}`
328
+ .replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId)))
329
+ .replace(`{${"decoupledOperationId"}}`, encodeURIComponent(String(requestParameters.decoupledOperationId))),
330
+ method: "GET",
331
+ headers: headerParameters,
332
+ query: queryParameters,
333
+ }, initOverrides);
334
+ return new runtime.JSONApiResponse(response, (jsonValue) => DecoupledOperationStatusFromJSON(jsonValue));
335
+ }
336
+ /**
337
+ */
338
+ async getDecoupledOperationStatus(requestParameters, initOverrides) {
339
+ const response = await this.getDecoupledOperationStatusRaw(requestParameters, initOverrides);
340
+ return await response.value();
341
+ }
342
+ /**
343
+ */
344
+ async getOrderRaw(requestParameters, initOverrides) {
345
+ if (requestParameters.id === null || requestParameters.id === undefined) {
346
+ throw new runtime.RequiredError("id", "Required parameter requestParameters.id was null or undefined when calling getOrder.");
347
+ }
348
+ const queryParameters = {};
349
+ const headerParameters = {};
350
+ if (this.configuration && this.configuration.apiKey) {
351
+ headerParameters["x-brkrz-client-id"] =
352
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
353
+ }
354
+ if (this.configuration && this.configuration.accessToken) {
355
+ const token = this.configuration.accessToken;
356
+ const tokenString = await token("idToken", []);
357
+ if (tokenString) {
358
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
359
+ }
360
+ }
361
+ const response = await this.request({
362
+ path: `/order/{id}`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))),
363
+ method: "GET",
364
+ headers: headerParameters,
365
+ query: queryParameters,
366
+ }, initOverrides);
367
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetOrderResponseFromJSON(jsonValue));
368
+ }
369
+ /**
370
+ */
371
+ async getOrder(requestParameters, initOverrides) {
372
+ const response = await this.getOrderRaw(requestParameters, initOverrides);
373
+ return await response.value();
374
+ }
375
+ /**
376
+ */
377
+ async getPortfolioOrdersRaw(requestParameters, initOverrides) {
378
+ if (requestParameters.portfolioId === null ||
379
+ requestParameters.portfolioId === undefined) {
380
+ throw new runtime.RequiredError("portfolioId", "Required parameter requestParameters.portfolioId was null or undefined when calling getPortfolioOrders.");
381
+ }
382
+ const queryParameters = {};
383
+ if (requestParameters.take !== undefined) {
384
+ queryParameters["take"] = requestParameters.take;
385
+ }
386
+ if (requestParameters.skip !== undefined) {
387
+ queryParameters["skip"] = requestParameters.skip;
388
+ }
389
+ if (requestParameters.search !== undefined) {
390
+ queryParameters["search"] = requestParameters.search;
391
+ }
392
+ if (requestParameters.statuses !== undefined) {
393
+ queryParameters["statuses"] = requestParameters.statuses;
394
+ }
395
+ if (requestParameters.orderBy !== undefined) {
396
+ queryParameters["orderBy"] = requestParameters.orderBy;
397
+ }
398
+ if (requestParameters.isin !== undefined) {
399
+ queryParameters["isin"] = requestParameters.isin;
400
+ }
401
+ if (requestParameters.wkn !== undefined) {
402
+ queryParameters["wkn"] = requestParameters.wkn;
403
+ }
404
+ if (requestParameters.sinoTicker !== undefined) {
405
+ queryParameters["sinoTicker"] = requestParameters.sinoTicker;
406
+ }
407
+ if (requestParameters.usTicker !== undefined) {
408
+ queryParameters["usTicker"] = requestParameters.usTicker;
409
+ }
410
+ if (requestParameters.cryptoCode !== undefined) {
411
+ queryParameters["cryptoCode"] = requestParameters.cryptoCode;
412
+ }
413
+ const headerParameters = {};
414
+ if (this.configuration && this.configuration.apiKey) {
415
+ headerParameters["x-brkrz-client-id"] =
416
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
417
+ }
418
+ if (this.configuration && this.configuration.accessToken) {
419
+ const token = this.configuration.accessToken;
420
+ const tokenString = await token("idToken", []);
421
+ if (tokenString) {
422
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
423
+ }
424
+ }
425
+ const response = await this.request({
426
+ path: `/portfolios/{portfolioId}/orders`.replace(`{${"portfolioId"}}`, encodeURIComponent(String(requestParameters.portfolioId))),
427
+ method: "GET",
428
+ headers: headerParameters,
429
+ query: queryParameters,
430
+ }, initOverrides);
431
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPortfolioOrdersResponseFromJSON(jsonValue));
432
+ }
433
+ /**
434
+ */
435
+ async getPortfolioOrders(requestParameters, initOverrides) {
436
+ const response = await this.getPortfolioOrdersRaw(requestParameters, initOverrides);
437
+ return await response.value();
438
+ }
439
+ /**
440
+ */
441
+ async getPortfolioPositionsRaw(requestParameters, initOverrides) {
442
+ if (requestParameters.portfolioId === null ||
443
+ requestParameters.portfolioId === undefined) {
444
+ throw new runtime.RequiredError("portfolioId", "Required parameter requestParameters.portfolioId was null or undefined when calling getPortfolioPositions.");
445
+ }
446
+ const queryParameters = {};
447
+ const headerParameters = {};
448
+ if (this.configuration && this.configuration.apiKey) {
449
+ headerParameters["x-brkrz-client-id"] =
450
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
451
+ }
452
+ if (this.configuration && this.configuration.accessToken) {
453
+ const token = this.configuration.accessToken;
454
+ const tokenString = await token("idToken", []);
455
+ if (tokenString) {
456
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
457
+ }
458
+ }
459
+ const response = await this.request({
460
+ path: `/portfolios/{portfolioId}/positions`.replace(`{${"portfolioId"}}`, encodeURIComponent(String(requestParameters.portfolioId))),
461
+ method: "GET",
462
+ headers: headerParameters,
463
+ query: queryParameters,
464
+ }, initOverrides);
465
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPortfolioPositionsResponseFromJSON(jsonValue));
466
+ }
467
+ /**
468
+ */
469
+ async getPortfolioPositions(requestParameters, initOverrides) {
470
+ const response = await this.getPortfolioPositionsRaw(requestParameters, initOverrides);
471
+ return await response.value();
472
+ }
473
+ /**
474
+ */
475
+ async getPortfolioQuotesRaw(requestParameters, initOverrides) {
476
+ if (requestParameters.portfolioId === null ||
477
+ requestParameters.portfolioId === undefined) {
478
+ throw new runtime.RequiredError("portfolioId", "Required parameter requestParameters.portfolioId was null or undefined when calling getPortfolioQuotes.");
479
+ }
480
+ const queryParameters = {};
481
+ const headerParameters = {};
482
+ if (this.configuration && this.configuration.apiKey) {
483
+ headerParameters["x-brkrz-client-id"] =
484
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
485
+ }
486
+ if (this.configuration && this.configuration.accessToken) {
487
+ const token = this.configuration.accessToken;
488
+ const tokenString = await token("idToken", []);
489
+ if (tokenString) {
490
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
491
+ }
492
+ }
493
+ const response = await this.request({
494
+ path: `/portfolios/{portfolioId}/quotes`.replace(`{${"portfolioId"}}`, encodeURIComponent(String(requestParameters.portfolioId))),
495
+ method: "GET",
496
+ headers: headerParameters,
497
+ query: queryParameters,
498
+ }, initOverrides);
499
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetPortfolioQuotesResponseFromJSON(jsonValue));
500
+ }
501
+ /**
502
+ */
503
+ async getPortfolioQuotes(requestParameters, initOverrides) {
504
+ const response = await this.getPortfolioQuotesRaw(requestParameters, initOverrides);
505
+ return await response.value();
506
+ }
507
+ /**
508
+ */
509
+ async getPortfoliosRaw(initOverrides) {
510
+ const queryParameters = {};
511
+ const headerParameters = {};
512
+ if (this.configuration && this.configuration.apiKey) {
513
+ headerParameters["x-brkrz-client-id"] =
514
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
515
+ }
516
+ if (this.configuration && this.configuration.accessToken) {
517
+ const token = this.configuration.accessToken;
518
+ const tokenString = await token("idToken", []);
519
+ if (tokenString) {
520
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
521
+ }
522
+ }
523
+ const response = await this.request({
524
+ path: `/portfolios`,
525
+ method: "GET",
526
+ headers: headerParameters,
527
+ query: queryParameters,
528
+ }, initOverrides);
529
+ return new runtime.JSONApiResponse(response, (jsonValue) => PortfoliosResponseFromJSON(jsonValue));
530
+ }
531
+ /**
532
+ */
533
+ async getPortfolios(initOverrides) {
534
+ const response = await this.getPortfoliosRaw(initOverrides);
535
+ return await response.value();
536
+ }
537
+ /**
538
+ * Get the currently active broker sessions of the user\'s account.
539
+ */
540
+ async getSessionsRaw(initOverrides) {
541
+ const queryParameters = {};
542
+ const headerParameters = {};
543
+ if (this.configuration && this.configuration.apiKey) {
544
+ headerParameters["x-brkrz-client-id"] =
545
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
546
+ }
547
+ if (this.configuration && this.configuration.accessToken) {
548
+ const token = this.configuration.accessToken;
549
+ const tokenString = await token("idToken", []);
550
+ if (tokenString) {
551
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
552
+ }
553
+ }
554
+ const response = await this.request({
555
+ path: `/sessions`,
556
+ method: "GET",
557
+ headers: headerParameters,
558
+ query: queryParameters,
559
+ }, initOverrides);
560
+ return new runtime.JSONApiResponse(response, (jsonValue) => SessionResponseFromJSON(jsonValue));
561
+ }
562
+ /**
563
+ * Get the currently active broker sessions of the user\'s account.
564
+ */
565
+ async getSessions(initOverrides) {
566
+ const response = await this.getSessionsRaw(initOverrides);
567
+ return await response.value();
568
+ }
569
+ /**
570
+ * Checks the provided authentication and returns the logged-in user.
571
+ */
572
+ async getUserRaw(initOverrides) {
573
+ const queryParameters = {};
574
+ const headerParameters = {};
575
+ if (this.configuration && this.configuration.apiKey) {
576
+ headerParameters["x-brkrz-client-id"] =
577
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
578
+ }
579
+ if (this.configuration && this.configuration.accessToken) {
580
+ const token = this.configuration.accessToken;
581
+ const tokenString = await token("idToken", []);
582
+ if (tokenString) {
583
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
584
+ }
585
+ }
586
+ const response = await this.request({
587
+ path: `/user`,
588
+ method: "GET",
589
+ headers: headerParameters,
590
+ query: queryParameters,
591
+ }, initOverrides);
592
+ return new runtime.JSONApiResponse(response, (jsonValue) => GetUserResponseFromJSON(jsonValue));
593
+ }
594
+ /**
595
+ * Checks the provided authentication and returns the logged-in user.
596
+ */
597
+ async getUser(initOverrides) {
598
+ const response = await this.getUserRaw(initOverrides);
599
+ return await response.value();
600
+ }
601
+ /**
602
+ * Log out from the given broker session.
603
+ */
604
+ async logoutSessionRaw(requestParameters, initOverrides) {
605
+ if (requestParameters.sessionId === null ||
606
+ requestParameters.sessionId === undefined) {
607
+ throw new runtime.RequiredError("sessionId", "Required parameter requestParameters.sessionId was null or undefined when calling logoutSession.");
608
+ }
609
+ const queryParameters = {};
610
+ const headerParameters = {};
611
+ if (this.configuration && this.configuration.apiKey) {
612
+ headerParameters["x-brkrz-client-id"] =
613
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
614
+ }
615
+ if (this.configuration && this.configuration.accessToken) {
616
+ const token = this.configuration.accessToken;
617
+ const tokenString = await token("idToken", []);
618
+ if (tokenString) {
619
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
620
+ }
621
+ }
622
+ const response = await this.request({
623
+ path: `/sessions/{sessionId}`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
624
+ method: "DELETE",
625
+ headers: headerParameters,
626
+ query: queryParameters,
627
+ }, initOverrides);
628
+ return new runtime.JSONApiResponse(response, (jsonValue) => OkResponseBodyFromJSON(jsonValue));
629
+ }
630
+ /**
631
+ * Log out from the given broker session.
632
+ */
633
+ async logoutSession(requestParameters, initOverrides) {
634
+ const response = await this.logoutSessionRaw(requestParameters, initOverrides);
635
+ return await response.value();
636
+ }
637
+ /**
638
+ * Obtain a new access token using a refresh token as specified in https://datatracker.ietf.org/doc/html/rfc6749#section-4.1.4. If `CreateGuestUser` has provided a `refresh_token`, this endpoint may be used to obtain a new `access_token` after the original token has expired.
639
+ */
640
+ async obtainTokenRaw(requestParameters, initOverrides) {
641
+ if (requestParameters.grantType === null ||
642
+ requestParameters.grantType === undefined) {
643
+ throw new runtime.RequiredError("grantType", "Required parameter requestParameters.grantType was null or undefined when calling obtainToken.");
644
+ }
645
+ if (requestParameters.refreshToken === null ||
646
+ requestParameters.refreshToken === undefined) {
647
+ throw new runtime.RequiredError("refreshToken", "Required parameter requestParameters.refreshToken was null or undefined when calling obtainToken.");
648
+ }
649
+ const queryParameters = {};
650
+ const headerParameters = {};
651
+ if (this.configuration && this.configuration.apiKey) {
652
+ headerParameters["x-brkrz-client-id"] =
653
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
654
+ }
655
+ const consumes = [
656
+ { contentType: "application/x-www-form-urlencoded" },
657
+ ];
658
+ // @ts-ignore: canConsumeForm may be unused
659
+ const canConsumeForm = runtime.canConsumeForm(consumes);
660
+ let formParams;
661
+ let useForm = false;
662
+ if (useForm) {
663
+ formParams = new FormData();
664
+ }
665
+ else {
666
+ throw new Error("URLSearchParams support has been dopped due to compatibility problems in mobile apps.");
667
+ }
668
+ if (requestParameters.grantType !== undefined) {
669
+ formParams.append("grant_type", requestParameters.grantType);
670
+ }
671
+ if (requestParameters.refreshToken !== undefined) {
672
+ formParams.append("refresh_token", requestParameters.refreshToken);
673
+ }
674
+ const response = await this.request({
675
+ path: `/user/token`,
676
+ method: "POST",
677
+ headers: headerParameters,
678
+ query: queryParameters,
679
+ body: formParams,
680
+ }, initOverrides);
681
+ return new runtime.JSONApiResponse(response, (jsonValue) => ObtainToken200ResponseFromJSON(jsonValue));
682
+ }
683
+ /**
684
+ * Obtain a new access token using a refresh token as specified in https://datatracker.ietf.org/doc/html/rfc6749#section-4.1.4. If `CreateGuestUser` has provided a `refresh_token`, this endpoint may be used to obtain a new `access_token` after the original token has expired.
685
+ */
686
+ async obtainToken(requestParameters, initOverrides) {
687
+ const response = await this.obtainTokenRaw(requestParameters, initOverrides);
688
+ return await response.value();
689
+ }
690
+ /**
691
+ * This endpoint can be used to rename the display name of a specified portfolio. To restore the original portfolio name, send a rename request with an empty string as the new name. **Note**: This does not change the original portfolio name at your broker.
692
+ */
693
+ async renamePortfolioRaw(requestParameters, initOverrides) {
694
+ if (requestParameters.portfolioId === null ||
695
+ requestParameters.portfolioId === undefined) {
696
+ throw new runtime.RequiredError("portfolioId", "Required parameter requestParameters.portfolioId was null or undefined when calling renamePortfolio.");
697
+ }
698
+ if (requestParameters.renamePortfolioRequest === null ||
699
+ requestParameters.renamePortfolioRequest === undefined) {
700
+ throw new runtime.RequiredError("renamePortfolioRequest", "Required parameter requestParameters.renamePortfolioRequest was null or undefined when calling renamePortfolio.");
701
+ }
702
+ const queryParameters = {};
703
+ const headerParameters = {};
704
+ headerParameters["Content-Type"] = "application/json";
705
+ if (this.configuration && this.configuration.apiKey) {
706
+ headerParameters["x-brkrz-client-id"] =
707
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
708
+ }
709
+ if (this.configuration && this.configuration.accessToken) {
710
+ const token = this.configuration.accessToken;
711
+ const tokenString = await token("idToken", []);
712
+ if (tokenString) {
713
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
714
+ }
715
+ }
716
+ const response = await this.request({
717
+ path: `/portfolios/{portfolioId}/rename`.replace(`{${"portfolioId"}}`, encodeURIComponent(String(requestParameters.portfolioId))),
718
+ method: "POST",
719
+ headers: headerParameters,
720
+ query: queryParameters,
721
+ body: RenamePortfolioRequestToJSON(requestParameters.renamePortfolioRequest),
722
+ }, initOverrides);
723
+ return new runtime.VoidApiResponse(response);
724
+ }
725
+ /**
726
+ * This endpoint can be used to rename the display name of a specified portfolio. To restore the original portfolio name, send a rename request with an empty string as the new name. **Note**: This does not change the original portfolio name at your broker.
727
+ */
728
+ async renamePortfolio(requestParameters, initOverrides) {
729
+ await this.renamePortfolioRaw(requestParameters, initOverrides);
730
+ }
731
+ /**
732
+ * Trigger a background sync process for the given broker session. This means that a sync will be scheduled as soon as possible. All data related to the portfolio (e.g. positions and orders) will be loaded into the brokerize database.
733
+ */
734
+ async triggerSessionSyncRaw(requestParameters, initOverrides) {
735
+ if (requestParameters.sessionId === null ||
736
+ requestParameters.sessionId === undefined) {
737
+ throw new runtime.RequiredError("sessionId", "Required parameter requestParameters.sessionId was null or undefined when calling triggerSessionSync.");
738
+ }
739
+ const queryParameters = {};
740
+ const headerParameters = {};
741
+ if (this.configuration && this.configuration.apiKey) {
742
+ headerParameters["x-brkrz-client-id"] =
743
+ this.configuration.apiKey("x-brkrz-client-id"); // clientId authentication
744
+ }
745
+ if (this.configuration && this.configuration.accessToken) {
746
+ const token = this.configuration.accessToken;
747
+ const tokenString = await token("idToken", []);
748
+ if (tokenString) {
749
+ headerParameters["Authorization"] = `Bearer ${tokenString}`;
750
+ }
751
+ }
752
+ const response = await this.request({
753
+ path: `/sessions/{sessionId}/sync`.replace(`{${"sessionId"}}`, encodeURIComponent(String(requestParameters.sessionId))),
754
+ method: "POST",
755
+ headers: headerParameters,
756
+ query: queryParameters,
757
+ }, initOverrides);
758
+ return new runtime.JSONApiResponse(response, (jsonValue) => OkResponseBodyFromJSON(jsonValue));
759
+ }
760
+ /**
761
+ * Trigger a background sync process for the given broker session. This means that a sync will be scheduled as soon as possible. All data related to the portfolio (e.g. positions and orders) will be loaded into the brokerize database.
762
+ */
763
+ async triggerSessionSync(requestParameters, initOverrides) {
764
+ const response = await this.triggerSessionSyncRaw(requestParameters, initOverrides);
765
+ return await response.value();
766
+ }
767
+ /**
768
+ * Most operations at brokerize have asynchronous effects. For example, consider the flow of an order: when the user creates an order, it will not immediately appear in order list endpoints, because usually brokers take a few seconds until they are retrievable in those lists. Also, after a while, the order may be executed or cancelled asynchronously by the stock exchange. A common solution for frontends would be to reload the order list regularly. However data is then either delayed or there will be many more requests than needed. The brokerize websocket endpoint allows getting updates via web sockets. Generally speaking, clients can subscribe by assigning a subscription id and will then receive updates on that subscription. In this documentation, ⬆️ denotes messages from the client to the server, whereas messages from server to client are marked with ⬇️. ## authentication When using cookies for authorization, the WebSocket connection is authenticated with the HTTP upgrade request. If token headers are used, the _first_ message from client to server must be: ``` ⬆️ { \"cmd\": \"authorize\", \"idToken\": <string> } ``` In all cases, clients must wait for the welcome message before sending other messages: ``` ⬇️ { \"cmd\": \"authenticated\" } ``` ## ping After 1 minute of inactivity of a client, the WebSocket connection will be considered stale and will automatically terminated. To prevent this, a ping message can be sent: ``` ⬆️ {\"cmd\": \"ping\"} ``` The server also sends this message regularly. If no message has been received on a WebSocket connection for more than 1 minute, it should be terminated by the client. ``` ⬇️ {\"cmd\": \"ping\"} ``` ## subscriptions Subscriptions can be used to get invalidate events or updates for selected resources. ### invalidate subscriptions Invalidation events can be used for the frontend to know when reload requests via the HTTP endpoints are appropriate. Currently only invalidate events can be subscribed, the actual data must then be reloaded using the HTTP endpoints. To set up a subscription for an invalidate event, use: ``` ⬆️ { \"cmd\": \"subscribe\", \"type\": \"invalidate\", \"subscriptionId\": 1, \"entity: \"brokersessions\" /_* \"positions\" | \"orders\" *_/, \"portfolioId\": 42 /_* required for \"positions\" or \"orders\" *_/ } ``` If the subscription failed to be set up on the server, an error will be sent for the subscription. This also automatically ends the subscription on the server side: ``` ⬇️ { \"subscriptionId\": 1, \"error\": { \"message\": \"Could not set up invalidation event due to...\" } } ``` If an invalid `subscriptionId` is provided (or the subscription id is already in use by the connection), an error like this will be sent: ``` ⬇️ { \"error\": { \"message\": \"Could not add subscription due to invalid subscriptionId\" } } ``` ⚠️ _the connection will then be terminated immediately_. If the subscription is sucessfuly set up, whenever an invalidation happens, the server will send a message like this: ``` ⬇️ { \"cmd\": \"invalidate\", \"subscriptionId\": 1 } ``` When that invalidation event is received, the client should reload the data using the corresponding endpoints. Clients can end their subscription with the `unsubscribe` command: ``` ⬆️ { \"cmd\": \"unsubscribe\", \"subscriptionId\": 1 } ``` ### subscribe to the state of a decoupled operation For decoupled operations (e.g. authorizing a session TAN using a second factor device), the state of the operation can be subscribed: ``` ⬆️ { \"cmd\": \"subscribe\", \"type\": \"decoupledOperationStatus\", \"subscriptionId\": 1, \"sessionId\": string, \"decoupledOperationId\": string } ``` Error handling as well as unsubscribing works as described for invalidate subscriptions. Example message from the server for updating the state: ``` ⬇️ { \"cmd\": \"updateDecoupledOperationStatus\", \"subscriptionId\": number, \"state\": <DecoupledOperationStatus> } ```
769
+ */
770
+ async websocketRaw(initOverrides) {
771
+ const queryParameters = {};
772
+ const headerParameters = {};
773
+ const response = await this.request({
774
+ path: `/websocket`,
775
+ method: "GET",
776
+ headers: headerParameters,
777
+ query: queryParameters,
778
+ }, initOverrides);
779
+ return new runtime.VoidApiResponse(response);
780
+ }
781
+ /**
782
+ * Most operations at brokerize have asynchronous effects. For example, consider the flow of an order: when the user creates an order, it will not immediately appear in order list endpoints, because usually brokers take a few seconds until they are retrievable in those lists. Also, after a while, the order may be executed or cancelled asynchronously by the stock exchange. A common solution for frontends would be to reload the order list regularly. However data is then either delayed or there will be many more requests than needed. The brokerize websocket endpoint allows getting updates via web sockets. Generally speaking, clients can subscribe by assigning a subscription id and will then receive updates on that subscription. In this documentation, ⬆️ denotes messages from the client to the server, whereas messages from server to client are marked with ⬇️. ## authentication When using cookies for authorization, the WebSocket connection is authenticated with the HTTP upgrade request. If token headers are used, the _first_ message from client to server must be: ``` ⬆️ { \"cmd\": \"authorize\", \"idToken\": <string> } ``` In all cases, clients must wait for the welcome message before sending other messages: ``` ⬇️ { \"cmd\": \"authenticated\" } ``` ## ping After 1 minute of inactivity of a client, the WebSocket connection will be considered stale and will automatically terminated. To prevent this, a ping message can be sent: ``` ⬆️ {\"cmd\": \"ping\"} ``` The server also sends this message regularly. If no message has been received on a WebSocket connection for more than 1 minute, it should be terminated by the client. ``` ⬇️ {\"cmd\": \"ping\"} ``` ## subscriptions Subscriptions can be used to get invalidate events or updates for selected resources. ### invalidate subscriptions Invalidation events can be used for the frontend to know when reload requests via the HTTP endpoints are appropriate. Currently only invalidate events can be subscribed, the actual data must then be reloaded using the HTTP endpoints. To set up a subscription for an invalidate event, use: ``` ⬆️ { \"cmd\": \"subscribe\", \"type\": \"invalidate\", \"subscriptionId\": 1, \"entity: \"brokersessions\" /_* \"positions\" | \"orders\" *_/, \"portfolioId\": 42 /_* required for \"positions\" or \"orders\" *_/ } ``` If the subscription failed to be set up on the server, an error will be sent for the subscription. This also automatically ends the subscription on the server side: ``` ⬇️ { \"subscriptionId\": 1, \"error\": { \"message\": \"Could not set up invalidation event due to...\" } } ``` If an invalid `subscriptionId` is provided (or the subscription id is already in use by the connection), an error like this will be sent: ``` ⬇️ { \"error\": { \"message\": \"Could not add subscription due to invalid subscriptionId\" } } ``` ⚠️ _the connection will then be terminated immediately_. If the subscription is sucessfuly set up, whenever an invalidation happens, the server will send a message like this: ``` ⬇️ { \"cmd\": \"invalidate\", \"subscriptionId\": 1 } ``` When that invalidation event is received, the client should reload the data using the corresponding endpoints. Clients can end their subscription with the `unsubscribe` command: ``` ⬆️ { \"cmd\": \"unsubscribe\", \"subscriptionId\": 1 } ``` ### subscribe to the state of a decoupled operation For decoupled operations (e.g. authorizing a session TAN using a second factor device), the state of the operation can be subscribed: ``` ⬆️ { \"cmd\": \"subscribe\", \"type\": \"decoupledOperationStatus\", \"subscriptionId\": 1, \"sessionId\": string, \"decoupledOperationId\": string } ``` Error handling as well as unsubscribing works as described for invalidate subscriptions. Example message from the server for updating the state: ``` ⬇️ { \"cmd\": \"updateDecoupledOperationStatus\", \"subscriptionId\": number, \"state\": <DecoupledOperationStatus> } ```
783
+ */
784
+ async websocket(initOverrides) {
785
+ await this.websocketRaw(initOverrides);
786
+ }
787
+ }