diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index d88a51f..aa3b74e 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -101,9 +101,12 @@ AmountRangeMinMax2.md ApiKey.md ApiKeysPaginatedResponse.md ApiUserApi.md +ApprovalApiKey.md +ApprovalApiPublicKey.md ApprovalRequest.md ApprovalRequestItem.md ApprovalsBetaApi.md +ApproveApprovalRequest.md ApproversConfig.md ApproversConfigApprovalGroupsInner.md Apy.md @@ -142,7 +145,9 @@ AssignVaultsToLegalEntityRequest.md AssignVaultsToLegalEntityResponse.md AttachDetachUtxoLabelsRequest.md AttachDetachUtxoLabelsResponse.md +AuditEventTypeEnum.md AuditLogData.md +AuditLogEntry.md AuditLogsApi.md AuditLogsData.md AuditorData.md @@ -185,6 +190,7 @@ ByorkVerdictEnum.md ByorkVerdictRequest.md ByorkVerdictResponse.md ByorkVerdictResponseStatusEnum.md +BypassReasonEnum.md CallAccepted.md CallbackHandler.md CallbackHandlerRequest.md @@ -222,6 +228,7 @@ CollectionTokenMetadataAttributeDto.md CollectionTokenMetadataDto.md CollectionType.md ComplianceApi.md +ComplianceOrchestratorBetaApi.md ComplianceRequirement.md ComplianceResultFullPayload.md ComplianceResultStatusesEnum.md @@ -229,6 +236,7 @@ ComplianceResults.md ComplianceScreeningConfigurationApi.md ComplianceScreeningResult.md ComplianceScreeningResultFullPayload.md +ComplianceScreeningStatusEnum.md ConfigChangeRequestStatus.md ConfigConversionOperationSnapshot.md ConfigDisbursementOperationSnapshot.md @@ -254,6 +262,8 @@ ConnectedAccountsBetaApi.md ConnectedAccountsResponse.md ConnectedSingleAccount.md ConnectedSingleAccountResponse.md +ConnectorStatusEnum.md +ConnectorVerdictEnum.md ConsoleUser.md ConsoleUserApi.md ConsoleUsers.md @@ -557,6 +567,7 @@ GetPagedExchangeAccountsResponsePaging.md GetPositionsResponse.md GetProvidersResponse.md GetRoutingPolicyAssetGroupsResponse.md +GetScreeningResultResponse.md GetSigningKeyResponseDto.md GetSupportedAssetsResponse.md GetTestWalletAddressResponse.md @@ -569,6 +580,7 @@ GetVaultAccountAssetAddressesResponse.md GetVaultAccountsResponse.md GetVaultAssetsResponse.md GetWhitelistIpAddressesResponse.md +GetWorkflowResponse.md GetWorkspaceStatusResponse.md GleifData.md GleifOtherLegalEntityName.md @@ -637,6 +649,7 @@ LegacySrcOrDestAttributesInner.md LegalEntityRegistration.md LeiStatus.md LinkedTokensCount.md +ListApprovalApiKeysResponse.md ListApprovalsResponse.md ListAssetsResponse.md ListBlockchainsResponse.md @@ -852,6 +865,8 @@ ReadCallFunctionDtoAbiFunction.md ReasonForPaymentEnum.md RecipientHandle.md RedeemFundsToLinkedDDAResponse.md +RegisterApprovalApiKeyRequest.md +RegisterApprovalApiKeyResponse.md RegisterLegalEntityRequest.md RegisterNewAssetRequest.md ReissueMultichainTokenRequest.md @@ -894,9 +909,15 @@ RetryRequoteRequestDetails.md RetryRequoteTypeEnum.md RewardInfo.md RewardsInfo.md +RiskLevelEnum.md RoleDetails.md RoleDetails2.md RoleGrantee.md +Rule.md +RuleActionEnum.md +RuleCondition.md +RuleConditionOperatorEnum.md +RuleSet.md RulesetQuorum.md SEPAAddress.md SEPADestination.md @@ -910,11 +931,15 @@ ScreeningAmlAlert.md ScreeningAmlMatchedRule.md ScreeningAmlResult.md ScreeningConfigurationsRequest.md +ScreeningInput.md ScreeningMetadataConfig.md +ScreeningOperationEnum.md ScreeningOperationExecution.md ScreeningOperationExecutionOutput.md ScreeningOperationFailure.md ScreeningOperationType.md +ScreeningOutcomeEnum.md +ScreeningPayload.md ScreeningPolicyAmount.md ScreeningPolicyAmountRange.md ScreeningPolicyCurrency.md @@ -1035,6 +1060,10 @@ StakingPositionsPaginatedResponse.md StakingProvider.md Status.md StellarRippleCreateParamsDto.md +StepConfig.md +StepOperationConfig.md +StepResult.md +StepResultMetadata.md SubmitOrderRequirementRequest.md SupportedBlockChainsResponse.md SupportedBlockchain.md @@ -1190,6 +1219,7 @@ TransactionResponseDestination.md TransactionTag.md TransactionsApi.md TransferConfigOperation.md +TransferDirectionEnum.md TransferOperationConfigParams.md TransferOperationExecution.md TransferOperationExecutionOutput.md @@ -1263,6 +1293,9 @@ TravelRuleValidateTransactionRequest.md TravelRuleValidateTransactionResponse.md TravelRuleVaspForVault.md TravelRuleVerdictEnum.md +TriggerRuleOutcomeEnum.md +TriggerScreeningRequest.md +TriggerScreeningResponse.md TriggerValidationFlowResponse.md TrustProofOfAddressCreateResponse.md TrustProofOfAddressRequest.md @@ -1296,6 +1329,8 @@ UpdateVaultAccountAssetAddressRequest.md UpdateVaultAccountRequest.md UpdateWebhookOauthRequest.md UpdateWebhookRequest.md +UpdateWorkflowStatusRequest.md +UpdateWorkflowStatusResponse.md UsWirePaymentInfo.md UsdcGatewayWalletAsset.md UsdcGatewayWalletInfoResponse.md @@ -1348,6 +1383,7 @@ WebhookEvent.md WebhookMetric.md WebhookMtls.md WebhookMtlsCsrResponse.md +WebhookMtlsKeyAlgorithm.md WebhookOauthCredentials.md WebhookOauthCustomBodyParams.md WebhookOauthCustomBodyParamsUpdate.md @@ -1364,6 +1400,7 @@ WithdrawRequest.md WorkflowConfigStatus.md WorkflowConfigurationId.md WorkflowExecutionOperation.md +WorkflowStatusEnum.md Workspace.md WorkspaceApi.md WorkspaceStatusBetaApi.md @@ -1378,6 +1415,7 @@ api/audit-logs-api.ts api/blockchain-link-beta-api.ts api/blockchains-assets-api.ts api/compliance-api.ts +api/compliance-orchestrator-beta-api.ts api/compliance-screening-configuration-api.ts api/connected-accounts-beta-api.ts api/console-user-api.ts @@ -1534,8 +1572,11 @@ models/api-key.ts models/api-keys-paginated-response.ts models/apiuser.ts models/apiusers.ts +models/approval-api-key.ts +models/approval-api-public-key.ts models/approval-request-item.ts models/approval-request.ts +models/approve-approval-request.ts models/approvers-config-approval-groups-inner.ts models/approvers-config.ts models/apy.ts @@ -1574,7 +1615,9 @@ models/assign-vaults-to-legal-entity-request.ts models/assign-vaults-to-legal-entity-response.ts models/attach-detach-utxo-labels-request.ts models/attach-detach-utxo-labels-response.ts +models/audit-event-type-enum.ts models/audit-log-data.ts +models/audit-log-entry.ts models/audit-logs-data.ts models/auditor-data.ts models/authorization-groups.ts @@ -1614,6 +1657,7 @@ models/byork-verdict-enum.ts models/byork-verdict-request.ts models/byork-verdict-response-status-enum.ts models/byork-verdict-response.ts +models/bypass-reason-enum.ts models/call-accepted.ts models/callback-handler-request.ts models/callback-handler.ts @@ -1656,6 +1700,7 @@ models/compliance-result-statuses-enum.ts models/compliance-results.ts models/compliance-screening-result-full-payload.ts models/compliance-screening-result.ts +models/compliance-screening-status-enum.ts models/config-change-request-status.ts models/config-conversion-operation-snapshot.ts models/config-disbursement-operation-snapshot.ts @@ -1680,6 +1725,8 @@ models/connected-account.ts models/connected-accounts-response.ts models/connected-single-account-response.ts models/connected-single-account.ts +models/connector-status-enum.ts +models/connector-verdict-enum.ts models/console-user.ts models/console-users.ts models/contact-approval-request.ts @@ -1969,6 +2016,7 @@ models/get-paged-exchange-accounts-response.ts models/get-positions-response.ts models/get-providers-response.ts models/get-routing-policy-asset-groups-response.ts +models/get-screening-result-response.ts models/get-signing-key-response-dto.ts models/get-supported-assets-response.ts models/get-test-wallet-address-response.ts @@ -1981,6 +2029,7 @@ models/get-vault-account-asset-addresses-response.ts models/get-vault-accounts-response.ts models/get-vault-assets-response.ts models/get-whitelist-ip-addresses-response.ts +models/get-workflow-response.ts models/get-workspace-status-response.ts models/gleif-data.ts models/gleif-other-legal-entity-name.ts @@ -2046,6 +2095,7 @@ models/legacy-src-or-dest-attributes.ts models/legal-entity-registration.ts models/lei-status.ts models/linked-tokens-count.ts +models/list-approval-api-keys-response.ts models/list-approvals-response.ts models/list-assets-response.ts models/list-blockchains-response.ts @@ -2251,6 +2301,8 @@ models/read-call-function-dto.ts models/reason-for-payment-enum.ts models/recipient-handle.ts models/redeem-funds-to-linked-ddaresponse.ts +models/register-approval-api-key-request.ts +models/register-approval-api-key-response.ts models/register-legal-entity-request.ts models/register-new-asset-request.ts models/reissue-multichain-token-request.ts @@ -2291,9 +2343,15 @@ models/retry-requote-request-details.ts models/retry-requote-type-enum.ts models/reward-info.ts models/rewards-info.ts +models/risk-level-enum.ts models/role-details.ts models/role-details2.ts models/role-grantee.ts +models/rule-action-enum.ts +models/rule-condition-operator-enum.ts +models/rule-condition.ts +models/rule-set.ts +models/rule.ts models/ruleset-quorum.ts models/save-automation-settings-response.ts models/scope-item-failure.ts @@ -2303,11 +2361,15 @@ models/screening-aml-alert.ts models/screening-aml-matched-rule.ts models/screening-aml-result.ts models/screening-configurations-request.ts +models/screening-input.ts models/screening-metadata-config.ts +models/screening-operation-enum.ts models/screening-operation-execution-output.ts models/screening-operation-execution.ts models/screening-operation-failure.ts models/screening-operation-type.ts +models/screening-outcome-enum.ts +models/screening-payload.ts models/screening-policy-amount-range.ts models/screening-policy-amount.ts models/screening-policy-currency.ts @@ -2429,6 +2491,10 @@ models/staking-positions-paginated-response.ts models/staking-provider.ts models/status.ts models/stellar-ripple-create-params-dto.ts +models/step-config.ts +models/step-operation-config.ts +models/step-result-metadata.ts +models/step-result.ts models/submit-order-requirement-request.ts models/supported-block-chains-response.ts models/supported-blockchain.ts @@ -2486,6 +2552,7 @@ models/transaction-response.ts models/transaction-tag.ts models/transaction.ts models/transfer-config-operation.ts +models/transfer-direction-enum.ts models/transfer-operation-config-params.ts models/transfer-operation-execution-output.ts models/transfer-operation-execution-params-execution-params.ts @@ -2558,6 +2625,9 @@ models/travel-rule-vaspexternal-entity-config.ts models/travel-rule-vaspexternal-entity-registration.ts models/travel-rule-vaspexternal-entity.ts models/travel-rule-verdict-enum.ts +models/trigger-rule-outcome-enum.ts +models/trigger-screening-request.ts +models/trigger-screening-response.ts models/trigger-validation-flow-response.ts models/trlink-amount.ts models/trlink-apipaged-response.ts @@ -2681,6 +2751,8 @@ models/update-vault-account-asset-address-request.ts models/update-vault-account-request.ts models/update-webhook-oauth-request.ts models/update-webhook-request.ts +models/update-workflow-status-request.ts +models/update-workflow-status-response.ts models/us-wire-payment-info.ts models/usdc-gateway-wallet-asset.ts models/usdc-gateway-wallet-info-response.ts @@ -2729,6 +2801,7 @@ models/webhook-custom-headers.ts models/webhook-event.ts models/webhook-metric.ts models/webhook-mtls-csr-response.ts +models/webhook-mtls-key-algorithm.ts models/webhook-mtls.ts models/webhook-oauth-credentials.ts models/webhook-oauth-custom-body-params-update.ts @@ -2744,6 +2817,7 @@ models/withdraw-request.ts models/workflow-config-status.ts models/workflow-configuration-id.ts models/workflow-execution-operation.ts +models/workflow-status-enum.ts models/workspace.ts models/write-abi-function.ts models/write-call-function-dto-abi-function.ts diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index a0516d7..0000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,258 +0,0 @@ -# Changelog - -All notable changes to this project will be documented in this file. - -The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) -and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - -## [v31.0.0](https://github.com/fireblocks/ts-sdk/compare/v19.0.0...v31.0.0) - 2026-09-15 - -### Merged - -- Generated SDK #2850019096 [`#209`](https://github.com/fireblocks/ts-sdk/pull/209) - -## [v19.0.0](https://github.com/fireblocks/ts-sdk/compare/v18.0.0...v19.0.0) - 2026-05-17 - -### Merged - -- Generated SDK #7742 (major) [`#183`](https://github.com/fireblocks/ts-sdk/pull/183) - -## [v18.0.0](https://github.com/fireblocks/ts-sdk/compare/v17.0.0...v18.0.0) - 2026-05-06 - -### Merged - -- Generated SDK #3222 [`#181`](https://github.com/fireblocks/ts-sdk/pull/181) - -## [v17.0.0](https://github.com/fireblocks/ts-sdk/compare/v16.0.0...v17.0.0) - 2026-04-20 - -### Merged - -- Generated SDK #9605 (major) [`#180`](https://github.com/fireblocks/ts-sdk/pull/180) - -## [v16.0.0](https://github.com/fireblocks/ts-sdk/compare/v15.0.0...v16.0.0) - 2026-04-06 - -### Merged - -- Generated SDK #3331 [`#179`](https://github.com/fireblocks/ts-sdk/pull/179) - -## [v15.0.0](https://github.com/fireblocks/ts-sdk/compare/v14.1.0...v15.0.0) - 2026-03-15 - -### Merged - -- Generated SDK #3733 (major) [`#174`](https://github.com/fireblocks/ts-sdk/pull/174) - -## [v14.1.0](https://github.com/fireblocks/ts-sdk/compare/v14.0.0...v14.1.0) - 2026-02-26 - -### Merged - -- Generated SDK #2167 [`#172`](https://github.com/fireblocks/ts-sdk/pull/172) - -## [v14.0.0](https://github.com/fireblocks/ts-sdk/compare/v13.0.0...v14.0.0) - 2026-02-03 - -### Merged - -- Generated SDK #4746 [`#164`](https://github.com/fireblocks/ts-sdk/pull/164) - -## [v13.0.0](https://github.com/fireblocks/ts-sdk/compare/v12.1.2...v13.0.0) - 2025-11-13 - -### Merged - -- Generated SDK #5834 [`#146`](https://github.com/fireblocks/ts-sdk/pull/146) - -## [v12.1.2](https://github.com/fireblocks/ts-sdk/compare/v12.1.1...v12.1.2) - 2025-10-22 - -### Merged - -- Generated SDK #8293 [`#145`](https://github.com/fireblocks/ts-sdk/pull/145) - -## [v12.1.1](https://github.com/fireblocks/ts-sdk/compare/v12.1.0...v12.1.1) - 2025-09-29 - -### Merged - -- Generated SDK #6061 [`#143`](https://github.com/fireblocks/ts-sdk/pull/143) - -## [v12.1.0](https://github.com/fireblocks/ts-sdk/compare/v12.0.0...v12.1.0) - 2025-09-09 - -### Merged - -- Generated SDK #4521 [`#142`](https://github.com/fireblocks/ts-sdk/pull/142) - -## [v12.0.0](https://github.com/fireblocks/ts-sdk/compare/v11.2.0...v12.0.0) - 2025-09-01 - -### Merged - -- Generated SDK #7741 [`#141`](https://github.com/fireblocks/ts-sdk/pull/141) - -## [v11.2.0](https://github.com/fireblocks/ts-sdk/compare/v11.1.0...v11.2.0) - 2025-08-18 - -### Merged - -- Generated SDK #3302 [`#140`](https://github.com/fireblocks/ts-sdk/pull/140) - -## [v11.1.0](https://github.com/fireblocks/ts-sdk/compare/v11.0.0...v11.1.0) - 2025-08-11 - -### Merged - -- Generated SDK #1782 [`#139`](https://github.com/fireblocks/ts-sdk/pull/139) - -## [v11.0.0](https://github.com/fireblocks/ts-sdk/compare/v10.4.0...v11.0.0) - 2025-07-15 - -### Merged - -- Generated SDK #5610 [`#136`](https://github.com/fireblocks/ts-sdk/pull/136) - -## [v10.4.0](https://github.com/fireblocks/ts-sdk/compare/v10.3.0...v10.4.0) - 2025-06-29 - -### Merged - -- Generated SDK #1492 [`#135`](https://github.com/fireblocks/ts-sdk/pull/135) - -## [v10.3.0](https://github.com/fireblocks/ts-sdk/compare/v10.2.0...v10.3.0) - 2025-06-18 - -### Merged - -- Generated SDK #4009 [`#134`](https://github.com/fireblocks/ts-sdk/pull/134) - -## [v10.2.0](https://github.com/fireblocks/ts-sdk/compare/v10.1.1...v10.2.0) - 2025-06-04 - -### Merged - -- Generated SDK #8912 [`#133`](https://github.com/fireblocks/ts-sdk/pull/133) - -## [v10.1.1](https://github.com/fireblocks/ts-sdk/compare/v10.1.0...v10.1.1) - 2025-05-18 - -### Merged - -- Generated SDK #5019 [`#132`](https://github.com/fireblocks/ts-sdk/pull/132) - -## [v10.1.0](https://github.com/fireblocks/ts-sdk/compare/v10.0.2...v10.1.0) - 2025-05-07 - -### Merged - -- Generated SDK #7076 [`#130`](https://github.com/fireblocks/ts-sdk/pull/130) - -## [v10.0.2](https://github.com/fireblocks/ts-sdk/compare/v10.0.1...v10.0.2) - 2025-04-20 - -### Merged - -- Generated SDK #4794 [`#128`](https://github.com/fireblocks/ts-sdk/pull/128) - -## [v10.0.1](https://github.com/fireblocks/ts-sdk/compare/v10.0.0...v10.0.1) - 2025-04-07 - -### Merged - -- Generated SDK #3065 [`#126`](https://github.com/fireblocks/ts-sdk/pull/126) - -## [v10.0.0](https://github.com/fireblocks/ts-sdk/compare/v9.0.0...v10.0.0) - 2025-03-27 - -### Merged - -- Generated SDK #619 [`#124`](https://github.com/fireblocks/ts-sdk/pull/124) - -## [v9.0.0](https://github.com/fireblocks/ts-sdk/compare/v8.1.0...v9.0.0) - 2025-03-17 - -### Merged - -- Generated SDK #645 [`#123`](https://github.com/fireblocks/ts-sdk/pull/123) - -## [v8.1.0](https://github.com/fireblocks/ts-sdk/compare/v8.0.1...v8.1.0) - 2025-02-24 - -### Merged - -- Generated SDK #9833 [`#120`](https://github.com/fireblocks/ts-sdk/pull/120) - -## [v8.0.1](https://github.com/fireblocks/ts-sdk/compare/v8.0.0...v8.0.1) - 2025-02-12 - -### Merged - -- Generated SDK #4262 [`#119`](https://github.com/fireblocks/ts-sdk/pull/119) - -## [v8.0.0](https://github.com/fireblocks/ts-sdk/compare/v7.0.0...v8.0.0) - 2025-02-02 - -### Merged - -- Generated SDK #538 [`#118`](https://github.com/fireblocks/ts-sdk/pull/118) - -## [v7.0.0](https://github.com/fireblocks/ts-sdk/compare/v6.0.0...v7.0.0) - 2025-01-08 - -### Merged - -- Generated SDK #8699 [`#116`](https://github.com/fireblocks/ts-sdk/pull/116) - -## [v6.0.0](https://github.com/fireblocks/ts-sdk/compare/v5.0.0...v6.0.0) - 2024-12-05 - -### Merged - -- Generated SDK #1430 [`#111`](https://github.com/fireblocks/ts-sdk/pull/111) - -## [v5.0.0](https://github.com/fireblocks/ts-sdk/compare/v4.0.0...v5.0.0) - 2024-10-31 - -### Merged - -- Generated SDK #5184 [`#109`](https://github.com/fireblocks/ts-sdk/pull/109) - -## [v4.0.0](https://github.com/fireblocks/ts-sdk/compare/v3.1.0...v4.0.0) - 2024-09-17 - -### Merged - -- Generated SDK #237 [`#107`](https://github.com/fireblocks/ts-sdk/pull/107) - -## [v3.1.0](https://github.com/fireblocks/ts-sdk/compare/v3.0.0...v3.1.0) - 2024-07-25 - -### Merged - -- Generated SDK #6749 [`#102`](https://github.com/fireblocks/ts-sdk/pull/102) - -## [v3.0.0](https://github.com/fireblocks/ts-sdk/compare/v2.1.0...v3.0.0) - 2024-07-17 - -### Merged - -- Generated SDK #6152 [`#90`](https://github.com/fireblocks/ts-sdk/pull/90) -- Generated SDK #2589 [`#86`](https://github.com/fireblocks/ts-sdk/pull/86) -- Generated SDK #7882 [`#85`](https://github.com/fireblocks/ts-sdk/pull/85) -- Generated SDK #8418 [`#84`](https://github.com/fireblocks/ts-sdk/pull/84) -- Generated SDK #3524 [`#83`](https://github.com/fireblocks/ts-sdk/pull/83) -- Generated SDK #7984 [`#82`](https://github.com/fireblocks/ts-sdk/pull/82) -- Generated SDK #2873 [`#81`](https://github.com/fireblocks/ts-sdk/pull/81) - -## [v2.1.0](https://github.com/fireblocks/ts-sdk/compare/v2.0.0...v2.1.0) - 2024-06-04 - -### Merged - -- Generated SDK for version COR-46191/fix_pipelines [`#44`](https://github.com/fireblocks/ts-sdk/pull/44) - -## [v2.0.0](https://github.com/fireblocks/ts-sdk/compare/v1.1.0...v2.0.0) - 2024-05-08 - -### Merged - -- feat: add tokenization api [`#35`](https://github.com/fireblocks/ts-sdk/pull/35) - -## [v1.1.0](https://github.com/fireblocks/ts-sdk/compare/v1.0.1...v1.1.0) - 2024-04-17 - -### Merged - -- feat: adding consigners beta api [`#34`](https://github.com/fireblocks/ts-sdk/pull/34) -- fix: modify error message when secretKey missing and fix readme doc [`#33`](https://github.com/fireblocks/ts-sdk/pull/33) - -## [v1.0.1](https://github.com/fireblocks/ts-sdk/compare/v1.0.0...v1.0.1) - 2024-04-07 - -### Merged - -- Generated SDK for version v1.0.1 [`#32`](https://github.com/fireblocks/ts-sdk/pull/32) - -## v1.0.0 - 2024-04-07 - -### Merged - -- Generated SDK for version v1.0.0 GA [`#31`](https://github.com/fireblocks/ts-sdk/pull/31) -- add_license [`#30`](https://github.com/fireblocks/ts-sdk/pull/30) -- version_3_0_6_beta [`#29`](https://github.com/fireblocks/ts-sdk/pull/29) -- version_3_0_5_beta [`#27`](https://github.com/fireblocks/ts-sdk/pull/27) -- Version 3.0.4-beta [`#26`](https://github.com/fireblocks/ts-sdk/pull/26) -- Fireblocks api spec/generated/9818 [`#25`](https://github.com/fireblocks/ts-sdk/pull/25) -- Generated SDK for version 9817 [`#24`](https://github.com/fireblocks/ts-sdk/pull/24) -- Generated SDK for version master [`#23`](https://github.com/fireblocks/ts-sdk/pull/23) -- Added Idempotency & NCW headers support [`#22`](https://github.com/fireblocks/ts-sdk/pull/22) -- API SDK Improvments [`#21`](https://github.com/fireblocks/ts-sdk/pull/21) -- Update README.md [`#18`](https://github.com/fireblocks/ts-sdk/pull/18) -- Update README.md [`#17`](https://github.com/fireblocks/ts-sdk/pull/17) diff --git a/README.md b/README.md index 45729c1..7054e86 100644 --- a/README.md +++ b/README.md @@ -129,7 +129,11 @@ Class | Method | HTTP request | Description *ApiUserApi* | [**createApiUser**](docs/apis/ApiUserApi.md#createApiUser) | **POST** /management/api_users | Create API Key *ApiUserApi* | [**getApiUsers**](docs/apis/ApiUserApi.md#getApiUsers) | **GET** /management/api_users | Get API Keys *ApiUserApi* | [**issueApiUserPairingToken**](docs/apis/ApiUserApi.md#issueApiUserPairingToken) | **POST** /management/api_users/{userId}/pairing_token | Issue API user pairing token +*ApprovalsBetaApi* | [**approveApproval**](docs/apis/ApprovalsBetaApi.md#approveApproval) | **POST** /approvals/{requestId}/approve | Approve an approval request +*ApprovalsBetaApi* | [**createApprovalKey**](docs/apis/ApprovalsBetaApi.md#createApprovalKey) | **POST** /management/api_users/{userId}/approval_keys | Register an approval key +*ApprovalsBetaApi* | [**deleteApprovalKey**](docs/apis/ApprovalsBetaApi.md#deleteApprovalKey) | **DELETE** /management/api_users/{userId}/approval_keys/{keyId} | Delete an approval key *ApprovalsBetaApi* | [**getApprovalById**](docs/apis/ApprovalsBetaApi.md#getApprovalById) | **GET** /approvals/{requestId} | Get a single approval request +*ApprovalsBetaApi* | [**getApprovalKeys**](docs/apis/ApprovalsBetaApi.md#getApprovalKeys) | **GET** /management/api_users/{userId}/approval_keys | List approval keys *ApprovalsBetaApi* | [**getApprovals**](docs/apis/ApprovalsBetaApi.md#getApprovals) | **GET** /approvals | List approval requests *ApprovalsBetaApi* | [**rejectApproval**](docs/apis/ApprovalsBetaApi.md#rejectApproval) | **POST** /approvals/{requestId}/reject | Reject an approval request *AuditLogsApi* | [**getAuditLogs**](docs/apis/AuditLogsApi.md#getAuditLogs) | **GET** /management/audit_logs | Get audit logs @@ -190,6 +194,10 @@ Class | Method | HTTP request | Description *ComplianceApi* | [**updateLegalEntity**](docs/apis/ComplianceApi.md#updateLegalEntity) | **PUT** /legal_entities/{legalEntityId} | Update legal entity *ComplianceApi* | [**updateScreeningConfiguration**](docs/apis/ComplianceApi.md#updateScreeningConfiguration) | **PUT** /screening/configurations | Tenant - Screening Configuration *ComplianceApi* | [**updateTravelRuleConfig**](docs/apis/ComplianceApi.md#updateTravelRuleConfig) | **PUT** /screening/travel_rule/policy_configuration | Update Travel Rule Configuration +*ComplianceOrchestratorBetaApi* | [**getScreeningResult**](docs/apis/ComplianceOrchestratorBetaApi.md#getScreeningResult) | **GET** /compliance/orchestrator/screenings/{screeningId} | Get a Compliance Orchestrator screening\'s result +*ComplianceOrchestratorBetaApi* | [**getWorkflow**](docs/apis/ComplianceOrchestratorBetaApi.md#getWorkflow) | **GET** /compliance/orchestrator/workflows/{workflowId} | Get a Compliance Orchestrator workflow +*ComplianceOrchestratorBetaApi* | [**triggerScreening**](docs/apis/ComplianceOrchestratorBetaApi.md#triggerScreening) | **POST** /compliance/orchestrator/screenings | Trigger a Compliance Orchestrator screening +*ComplianceOrchestratorBetaApi* | [**updateWorkflowStatus**](docs/apis/ComplianceOrchestratorBetaApi.md#updateWorkflowStatus) | **PATCH** /compliance/orchestrator/workflows/{workflowId}/status | Update a Compliance Orchestrator workflow\'s status *ComplianceScreeningConfigurationApi* | [**getAmlScreeningConfiguration**](docs/apis/ComplianceScreeningConfigurationApi.md#getAmlScreeningConfiguration) | **GET** /screening/aml/policy_configuration | Get AML Screening Policy Configuration *ComplianceScreeningConfigurationApi* | [**getScreeningConfiguration**](docs/apis/ComplianceScreeningConfigurationApi.md#getScreeningConfiguration) | **GET** /screening/travel_rule/policy_configuration | Get Travel Rule Screening Policy Configuration *ConnectedAccountsBetaApi* | [**addConnectedAccount**](docs/apis/ConnectedAccountsBetaApi.md#addConnectedAccount) | **POST** /connected_accounts | Add a connected account @@ -571,7 +579,7 @@ Class | Method | HTTP request | Description *WebhooksV2Api* | [**deleteWebhook**](docs/apis/WebhooksV2Api.md#deleteWebhook) | **DELETE** /webhooks/{webhookId} | Delete webhook *WebhooksV2Api* | [**deleteWebhookOauth**](docs/apis/WebhooksV2Api.md#deleteWebhookOauth) | **DELETE** /webhooks_settings/oauth/{webhookOauthId} | Delete OAuth credentials *WebhooksV2Api* | [**getMetrics**](docs/apis/WebhooksV2Api.md#getMetrics) | **GET** /webhooks/{webhookId}/metrics/{metricName} | Get webhook metrics -*WebhooksV2Api* | [**getMtlsCsr**](docs/apis/WebhooksV2Api.md#getMtlsCsr) | **GET** /webhooks/mtls/csr | Get mTLS CSR +*WebhooksV2Api* | [**getMtlsCsr**](docs/apis/WebhooksV2Api.md#getMtlsCsr) | **GET** /webhooks_settings/mtls_csr | Get mTLS CSR *WebhooksV2Api* | [**getNotification**](docs/apis/WebhooksV2Api.md#getNotification) | **GET** /webhooks/{webhookId}/notifications/{notificationId} | Get notification by id *WebhooksV2Api* | [**getNotificationAttempts**](docs/apis/WebhooksV2Api.md#getNotificationAttempts) | **GET** /webhooks/{webhookId}/notifications/{notificationId}/attempts | Get notification attempts *WebhooksV2Api* | [**getNotifications**](docs/apis/WebhooksV2Api.md#getNotifications) | **GET** /webhooks/{webhookId}/notifications | Get all notifications by webhook id @@ -693,8 +701,11 @@ Class | Method | HTTP request | Description - [AmountRangeMinMax2](docs/models/AmountRangeMinMax2.md) - [ApiKey](docs/models/ApiKey.md) - [ApiKeysPaginatedResponse](docs/models/ApiKeysPaginatedResponse.md) + - [ApprovalApiKey](docs/models/ApprovalApiKey.md) + - [ApprovalApiPublicKey](docs/models/ApprovalApiPublicKey.md) - [ApprovalRequest](docs/models/ApprovalRequest.md) - [ApprovalRequestItem](docs/models/ApprovalRequestItem.md) + - [ApproveApprovalRequest](docs/models/ApproveApprovalRequest.md) - [ApproversConfig](docs/models/ApproversConfig.md) - [ApproversConfigApprovalGroupsInner](docs/models/ApproversConfigApprovalGroupsInner.md) - [Apy](docs/models/Apy.md) @@ -733,7 +744,9 @@ Class | Method | HTTP request | Description - [AssignVaultsToLegalEntityResponse](docs/models/AssignVaultsToLegalEntityResponse.md) - [AttachDetachUtxoLabelsRequest](docs/models/AttachDetachUtxoLabelsRequest.md) - [AttachDetachUtxoLabelsResponse](docs/models/AttachDetachUtxoLabelsResponse.md) + - [AuditEventTypeEnum](docs/models/AuditEventTypeEnum.md) - [AuditLogData](docs/models/AuditLogData.md) + - [AuditLogEntry](docs/models/AuditLogEntry.md) - [AuditLogsData](docs/models/AuditLogsData.md) - [AuditorData](docs/models/AuditorData.md) - [AuthorizationGroups](docs/models/AuthorizationGroups.md) @@ -773,6 +786,7 @@ Class | Method | HTTP request | Description - [ByorkVerdictRequest](docs/models/ByorkVerdictRequest.md) - [ByorkVerdictResponse](docs/models/ByorkVerdictResponse.md) - [ByorkVerdictResponseStatusEnum](docs/models/ByorkVerdictResponseStatusEnum.md) + - [BypassReasonEnum](docs/models/BypassReasonEnum.md) - [CallAccepted](docs/models/CallAccepted.md) - [CallbackHandler](docs/models/CallbackHandler.md) - [CallbackHandlerRequest](docs/models/CallbackHandlerRequest.md) @@ -815,6 +829,7 @@ Class | Method | HTTP request | Description - [ComplianceResults](docs/models/ComplianceResults.md) - [ComplianceScreeningResult](docs/models/ComplianceScreeningResult.md) - [ComplianceScreeningResultFullPayload](docs/models/ComplianceScreeningResultFullPayload.md) + - [ComplianceScreeningStatusEnum](docs/models/ComplianceScreeningStatusEnum.md) - [ConfigChangeRequestStatus](docs/models/ConfigChangeRequestStatus.md) - [ConfigConversionOperationSnapshot](docs/models/ConfigConversionOperationSnapshot.md) - [ConfigDisbursementOperationSnapshot](docs/models/ConfigDisbursementOperationSnapshot.md) @@ -839,6 +854,8 @@ Class | Method | HTTP request | Description - [ConnectedAccountsResponse](docs/models/ConnectedAccountsResponse.md) - [ConnectedSingleAccount](docs/models/ConnectedSingleAccount.md) - [ConnectedSingleAccountResponse](docs/models/ConnectedSingleAccountResponse.md) + - [ConnectorStatusEnum](docs/models/ConnectorStatusEnum.md) + - [ConnectorVerdictEnum](docs/models/ConnectorVerdictEnum.md) - [ConsoleUser](docs/models/ConsoleUser.md) - [ConsoleUsers](docs/models/ConsoleUsers.md) - [Contact](docs/models/Contact.md) @@ -1128,6 +1145,7 @@ Class | Method | HTTP request | Description - [GetPositionsResponse](docs/models/GetPositionsResponse.md) - [GetProvidersResponse](docs/models/GetProvidersResponse.md) - [GetRoutingPolicyAssetGroupsResponse](docs/models/GetRoutingPolicyAssetGroupsResponse.md) + - [GetScreeningResultResponse](docs/models/GetScreeningResultResponse.md) - [GetSigningKeyResponseDto](docs/models/GetSigningKeyResponseDto.md) - [GetSupportedAssetsResponse](docs/models/GetSupportedAssetsResponse.md) - [GetTestWalletAddressResponse](docs/models/GetTestWalletAddressResponse.md) @@ -1140,6 +1158,7 @@ Class | Method | HTTP request | Description - [GetVaultAccountsResponse](docs/models/GetVaultAccountsResponse.md) - [GetVaultAssetsResponse](docs/models/GetVaultAssetsResponse.md) - [GetWhitelistIpAddressesResponse](docs/models/GetWhitelistIpAddressesResponse.md) + - [GetWorkflowResponse](docs/models/GetWorkflowResponse.md) - [GetWorkspaceStatusResponse](docs/models/GetWorkspaceStatusResponse.md) - [GleifData](docs/models/GleifData.md) - [GleifOtherLegalEntityName](docs/models/GleifOtherLegalEntityName.md) @@ -1204,6 +1223,7 @@ Class | Method | HTTP request | Description - [LegalEntityRegistration](docs/models/LegalEntityRegistration.md) - [LeiStatus](docs/models/LeiStatus.md) - [LinkedTokensCount](docs/models/LinkedTokensCount.md) + - [ListApprovalApiKeysResponse](docs/models/ListApprovalApiKeysResponse.md) - [ListApprovalsResponse](docs/models/ListApprovalsResponse.md) - [ListAssetsResponse](docs/models/ListAssetsResponse.md) - [ListBlockchainsResponse](docs/models/ListBlockchainsResponse.md) @@ -1409,6 +1429,8 @@ Class | Method | HTTP request | Description - [ReasonForPaymentEnum](docs/models/ReasonForPaymentEnum.md) - [RecipientHandle](docs/models/RecipientHandle.md) - [RedeemFundsToLinkedDDAResponse](docs/models/RedeemFundsToLinkedDDAResponse.md) + - [RegisterApprovalApiKeyRequest](docs/models/RegisterApprovalApiKeyRequest.md) + - [RegisterApprovalApiKeyResponse](docs/models/RegisterApprovalApiKeyResponse.md) - [RegisterLegalEntityRequest](docs/models/RegisterLegalEntityRequest.md) - [RegisterNewAssetRequest](docs/models/RegisterNewAssetRequest.md) - [ReissueMultichainTokenRequest](docs/models/ReissueMultichainTokenRequest.md) @@ -1449,9 +1471,15 @@ Class | Method | HTTP request | Description - [RetryRequoteTypeEnum](docs/models/RetryRequoteTypeEnum.md) - [RewardInfo](docs/models/RewardInfo.md) - [RewardsInfo](docs/models/RewardsInfo.md) + - [RiskLevelEnum](docs/models/RiskLevelEnum.md) - [RoleDetails](docs/models/RoleDetails.md) - [RoleDetails2](docs/models/RoleDetails2.md) - [RoleGrantee](docs/models/RoleGrantee.md) + - [Rule](docs/models/Rule.md) + - [RuleActionEnum](docs/models/RuleActionEnum.md) + - [RuleCondition](docs/models/RuleCondition.md) + - [RuleConditionOperatorEnum](docs/models/RuleConditionOperatorEnum.md) + - [RuleSet](docs/models/RuleSet.md) - [RulesetQuorum](docs/models/RulesetQuorum.md) - [SEPAAddress](docs/models/SEPAAddress.md) - [SEPADestination](docs/models/SEPADestination.md) @@ -1465,11 +1493,15 @@ Class | Method | HTTP request | Description - [ScreeningAmlMatchedRule](docs/models/ScreeningAmlMatchedRule.md) - [ScreeningAmlResult](docs/models/ScreeningAmlResult.md) - [ScreeningConfigurationsRequest](docs/models/ScreeningConfigurationsRequest.md) + - [ScreeningInput](docs/models/ScreeningInput.md) - [ScreeningMetadataConfig](docs/models/ScreeningMetadataConfig.md) + - [ScreeningOperationEnum](docs/models/ScreeningOperationEnum.md) - [ScreeningOperationExecution](docs/models/ScreeningOperationExecution.md) - [ScreeningOperationExecutionOutput](docs/models/ScreeningOperationExecutionOutput.md) - [ScreeningOperationFailure](docs/models/ScreeningOperationFailure.md) - [ScreeningOperationType](docs/models/ScreeningOperationType.md) + - [ScreeningOutcomeEnum](docs/models/ScreeningOutcomeEnum.md) + - [ScreeningPayload](docs/models/ScreeningPayload.md) - [ScreeningPolicyAmount](docs/models/ScreeningPolicyAmount.md) - [ScreeningPolicyAmountRange](docs/models/ScreeningPolicyAmountRange.md) - [ScreeningPolicyCurrency](docs/models/ScreeningPolicyCurrency.md) @@ -1587,6 +1619,10 @@ Class | Method | HTTP request | Description - [StakingProvider](docs/models/StakingProvider.md) - [Status](docs/models/Status.md) - [StellarRippleCreateParamsDto](docs/models/StellarRippleCreateParamsDto.md) + - [StepConfig](docs/models/StepConfig.md) + - [StepOperationConfig](docs/models/StepOperationConfig.md) + - [StepResult](docs/models/StepResult.md) + - [StepResultMetadata](docs/models/StepResultMetadata.md) - [SubmitOrderRequirementRequest](docs/models/SubmitOrderRequirementRequest.md) - [SupportedBlockChainsResponse](docs/models/SupportedBlockChainsResponse.md) - [SupportedBlockchain](docs/models/SupportedBlockchain.md) @@ -1737,6 +1773,7 @@ Class | Method | HTTP request | Description - [TransactionResponseDestination](docs/models/TransactionResponseDestination.md) - [TransactionTag](docs/models/TransactionTag.md) - [TransferConfigOperation](docs/models/TransferConfigOperation.md) + - [TransferDirectionEnum](docs/models/TransferDirectionEnum.md) - [TransferOperationConfigParams](docs/models/TransferOperationConfigParams.md) - [TransferOperationExecution](docs/models/TransferOperationExecution.md) - [TransferOperationExecutionOutput](docs/models/TransferOperationExecutionOutput.md) @@ -1809,6 +1846,9 @@ Class | Method | HTTP request | Description - [TravelRuleValidateTransactionResponse](docs/models/TravelRuleValidateTransactionResponse.md) - [TravelRuleVaspForVault](docs/models/TravelRuleVaspForVault.md) - [TravelRuleVerdictEnum](docs/models/TravelRuleVerdictEnum.md) + - [TriggerRuleOutcomeEnum](docs/models/TriggerRuleOutcomeEnum.md) + - [TriggerScreeningRequest](docs/models/TriggerScreeningRequest.md) + - [TriggerScreeningResponse](docs/models/TriggerScreeningResponse.md) - [TriggerValidationFlowResponse](docs/models/TriggerValidationFlowResponse.md) - [TrustProofOfAddressCreateResponse](docs/models/TrustProofOfAddressCreateResponse.md) - [TrustProofOfAddressRequest](docs/models/TrustProofOfAddressRequest.md) @@ -1841,6 +1881,8 @@ Class | Method | HTTP request | Description - [UpdateVaultAccountRequest](docs/models/UpdateVaultAccountRequest.md) - [UpdateWebhookOauthRequest](docs/models/UpdateWebhookOauthRequest.md) - [UpdateWebhookRequest](docs/models/UpdateWebhookRequest.md) + - [UpdateWorkflowStatusRequest](docs/models/UpdateWorkflowStatusRequest.md) + - [UpdateWorkflowStatusResponse](docs/models/UpdateWorkflowStatusResponse.md) - [UsWirePaymentInfo](docs/models/UsWirePaymentInfo.md) - [UsdcGatewayWalletAsset](docs/models/UsdcGatewayWalletAsset.md) - [UsdcGatewayWalletInfoResponse](docs/models/UsdcGatewayWalletInfoResponse.md) @@ -1889,6 +1931,7 @@ Class | Method | HTTP request | Description - [WebhookMetric](docs/models/WebhookMetric.md) - [WebhookMtls](docs/models/WebhookMtls.md) - [WebhookMtlsCsrResponse](docs/models/WebhookMtlsCsrResponse.md) + - [WebhookMtlsKeyAlgorithm](docs/models/WebhookMtlsKeyAlgorithm.md) - [WebhookOauthCredentials](docs/models/WebhookOauthCredentials.md) - [WebhookOauthCustomBodyParams](docs/models/WebhookOauthCustomBodyParams.md) - [WebhookOauthCustomBodyParamsUpdate](docs/models/WebhookOauthCustomBodyParamsUpdate.md) @@ -1902,6 +1945,7 @@ Class | Method | HTTP request | Description - [WorkflowConfigStatus](docs/models/WorkflowConfigStatus.md) - [WorkflowConfigurationId](docs/models/WorkflowConfigurationId.md) - [WorkflowExecutionOperation](docs/models/WorkflowExecutionOperation.md) + - [WorkflowStatusEnum](docs/models/WorkflowStatusEnum.md) - [Workspace](docs/models/Workspace.md) - [WriteAbiFunction](docs/models/WriteAbiFunction.md) - [WriteCallFunctionDto](docs/models/WriteCallFunctionDto.md) diff --git a/api.ts b/api.ts index c814975..4460e60 100644 --- a/api.ts +++ b/api.ts @@ -20,6 +20,7 @@ export * from './api/audit-logs-api'; export * from './api/blockchain-link-beta-api'; export * from './api/blockchains-assets-api'; export * from './api/compliance-api'; +export * from './api/compliance-orchestrator-beta-api'; export * from './api/compliance-screening-configuration-api'; export * from './api/connected-accounts-beta-api'; export * from './api/console-user-api'; diff --git a/api/approvals-beta-api.ts b/api/approvals-beta-api.ts index 0e59ab0..aff8d57 100644 --- a/api/approvals-beta-api.ts +++ b/api/approvals-beta-api.ts @@ -29,15 +29,150 @@ import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError, ope // @ts-ignore import { ApprovalRequestItem } from '../models'; // @ts-ignore +import { ApproveApprovalRequest } from '../models'; +// @ts-ignore import { ErrorSchema } from '../models'; // @ts-ignore +import { ListApprovalApiKeysResponse } from '../models'; +// @ts-ignore import { ListApprovalsResponse } from '../models'; +// @ts-ignore +import { RegisterApprovalApiKeyRequest } from '../models'; +// @ts-ignore +import { RegisterApprovalApiKeyResponse } from '../models'; /** * ApprovalsBetaApi - axios parameter creator * @export */ export const ApprovalsBetaApiAxiosParamCreator = function (configuration?: Configuration) { return { + /** + * Approve a pending approval request as the authenticated API user. The caller signs the request\'s signable data with the private key of a registered approval API key and submits the base64url-encoded signature, optionally with the key ID. The server verifies the signature against the registered public key — using the given key ID, or matching against all of the user\'s registered keys when the key ID is omitted — and advances the approval quorum. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Approve an approval request + * @param {ApproveApprovalRequest} approveApprovalRequest + * @param {string} requestId The approval request ID. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + approveApproval: async (approveApprovalRequest: ApproveApprovalRequest, requestId: string, idempotencyKey?: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExists('approveApproval', 'approveApprovalRequest', approveApprovalRequest) + assertParamExistsAndNotEmpty('approveApproval', 'requestId', requestId) + const localVarPath = `/approvals/{requestId}/approve` + .replace(`{${"requestId"}}`, encodeURIComponent(String(requestId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (idempotencyKey != null) { + localVarHeaderParameter['Idempotency-Key'] = String(idempotencyKey); + } + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(approveApprovalRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Register an approval public key for an API user, used to sign approval requests. Up to 2 active keys are supported per API user. Returns the server-generated key ID used for deletion. The `userId` must be the authenticated API user\'s own ID. Registering a key for another user is not supported and is rejected. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Register an approval key + * @param {RegisterApprovalApiKeyRequest} registerApprovalApiKeyRequest + * @param {string} userId The ID of the API user to register the approval key for. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createApprovalKey: async (registerApprovalApiKeyRequest: RegisterApprovalApiKeyRequest, userId: string, idempotencyKey?: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExists('createApprovalKey', 'registerApprovalApiKeyRequest', registerApprovalApiKeyRequest) + assertParamExistsAndNotEmpty('createApprovalKey', 'userId', userId) + const localVarPath = `/management/api_users/{userId}/approval_keys` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (idempotencyKey != null) { + localVarHeaderParameter['Idempotency-Key'] = String(idempotencyKey); + } + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(registerApprovalApiKeyRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Delete (revoke) an approval public key for the specified API user. Revoking the last key disables the API user\'s ability to sign approvals. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Delete an approval key + * @param {string} userId The ID of the API user whose approval key to delete. + * @param {string} keyId The ID of the approval key to delete. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteApprovalKey: async (userId: string, keyId: string, idempotencyKey?: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExistsAndNotEmpty('deleteApprovalKey', 'userId', userId) + assertParamExistsAndNotEmpty('deleteApprovalKey', 'keyId', keyId) + const localVarPath = `/management/api_users/{userId}/approval_keys/{keyId}` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))) + .replace(`{${"keyId"}}`, encodeURIComponent(String(keyId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (idempotencyKey != null) { + localVarHeaderParameter['Idempotency-Key'] = String(idempotencyKey); + } + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, /** * Retrieve full detail for a single approval request by ID, including the payload to sign and, when requested, the request\'s `quorumStatus`. Because this endpoint addresses one request, it accepts `quorumStatusMode=FULL`, which adds the participating approvers and their individual approval state. `userStatus` reflects the authenticated user by default. Pass `userId` to report it for another user instead. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. * @summary Get a single approval request @@ -72,6 +207,49 @@ export const ApprovalsBetaApiAxiosParamCreator = function (configuration?: Confi + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * List the approval public keys registered for the specified API user. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. + * @summary List approval keys + * @param {string} userId The ID of the API user whose approval keys to list. + * @param {number} [pageSize] Number of results per page. Maximum 15. Defaults to 10. + * @param {string} [pageCursor] Cursor returned from the previous response (the `next` field) to fetch the next page. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getApprovalKeys: async (userId: string, pageSize?: number, pageCursor?: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExistsAndNotEmpty('getApprovalKeys', 'userId', userId) + const localVarPath = `/management/api_users/{userId}/approval_keys` + .replace(`{${"userId"}}`, encodeURIComponent(String(userId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (pageSize !== undefined) { + localVarQueryParameter['pageSize'] = pageSize; + } + + if (pageCursor !== undefined) { + localVarQueryParameter['pageCursor'] = pageCursor; + } + + + setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; @@ -189,6 +367,51 @@ export const ApprovalsBetaApiAxiosParamCreator = function (configuration?: Confi export const ApprovalsBetaApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = ApprovalsBetaApiAxiosParamCreator(configuration) return { + /** + * Approve a pending approval request as the authenticated API user. The caller signs the request\'s signable data with the private key of a registered approval API key and submits the base64url-encoded signature, optionally with the key ID. The server verifies the signature against the registered public key — using the given key ID, or matching against all of the user\'s registered keys when the key ID is omitted — and advances the approval quorum. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Approve an approval request + * @param {ApproveApprovalRequest} approveApprovalRequest + * @param {string} requestId The approval request ID. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async approveApproval(approveApprovalRequest: ApproveApprovalRequest, requestId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.approveApproval(approveApprovalRequest, requestId, idempotencyKey, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ApprovalsBetaApi.approveApproval']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, + /** + * Register an approval public key for an API user, used to sign approval requests. Up to 2 active keys are supported per API user. Returns the server-generated key ID used for deletion. The `userId` must be the authenticated API user\'s own ID. Registering a key for another user is not supported and is rejected. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Register an approval key + * @param {RegisterApprovalApiKeyRequest} registerApprovalApiKeyRequest + * @param {string} userId The ID of the API user to register the approval key for. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async createApprovalKey(registerApprovalApiKeyRequest: RegisterApprovalApiKeyRequest, userId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.createApprovalKey(registerApprovalApiKeyRequest, userId, idempotencyKey, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ApprovalsBetaApi.createApprovalKey']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, + /** + * Delete (revoke) an approval public key for the specified API user. Revoking the last key disables the API user\'s ability to sign approvals. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Delete an approval key + * @param {string} userId The ID of the API user whose approval key to delete. + * @param {string} keyId The ID of the approval key to delete. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async deleteApprovalKey(userId: string, keyId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.deleteApprovalKey(userId, keyId, idempotencyKey, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ApprovalsBetaApi.deleteApprovalKey']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, /** * Retrieve full detail for a single approval request by ID, including the payload to sign and, when requested, the request\'s `quorumStatus`. Because this endpoint addresses one request, it accepts `quorumStatusMode=FULL`, which adds the participating approvers and their individual approval state. `userStatus` reflects the authenticated user by default. Pass `userId` to report it for another user instead. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. * @summary Get a single approval request @@ -204,6 +427,21 @@ export const ApprovalsBetaApiFp = function(configuration?: Configuration) { const operationBasePath = operationServerMap['ApprovalsBetaApi.getApprovalById']?.[index]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); }, + /** + * List the approval public keys registered for the specified API user. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. + * @summary List approval keys + * @param {string} userId The ID of the API user whose approval keys to list. + * @param {number} [pageSize] Number of results per page. Maximum 15. Defaults to 10. + * @param {string} [pageCursor] Cursor returned from the previous response (the `next` field) to fetch the next page. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getApprovalKeys(userId: string, pageSize?: number, pageCursor?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getApprovalKeys(userId, pageSize, pageCursor, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ApprovalsBetaApi.getApprovalKeys']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, /** * Retrieve the pending approval requests the authenticated API user is eligible to act on, including requests the user has already approved that are still pending overall. The response is scoped to the authenticated user by default. Pass `userId` to read another user\'s queue, or `includeAllUsers=true` to read every pending request in the workspace. Both require an Admin, Non-Signing Admin, Security Admin or Security Auditor role and are rejected with 403 otherwise. Set `quorumStatusMode=SUMMARY` to include each request\'s approval thresholds and counts. The per-approver breakdown is available only when fetching a single request — see `GET /approvals/{requestId}`. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. * @summary List approval requests @@ -246,6 +484,36 @@ export const ApprovalsBetaApiFp = function(configuration?: Configuration) { export const ApprovalsBetaApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = ApprovalsBetaApiFp(configuration) return { + /** + * Approve a pending approval request as the authenticated API user. The caller signs the request\'s signable data with the private key of a registered approval API key and submits the base64url-encoded signature, optionally with the key ID. The server verifies the signature against the registered public key — using the given key ID, or matching against all of the user\'s registered keys when the key ID is omitted — and advances the approval quorum. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Approve an approval request + * @param {ApprovalsBetaApiApproveApprovalRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + approveApproval(requestParameters: ApprovalsBetaApiApproveApprovalRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.approveApproval(requestParameters.approveApprovalRequest, requestParameters.requestId, requestParameters.idempotencyKey, options).then((request) => request(axios, basePath)); + }, + /** + * Register an approval public key for an API user, used to sign approval requests. Up to 2 active keys are supported per API user. Returns the server-generated key ID used for deletion. The `userId` must be the authenticated API user\'s own ID. Registering a key for another user is not supported and is rejected. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Register an approval key + * @param {ApprovalsBetaApiCreateApprovalKeyRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + createApprovalKey(requestParameters: ApprovalsBetaApiCreateApprovalKeyRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.createApprovalKey(requestParameters.registerApprovalApiKeyRequest, requestParameters.userId, requestParameters.idempotencyKey, options).then((request) => request(axios, basePath)); + }, + /** + * Delete (revoke) an approval public key for the specified API user. Revoking the last key disables the API user\'s ability to sign approvals. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Delete an approval key + * @param {ApprovalsBetaApiDeleteApprovalKeyRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + deleteApprovalKey(requestParameters: ApprovalsBetaApiDeleteApprovalKeyRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.deleteApprovalKey(requestParameters.userId, requestParameters.keyId, requestParameters.idempotencyKey, options).then((request) => request(axios, basePath)); + }, /** * Retrieve full detail for a single approval request by ID, including the payload to sign and, when requested, the request\'s `quorumStatus`. Because this endpoint addresses one request, it accepts `quorumStatusMode=FULL`, which adds the participating approvers and their individual approval state. `userStatus` reflects the authenticated user by default. Pass `userId` to report it for another user instead. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. * @summary Get a single approval request @@ -256,6 +524,16 @@ export const ApprovalsBetaApiFactory = function (configuration?: Configuration, getApprovalById(requestParameters: ApprovalsBetaApiGetApprovalByIdRequest, options?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getApprovalById(requestParameters.requestId, requestParameters.userId, requestParameters.quorumStatusMode, options).then((request) => request(axios, basePath)); }, + /** + * List the approval public keys registered for the specified API user. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. + * @summary List approval keys + * @param {ApprovalsBetaApiGetApprovalKeysRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getApprovalKeys(requestParameters: ApprovalsBetaApiGetApprovalKeysRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.getApprovalKeys(requestParameters.userId, requestParameters.pageSize, requestParameters.pageCursor, options).then((request) => request(axios, basePath)); + }, /** * Retrieve the pending approval requests the authenticated API user is eligible to act on, including requests the user has already approved that are still pending overall. The response is scoped to the authenticated user by default. Pass `userId` to read another user\'s queue, or `includeAllUsers=true` to read every pending request in the workspace. Both require an Admin, Non-Signing Admin, Security Admin or Security Auditor role and are rejected with 403 otherwise. Set `quorumStatusMode=SUMMARY` to include each request\'s approval thresholds and counts. The per-approver breakdown is available only when fetching a single request — see `GET /approvals/{requestId}`. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. * @summary List approval requests @@ -279,6 +557,90 @@ export const ApprovalsBetaApiFactory = function (configuration?: Configuration, }; }; +/** + * Request parameters for approveApproval operation in ApprovalsBetaApi. + * @export + * @interface ApprovalsBetaApiApproveApprovalRequest + */ +export interface ApprovalsBetaApiApproveApprovalRequest { + /** + * + * @type {ApproveApprovalRequest} + * @memberof ApprovalsBetaApiApproveApproval + */ + readonly approveApprovalRequest: ApproveApprovalRequest + + /** + * The approval request ID. + * @type {string} + * @memberof ApprovalsBetaApiApproveApproval + */ + readonly requestId: string + + /** + * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @type {string} + * @memberof ApprovalsBetaApiApproveApproval + */ + readonly idempotencyKey?: string +} + +/** + * Request parameters for createApprovalKey operation in ApprovalsBetaApi. + * @export + * @interface ApprovalsBetaApiCreateApprovalKeyRequest + */ +export interface ApprovalsBetaApiCreateApprovalKeyRequest { + /** + * + * @type {RegisterApprovalApiKeyRequest} + * @memberof ApprovalsBetaApiCreateApprovalKey + */ + readonly registerApprovalApiKeyRequest: RegisterApprovalApiKeyRequest + + /** + * The ID of the API user to register the approval key for. + * @type {string} + * @memberof ApprovalsBetaApiCreateApprovalKey + */ + readonly userId: string + + /** + * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @type {string} + * @memberof ApprovalsBetaApiCreateApprovalKey + */ + readonly idempotencyKey?: string +} + +/** + * Request parameters for deleteApprovalKey operation in ApprovalsBetaApi. + * @export + * @interface ApprovalsBetaApiDeleteApprovalKeyRequest + */ +export interface ApprovalsBetaApiDeleteApprovalKeyRequest { + /** + * The ID of the API user whose approval key to delete. + * @type {string} + * @memberof ApprovalsBetaApiDeleteApprovalKey + */ + readonly userId: string + + /** + * The ID of the approval key to delete. + * @type {string} + * @memberof ApprovalsBetaApiDeleteApprovalKey + */ + readonly keyId: string + + /** + * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @type {string} + * @memberof ApprovalsBetaApiDeleteApprovalKey + */ + readonly idempotencyKey?: string +} + /** * Request parameters for getApprovalById operation in ApprovalsBetaApi. * @export @@ -307,6 +669,34 @@ export interface ApprovalsBetaApiGetApprovalByIdRequest { readonly quorumStatusMode?: GetApprovalByIdQuorumStatusModeEnum } +/** + * Request parameters for getApprovalKeys operation in ApprovalsBetaApi. + * @export + * @interface ApprovalsBetaApiGetApprovalKeysRequest + */ +export interface ApprovalsBetaApiGetApprovalKeysRequest { + /** + * The ID of the API user whose approval keys to list. + * @type {string} + * @memberof ApprovalsBetaApiGetApprovalKeys + */ + readonly userId: string + + /** + * Number of results per page. Maximum 15. Defaults to 10. + * @type {number} + * @memberof ApprovalsBetaApiGetApprovalKeys + */ + readonly pageSize?: number + + /** + * Cursor returned from the previous response (the `next` field) to fetch the next page. + * @type {string} + * @memberof ApprovalsBetaApiGetApprovalKeys + */ + readonly pageCursor?: string +} + /** * Request parameters for getApprovals operation in ApprovalsBetaApi. * @export @@ -384,6 +774,42 @@ export interface ApprovalsBetaApiRejectApprovalRequest { * @extends {BaseAPI} */ export class ApprovalsBetaApi extends BaseAPI { + /** + * Approve a pending approval request as the authenticated API user. The caller signs the request\'s signable data with the private key of a registered approval API key and submits the base64url-encoded signature, optionally with the key ID. The server verifies the signature against the registered public key — using the given key ID, or matching against all of the user\'s registered keys when the key ID is omitted — and advances the approval quorum. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Approve an approval request + * @param {ApprovalsBetaApiApproveApprovalRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ApprovalsBetaApi + */ + public approveApproval(requestParameters: ApprovalsBetaApiApproveApprovalRequest) { + return ApprovalsBetaApiFp(this.configuration).approveApproval(requestParameters.approveApprovalRequest, requestParameters.requestId, requestParameters.idempotencyKey).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } + + /** + * Register an approval public key for an API user, used to sign approval requests. Up to 2 active keys are supported per API user. Returns the server-generated key ID used for deletion. The `userId` must be the authenticated API user\'s own ID. Registering a key for another user is not supported and is rejected. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Register an approval key + * @param {ApprovalsBetaApiCreateApprovalKeyRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ApprovalsBetaApi + */ + public createApprovalKey(requestParameters: ApprovalsBetaApiCreateApprovalKeyRequest) { + return ApprovalsBetaApiFp(this.configuration).createApprovalKey(requestParameters.registerApprovalApiKeyRequest, requestParameters.userId, requestParameters.idempotencyKey).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } + + /** + * Delete (revoke) an approval public key for the specified API user. Revoking the last key disables the API user\'s ability to sign approvals. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + * @summary Delete an approval key + * @param {ApprovalsBetaApiDeleteApprovalKeyRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ApprovalsBetaApi + */ + public deleteApprovalKey(requestParameters: ApprovalsBetaApiDeleteApprovalKeyRequest) { + return ApprovalsBetaApiFp(this.configuration).deleteApprovalKey(requestParameters.userId, requestParameters.keyId, requestParameters.idempotencyKey).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } + /** * Retrieve full detail for a single approval request by ID, including the payload to sign and, when requested, the request\'s `quorumStatus`. Because this endpoint addresses one request, it accepts `quorumStatusMode=FULL`, which adds the participating approvers and their individual approval state. `userStatus` reflects the authenticated user by default. Pass `userId` to report it for another user instead. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. * @summary Get a single approval request @@ -396,6 +822,18 @@ export class ApprovalsBetaApi extends BaseAPI { return ApprovalsBetaApiFp(this.configuration).getApprovalById(requestParameters.requestId, requestParameters.userId, requestParameters.quorumStatusMode).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); } + /** + * List the approval public keys registered for the specified API user. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. + * @summary List approval keys + * @param {ApprovalsBetaApiGetApprovalKeysRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ApprovalsBetaApi + */ + public getApprovalKeys(requestParameters: ApprovalsBetaApiGetApprovalKeysRequest) { + return ApprovalsBetaApiFp(this.configuration).getApprovalKeys(requestParameters.userId, requestParameters.pageSize, requestParameters.pageCursor).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } + /** * Retrieve the pending approval requests the authenticated API user is eligible to act on, including requests the user has already approved that are still pending overall. The response is scoped to the authenticated user by default. Pass `userId` to read another user\'s queue, or `includeAllUsers=true` to read every pending request in the workspace. Both require an Admin, Non-Signing Admin, Security Admin or Security Auditor role and are rejected with 403 otherwise. Set `quorumStatusMode=SUMMARY` to include each request\'s approval thresholds and counts. The per-approver breakdown is available only when fetching a single request — see `GET /approvals/{requestId}`. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. * @summary List approval requests diff --git a/api/compliance-orchestrator-beta-api.ts b/api/compliance-orchestrator-beta-api.ts new file mode 100644 index 0000000..ce10599 --- /dev/null +++ b/api/compliance-orchestrator-beta-api.ts @@ -0,0 +1,448 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +import type { Configuration } from '../configuration'; +import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; +import globalAxios from 'axios'; +import { convertToFireblocksResponse } from "../response/fireblocksResponse"; +// URLSearchParams not necessarily used +// @ts-ignore +import { URL, URLSearchParams } from 'url'; +// Some imports not used depending on template conditions +// @ts-ignore +import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from '../common'; +import { assertParamExistsAndNotEmpty } from '../utils/validation_utils'; +// @ts-ignore +import { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError, operationServerMap } from '../base'; +// @ts-ignore +import { ErrorSchema } from '../models'; +// @ts-ignore +import { GetScreeningResultResponse } from '../models'; +// @ts-ignore +import { GetWorkflowResponse } from '../models'; +// @ts-ignore +import { TriggerScreeningRequest } from '../models'; +// @ts-ignore +import { TriggerScreeningResponse } from '../models'; +// @ts-ignore +import { UpdateWorkflowStatusRequest } from '../models'; +// @ts-ignore +import { UpdateWorkflowStatusResponse } from '../models'; +/** + * ComplianceOrchestratorBetaApi - axios parameter creator + * @export + */ +export const ComplianceOrchestratorBetaApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Returns the result of a screening started by `POST /v1/compliance/orchestrator/screenings`, with a result per workflow step and an audit log. Safe to poll: a screening still in flight reports `PENDING` or `RUNNING`. Only screenings owned by the requesting tenant are returned. + * @summary Get a Compliance Orchestrator screening\'s result + * @param {string} screeningId The screening\'s identifier, returned by `POST /v1/compliance/orchestrator/screenings`. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getScreeningResult: async (screeningId: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExistsAndNotEmpty('getScreeningResult', 'screeningId', screeningId) + const localVarPath = `/compliance/orchestrator/screenings/{screeningId}` + .replace(`{${"screeningId"}}`, encodeURIComponent(String(screeningId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Returns a workflow\'s status and its steps in execution order. Read it to see what a given `workflowId` will screen, and which fields its rules may reference. + * @summary Get a Compliance Orchestrator workflow + * @param {string} workflowId The workflow\'s identifier. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWorkflow: async (workflowId: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExistsAndNotEmpty('getWorkflow', 'workflowId', workflowId) + const localVarPath = `/compliance/orchestrator/workflows/{workflowId}` + .replace(`{${"workflowId"}}`, encodeURIComponent(String(workflowId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Starts a compliance screening against an active workflow and returns a `screeningId`. The screening runs asynchronously — poll `GET /v1/compliance/orchestrator/screenings/{screeningId}` for the result. Unlike the screening that applies automatically to submitted transactions under `/v1/screening`, this is called on demand, before anything exists on-chain. + * @summary Trigger a Compliance Orchestrator screening + * @param {TriggerScreeningRequest} triggerScreeningRequest + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + triggerScreening: async (triggerScreeningRequest: TriggerScreeningRequest, idempotencyKey?: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExists('triggerScreening', 'triggerScreeningRequest', triggerScreeningRequest) + const localVarPath = `/compliance/orchestrator/screenings`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (idempotencyKey != null) { + localVarHeaderParameter['Idempotency-Key'] = String(idempotencyKey); + } + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(triggerScreeningRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + /** + * Moves a workflow between `DRAFT` and `ACTIVE`. A workflow must be `ACTIVE` before `POST /v1/compliance/orchestrator/screenings` will accept a screening against it. Returns the workflow\'s id and new status, not its full configuration. + * @summary Update a Compliance Orchestrator workflow\'s status + * @param {UpdateWorkflowStatusRequest} updateWorkflowStatusRequest + * @param {string} workflowId The workflow\'s identifier. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateWorkflowStatus: async (updateWorkflowStatusRequest: UpdateWorkflowStatusRequest, workflowId: string, idempotencyKey?: string, options: RawAxiosRequestConfig = {}): Promise => { + assertParamExists('updateWorkflowStatus', 'updateWorkflowStatusRequest', updateWorkflowStatusRequest) + assertParamExistsAndNotEmpty('updateWorkflowStatus', 'workflowId', workflowId) + const localVarPath = `/compliance/orchestrator/workflows/{workflowId}/status` + .replace(`{${"workflowId"}}`, encodeURIComponent(String(workflowId))); + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + if (idempotencyKey != null) { + localVarHeaderParameter['Idempotency-Key'] = String(idempotencyKey); + } + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(updateWorkflowStatusRequest, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * ComplianceOrchestratorBetaApi - functional programming interface + * @export + */ +export const ComplianceOrchestratorBetaApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = ComplianceOrchestratorBetaApiAxiosParamCreator(configuration) + return { + /** + * Returns the result of a screening started by `POST /v1/compliance/orchestrator/screenings`, with a result per workflow step and an audit log. Safe to poll: a screening still in flight reports `PENDING` or `RUNNING`. Only screenings owned by the requesting tenant are returned. + * @summary Get a Compliance Orchestrator screening\'s result + * @param {string} screeningId The screening\'s identifier, returned by `POST /v1/compliance/orchestrator/screenings`. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getScreeningResult(screeningId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getScreeningResult(screeningId, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ComplianceOrchestratorBetaApi.getScreeningResult']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, + /** + * Returns a workflow\'s status and its steps in execution order. Read it to see what a given `workflowId` will screen, and which fields its rules may reference. + * @summary Get a Compliance Orchestrator workflow + * @param {string} workflowId The workflow\'s identifier. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async getWorkflow(workflowId: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getWorkflow(workflowId, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ComplianceOrchestratorBetaApi.getWorkflow']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, + /** + * Starts a compliance screening against an active workflow and returns a `screeningId`. The screening runs asynchronously — poll `GET /v1/compliance/orchestrator/screenings/{screeningId}` for the result. Unlike the screening that applies automatically to submitted transactions under `/v1/screening`, this is called on demand, before anything exists on-chain. + * @summary Trigger a Compliance Orchestrator screening + * @param {TriggerScreeningRequest} triggerScreeningRequest + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async triggerScreening(triggerScreeningRequest: TriggerScreeningRequest, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.triggerScreening(triggerScreeningRequest, idempotencyKey, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ComplianceOrchestratorBetaApi.triggerScreening']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, + /** + * Moves a workflow between `DRAFT` and `ACTIVE`. A workflow must be `ACTIVE` before `POST /v1/compliance/orchestrator/screenings` will accept a screening against it. Returns the workflow\'s id and new status, not its full configuration. + * @summary Update a Compliance Orchestrator workflow\'s status + * @param {UpdateWorkflowStatusRequest} updateWorkflowStatusRequest + * @param {string} workflowId The workflow\'s identifier. + * @param {string} [idempotencyKey] A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async updateWorkflowStatus(updateWorkflowStatusRequest: UpdateWorkflowStatusRequest, workflowId: string, idempotencyKey?: string, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.updateWorkflowStatus(updateWorkflowStatusRequest, workflowId, idempotencyKey, options); + const index = configuration?.serverIndex ?? 0; + const operationBasePath = operationServerMap['ComplianceOrchestratorBetaApi.updateWorkflowStatus']?.[index]?.url; + return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); + }, + } +}; + +/** + * ComplianceOrchestratorBetaApi - factory interface + * @export + */ +export const ComplianceOrchestratorBetaApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = ComplianceOrchestratorBetaApiFp(configuration) + return { + /** + * Returns the result of a screening started by `POST /v1/compliance/orchestrator/screenings`, with a result per workflow step and an audit log. Safe to poll: a screening still in flight reports `PENDING` or `RUNNING`. Only screenings owned by the requesting tenant are returned. + * @summary Get a Compliance Orchestrator screening\'s result + * @param {ComplianceOrchestratorBetaApiGetScreeningResultRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getScreeningResult(requestParameters: ComplianceOrchestratorBetaApiGetScreeningResultRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.getScreeningResult(requestParameters.screeningId, options).then((request) => request(axios, basePath)); + }, + /** + * Returns a workflow\'s status and its steps in execution order. Read it to see what a given `workflowId` will screen, and which fields its rules may reference. + * @summary Get a Compliance Orchestrator workflow + * @param {ComplianceOrchestratorBetaApiGetWorkflowRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + getWorkflow(requestParameters: ComplianceOrchestratorBetaApiGetWorkflowRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.getWorkflow(requestParameters.workflowId, options).then((request) => request(axios, basePath)); + }, + /** + * Starts a compliance screening against an active workflow and returns a `screeningId`. The screening runs asynchronously — poll `GET /v1/compliance/orchestrator/screenings/{screeningId}` for the result. Unlike the screening that applies automatically to submitted transactions under `/v1/screening`, this is called on demand, before anything exists on-chain. + * @summary Trigger a Compliance Orchestrator screening + * @param {ComplianceOrchestratorBetaApiTriggerScreeningRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + triggerScreening(requestParameters: ComplianceOrchestratorBetaApiTriggerScreeningRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.triggerScreening(requestParameters.triggerScreeningRequest, requestParameters.idempotencyKey, options).then((request) => request(axios, basePath)); + }, + /** + * Moves a workflow between `DRAFT` and `ACTIVE`. A workflow must be `ACTIVE` before `POST /v1/compliance/orchestrator/screenings` will accept a screening against it. Returns the workflow\'s id and new status, not its full configuration. + * @summary Update a Compliance Orchestrator workflow\'s status + * @param {ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + updateWorkflowStatus(requestParameters: ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.updateWorkflowStatus(requestParameters.updateWorkflowStatusRequest, requestParameters.workflowId, requestParameters.idempotencyKey, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * Request parameters for getScreeningResult operation in ComplianceOrchestratorBetaApi. + * @export + * @interface ComplianceOrchestratorBetaApiGetScreeningResultRequest + */ +export interface ComplianceOrchestratorBetaApiGetScreeningResultRequest { + /** + * The screening\'s identifier, returned by `POST /v1/compliance/orchestrator/screenings`. + * @type {string} + * @memberof ComplianceOrchestratorBetaApiGetScreeningResult + */ + readonly screeningId: string +} + +/** + * Request parameters for getWorkflow operation in ComplianceOrchestratorBetaApi. + * @export + * @interface ComplianceOrchestratorBetaApiGetWorkflowRequest + */ +export interface ComplianceOrchestratorBetaApiGetWorkflowRequest { + /** + * The workflow\'s identifier. + * @type {string} + * @memberof ComplianceOrchestratorBetaApiGetWorkflow + */ + readonly workflowId: string +} + +/** + * Request parameters for triggerScreening operation in ComplianceOrchestratorBetaApi. + * @export + * @interface ComplianceOrchestratorBetaApiTriggerScreeningRequest + */ +export interface ComplianceOrchestratorBetaApiTriggerScreeningRequest { + /** + * + * @type {TriggerScreeningRequest} + * @memberof ComplianceOrchestratorBetaApiTriggerScreening + */ + readonly triggerScreeningRequest: TriggerScreeningRequest + + /** + * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @type {string} + * @memberof ComplianceOrchestratorBetaApiTriggerScreening + */ + readonly idempotencyKey?: string +} + +/** + * Request parameters for updateWorkflowStatus operation in ComplianceOrchestratorBetaApi. + * @export + * @interface ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest + */ +export interface ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest { + /** + * + * @type {UpdateWorkflowStatusRequest} + * @memberof ComplianceOrchestratorBetaApiUpdateWorkflowStatus + */ + readonly updateWorkflowStatusRequest: UpdateWorkflowStatusRequest + + /** + * The workflow\'s identifier. + * @type {string} + * @memberof ComplianceOrchestratorBetaApiUpdateWorkflowStatus + */ + readonly workflowId: string + + /** + * A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. + * @type {string} + * @memberof ComplianceOrchestratorBetaApiUpdateWorkflowStatus + */ + readonly idempotencyKey?: string +} + +/** + * ComplianceOrchestratorBetaApi - object-oriented interface + * @export + * @class ComplianceOrchestratorBetaApi + * @extends {BaseAPI} + */ +export class ComplianceOrchestratorBetaApi extends BaseAPI { + /** + * Returns the result of a screening started by `POST /v1/compliance/orchestrator/screenings`, with a result per workflow step and an audit log. Safe to poll: a screening still in flight reports `PENDING` or `RUNNING`. Only screenings owned by the requesting tenant are returned. + * @summary Get a Compliance Orchestrator screening\'s result + * @param {ComplianceOrchestratorBetaApiGetScreeningResultRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ComplianceOrchestratorBetaApi + */ + public getScreeningResult(requestParameters: ComplianceOrchestratorBetaApiGetScreeningResultRequest) { + return ComplianceOrchestratorBetaApiFp(this.configuration).getScreeningResult(requestParameters.screeningId).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } + + /** + * Returns a workflow\'s status and its steps in execution order. Read it to see what a given `workflowId` will screen, and which fields its rules may reference. + * @summary Get a Compliance Orchestrator workflow + * @param {ComplianceOrchestratorBetaApiGetWorkflowRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ComplianceOrchestratorBetaApi + */ + public getWorkflow(requestParameters: ComplianceOrchestratorBetaApiGetWorkflowRequest) { + return ComplianceOrchestratorBetaApiFp(this.configuration).getWorkflow(requestParameters.workflowId).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } + + /** + * Starts a compliance screening against an active workflow and returns a `screeningId`. The screening runs asynchronously — poll `GET /v1/compliance/orchestrator/screenings/{screeningId}` for the result. Unlike the screening that applies automatically to submitted transactions under `/v1/screening`, this is called on demand, before anything exists on-chain. + * @summary Trigger a Compliance Orchestrator screening + * @param {ComplianceOrchestratorBetaApiTriggerScreeningRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ComplianceOrchestratorBetaApi + */ + public triggerScreening(requestParameters: ComplianceOrchestratorBetaApiTriggerScreeningRequest) { + return ComplianceOrchestratorBetaApiFp(this.configuration).triggerScreening(requestParameters.triggerScreeningRequest, requestParameters.idempotencyKey).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } + + /** + * Moves a workflow between `DRAFT` and `ACTIVE`. A workflow must be `ACTIVE` before `POST /v1/compliance/orchestrator/screenings` will accept a screening against it. Returns the workflow\'s id and new status, not its full configuration. + * @summary Update a Compliance Orchestrator workflow\'s status + * @param {ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ComplianceOrchestratorBetaApi + */ + public updateWorkflowStatus(requestParameters: ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest) { + return ComplianceOrchestratorBetaApiFp(this.configuration).updateWorkflowStatus(requestParameters.updateWorkflowStatusRequest, requestParameters.workflowId, requestParameters.idempotencyKey).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + } +} + diff --git a/api/webhooks-v2-api.ts b/api/webhooks-v2-api.ts index 729e1e0..4ebc340 100644 --- a/api/webhooks-v2-api.ts +++ b/api/webhooks-v2-api.ts @@ -266,13 +266,14 @@ export const WebhooksV2ApiAxiosParamCreator = function (configuration?: Configur }; }, /** - * Returns the Fireblocks Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. + * Returns the Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. The private key the CSR is built from is held by Fireblocks and is specific to this workspace. It is created on the first request for a given key type, and the same CSR is returned on subsequent requests for that type. Pass `keyAlgorithm` to choose RSA or ECDSA. A workspace may hold one key of each: the CSR returned is always the one for the type requested, so a certificate signed against it matches the key used at delivery time. * @summary Get mTLS CSR + * @param {GetMtlsCsrKeyAlgorithmEnum} [keyAlgorithm] Algorithm of the private key the CSR is generated for. ECDSA keys are smaller and quicker to issue, but the certificate authority signing the request has to accept an EC subject key, which some do not by default. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getMtlsCsr: async (options: RawAxiosRequestConfig = {}): Promise => { - const localVarPath = `/webhooks/mtls/csr`; + getMtlsCsr: async (keyAlgorithm?: GetMtlsCsrKeyAlgorithmEnum, options: RawAxiosRequestConfig = {}): Promise => { + const localVarPath = `/webhooks_settings/mtls_csr`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; @@ -284,6 +285,10 @@ export const WebhooksV2ApiAxiosParamCreator = function (configuration?: Configur const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; + if (keyAlgorithm !== undefined) { + localVarQueryParameter['keyAlgorithm'] = keyAlgorithm; + } + setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -882,7 +887,7 @@ export const WebhooksV2ApiAxiosParamCreator = function (configuration?: Configur }; }, /** - * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Since a `null` inside a map is the delete mechanism, none of the three accepts `null` for the whole field — `customJwtClaims: null`, `customBodyParams: null` or `customHeaders: null` is rejected with a `400` rather than ignored. Clear a map by listing each of its keys with a `null` value. Because `null` is spent on deletion, a claim cannot be set to JSON `null` either, on this endpoint or on create. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. + * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Setting one of the three to `null` as a whole clears that map, which is the quick way to empty it without naming every key. There is no ambiguity between the two uses of `null` — one names an entry to delete, the other names the field. A claim cannot be set to JSON `null`, though, on this endpoint or on create, because `null` is spent on deletion. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. * @summary Update OAuth credentials * @param {UpdateWebhookOauthRequest} updateWebhookOauthRequest * @param {string} webhookOauthId The unique identifier of the OAuth credentials @@ -999,13 +1004,14 @@ export const WebhooksV2ApiFp = function(configuration?: Configuration) { return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); }, /** - * Returns the Fireblocks Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. + * Returns the Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. The private key the CSR is built from is held by Fireblocks and is specific to this workspace. It is created on the first request for a given key type, and the same CSR is returned on subsequent requests for that type. Pass `keyAlgorithm` to choose RSA or ECDSA. A workspace may hold one key of each: the CSR returned is always the one for the type requested, so a certificate signed against it matches the key used at delivery time. * @summary Get mTLS CSR + * @param {GetMtlsCsrKeyAlgorithmEnum} [keyAlgorithm] Algorithm of the private key the CSR is generated for. ECDSA keys are smaller and quicker to issue, but the certificate authority signing the request has to accept an EC subject key, which some do not by default. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getMtlsCsr(options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.getMtlsCsr(options); + async getMtlsCsr(keyAlgorithm?: GetMtlsCsrKeyAlgorithmEnum, options?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.getMtlsCsr(keyAlgorithm, options); const index = configuration?.serverIndex ?? 0; const operationBasePath = operationServerMap['WebhooksV2Api.getMtlsCsr']?.[index]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); @@ -1219,7 +1225,7 @@ export const WebhooksV2ApiFp = function(configuration?: Configuration) { return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, operationBasePath || basePath); }, /** - * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Since a `null` inside a map is the delete mechanism, none of the three accepts `null` for the whole field — `customJwtClaims: null`, `customBodyParams: null` or `customHeaders: null` is rejected with a `400` rather than ignored. Clear a map by listing each of its keys with a `null` value. Because `null` is spent on deletion, a claim cannot be set to JSON `null` either, on this endpoint or on create. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. + * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Setting one of the three to `null` as a whole clears that map, which is the quick way to empty it without naming every key. There is no ambiguity between the two uses of `null` — one names an entry to delete, the other names the field. A claim cannot be set to JSON `null`, though, on this endpoint or on create, because `null` is spent on deletion. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. * @summary Update OAuth credentials * @param {UpdateWebhookOauthRequest} updateWebhookOauthRequest * @param {string} webhookOauthId The unique identifier of the OAuth credentials @@ -1293,13 +1299,14 @@ export const WebhooksV2ApiFactory = function (configuration?: Configuration, bas return localVarFp.getMetrics(requestParameters.webhookId, requestParameters.metricName, options).then((request) => request(axios, basePath)); }, /** - * Returns the Fireblocks Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. + * Returns the Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. The private key the CSR is built from is held by Fireblocks and is specific to this workspace. It is created on the first request for a given key type, and the same CSR is returned on subsequent requests for that type. Pass `keyAlgorithm` to choose RSA or ECDSA. A workspace may hold one key of each: the CSR returned is always the one for the type requested, so a certificate signed against it matches the key used at delivery time. * @summary Get mTLS CSR + * @param {WebhooksV2ApiGetMtlsCsrRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getMtlsCsr(options?: RawAxiosRequestConfig): AxiosPromise { - return localVarFp.getMtlsCsr(options).then((request) => request(axios, basePath)); + getMtlsCsr(requestParameters: WebhooksV2ApiGetMtlsCsrRequest = {}, options?: RawAxiosRequestConfig): AxiosPromise { + return localVarFp.getMtlsCsr(requestParameters.keyAlgorithm, options).then((request) => request(axios, basePath)); }, /** * Get notification by id @@ -1441,7 +1448,7 @@ export const WebhooksV2ApiFactory = function (configuration?: Configuration, bas return localVarFp.updateWebhook(requestParameters.updateWebhookRequest, requestParameters.webhookId, options).then((request) => request(axios, basePath)); }, /** - * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Since a `null` inside a map is the delete mechanism, none of the three accepts `null` for the whole field — `customJwtClaims: null`, `customBodyParams: null` or `customHeaders: null` is rejected with a `400` rather than ignored. Clear a map by listing each of its keys with a `null` value. Because `null` is spent on deletion, a claim cannot be set to JSON `null` either, on this endpoint or on create. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. + * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Setting one of the three to `null` as a whole clears that map, which is the quick way to empty it without naming every key. There is no ambiguity between the two uses of `null` — one names an entry to delete, the other names the field. A claim cannot be set to JSON `null`, though, on this endpoint or on create, because `null` is spent on deletion. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. * @summary Update OAuth credentials * @param {WebhooksV2ApiUpdateWebhookOauthRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. @@ -1551,6 +1558,20 @@ export interface WebhooksV2ApiGetMetricsRequest { readonly metricName: GetMetricsMetricNameEnum } +/** + * Request parameters for getMtlsCsr operation in WebhooksV2Api. + * @export + * @interface WebhooksV2ApiGetMtlsCsrRequest + */ +export interface WebhooksV2ApiGetMtlsCsrRequest { + /** + * Algorithm of the private key the CSR is generated for. ECDSA keys are smaller and quicker to issue, but the certificate authority signing the request has to accept an EC subject key, which some do not by default. + * @type {'RSA' | 'ECDSA'} + * @memberof WebhooksV2ApiGetMtlsCsr + */ + readonly keyAlgorithm?: GetMtlsCsrKeyAlgorithmEnum +} + /** * Request parameters for getNotification operation in WebhooksV2Api. * @export @@ -2011,14 +2032,15 @@ export class WebhooksV2Api extends BaseAPI { } /** - * Returns the Fireblocks Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. + * Returns the Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. The private key the CSR is built from is held by Fireblocks and is specific to this workspace. It is created on the first request for a given key type, and the same CSR is returned on subsequent requests for that type. Pass `keyAlgorithm` to choose RSA or ECDSA. A workspace may hold one key of each: the CSR returned is always the one for the type requested, so a certificate signed against it matches the key used at delivery time. * @summary Get mTLS CSR + * @param {WebhooksV2ApiGetMtlsCsrRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof WebhooksV2Api */ - public getMtlsCsr() { - return WebhooksV2ApiFp(this.configuration).getMtlsCsr().then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); + public getMtlsCsr(requestParameters: WebhooksV2ApiGetMtlsCsrRequest = {}) { + return WebhooksV2ApiFp(this.configuration).getMtlsCsr(requestParameters.keyAlgorithm).then((request) => request(this.axios, this.basePath)).then(convertToFireblocksResponse); } /** @@ -2189,7 +2211,7 @@ export class WebhooksV2Api extends BaseAPI { } /** - * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Since a `null` inside a map is the delete mechanism, none of the three accepts `null` for the whole field — `customJwtClaims: null`, `customBodyParams: null` or `customHeaders: null` is rejected with a `400` rather than ignored. Clear a map by listing each of its keys with a `null` value. Because `null` is spent on deletion, a claim cannot be set to JSON `null` either, on this endpoint or on create. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. + * Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Setting one of the three to `null` as a whole clears that map, which is the quick way to empty it without naming every key. There is no ambiguity between the two uses of `null` — one names an entry to delete, the other names the field. A claim cannot be set to JSON `null`, though, on this endpoint or on create, because `null` is spent on deletion. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. * @summary Update OAuth credentials * @param {WebhooksV2ApiUpdateWebhookOauthRequest} requestParameters Request parameters. * @param {*} [options] Override http request option. @@ -2208,6 +2230,14 @@ export const GetMetricsMetricNameEnum = { LastActiveHourErrorRate: 'LAST_ACTIVE_HOUR_ERROR_RATE' } as const; export type GetMetricsMetricNameEnum = typeof GetMetricsMetricNameEnum[keyof typeof GetMetricsMetricNameEnum]; +/** + * @export + */ +export const GetMtlsCsrKeyAlgorithmEnum = { + Rsa: 'RSA', + Ecdsa: 'ECDSA' +} as const; +export type GetMtlsCsrKeyAlgorithmEnum = typeof GetMtlsCsrKeyAlgorithmEnum[keyof typeof GetMtlsCsrKeyAlgorithmEnum]; /** * @export */ diff --git a/client/client.ts b/client/client.ts index 2c8af42..4067c8f 100644 --- a/client/client.ts +++ b/client/client.ts @@ -18,6 +18,7 @@ import { ApiUserApi, BlockchainLinkBetaApi, BlockchainsAssetsApi, ComplianceApi, + ComplianceOrchestratorBetaApi, ComplianceScreeningConfigurationApi, ConnectedAccountsBetaApi, ConsoleUserApi, @@ -80,6 +81,7 @@ export class Fireblocks { private _blockchainLinkBeta?: BlockchainLinkBetaApi; private _blockchainsAssets?: BlockchainsAssetsApi; private _compliance?: ComplianceApi; + private _complianceOrchestratorBeta?: ComplianceOrchestratorBetaApi; private _complianceScreeningConfiguration?: ComplianceScreeningConfigurationApi; private _connectedAccountsBeta?: ConnectedAccountsBetaApi; private _consoleUser?: ConsoleUserApi; @@ -168,6 +170,9 @@ export class Fireblocks { get compliance(): ComplianceApi { return this._compliance ?? new ComplianceApi(this.config, undefined, this.axiosManager.axios); } + get complianceOrchestratorBeta(): ComplianceOrchestratorBetaApi { + return this._complianceOrchestratorBeta ?? new ComplianceOrchestratorBetaApi(this.config, undefined, this.axiosManager.axios); + } get complianceScreeningConfiguration(): ComplianceScreeningConfigurationApi { return this._complianceScreeningConfiguration ?? new ComplianceScreeningConfigurationApi(this.config, undefined, this.axiosManager.axios); } diff --git a/docs/apis/ApprovalsBetaApi.md b/docs/apis/ApprovalsBetaApi.md index bef4f40..f87ef96 100644 --- a/docs/apis/ApprovalsBetaApi.md +++ b/docs/apis/ApprovalsBetaApi.md @@ -4,11 +4,213 @@ All URIs are relative to https://developers.fireblocks.com/reference/ Method | HTTP request | Description ------------- | ------------- | ------------- +[**approveApproval**](#approveApproval) | **POST** /approvals/{requestId}/approve | Approve an approval request +[**createApprovalKey**](#createApprovalKey) | **POST** /management/api_users/{userId}/approval_keys | Register an approval key +[**deleteApprovalKey**](#deleteApprovalKey) | **DELETE** /management/api_users/{userId}/approval_keys/{keyId} | Delete an approval key [**getApprovalById**](#getApprovalById) | **GET** /approvals/{requestId} | Get a single approval request +[**getApprovalKeys**](#getApprovalKeys) | **GET** /management/api_users/{userId}/approval_keys | List approval keys [**getApprovals**](#getApprovals) | **GET** /approvals | List approval requests [**rejectApproval**](#rejectApproval) | **POST** /approvals/{requestId}/reject | Reject an approval request +# **approveApproval** +> approveApproval(approveApprovalRequest, ) + +Approve a pending approval request as the authenticated API user. The caller signs the request\'s signable data with the private key of a registered approval API key and submits the base64url-encoded signature, optionally with the key ID. The server verifies the signature against the registered public key — using the given key ID, or matching against all of the user\'s registered keys when the key ID is omitted — and advances the approval quorum. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ApprovalsBetaApiApproveApprovalRequest } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ApprovalsBetaApiApproveApprovalRequest = { + // ApproveApprovalRequest + approveApprovalRequest: param_value, + // string | The approval request ID. + requestId: 18055, + // string | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. (optional) + idempotencyKey: idempotencyKey_example, +}; + +fireblocks.approvalsBeta.approveApproval(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **approveApprovalRequest** | **[ApproveApprovalRequest](../models/ApproveApprovalRequest.md)**| | + **requestId** | [**string**] | The approval request ID. | defaults to undefined + **idempotencyKey** | [**string**] | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. | (optional) defaults to undefined + + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | The approval request was approved. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **createApprovalKey** +> RegisterApprovalApiKeyResponse createApprovalKey(registerApprovalApiKeyRequest, ) + +Register an approval public key for an API user, used to sign approval requests. Up to 2 active keys are supported per API user. Returns the server-generated key ID used for deletion. The `userId` must be the authenticated API user\'s own ID. Registering a key for another user is not supported and is rejected. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ApprovalsBetaApiCreateApprovalKeyRequest, RegisterApprovalApiKeyResponse } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ApprovalsBetaApiCreateApprovalKeyRequest = { + // RegisterApprovalApiKeyRequest + registerApprovalApiKeyRequest: param_value, + // string | The ID of the API user to register the approval key for. + userId: 8f3c1a2e-4b7d-4c91-a0e5-2d6f8b1c3a94, + // string | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. (optional) + idempotencyKey: idempotencyKey_example, +}; + +fireblocks.approvalsBeta.createApprovalKey(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **registerApprovalApiKeyRequest** | **[RegisterApprovalApiKeyRequest](../models/RegisterApprovalApiKeyRequest.md)**| | + **userId** | [**string**] | The ID of the API user to register the approval key for. | defaults to undefined + **idempotencyKey** | [**string**] | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. | (optional) defaults to undefined + + +### Return type + +**[RegisterApprovalApiKeyResponse](../models/RegisterApprovalApiKeyResponse.md)** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | The approval key was registered. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **deleteApprovalKey** +> deleteApprovalKey() + +Delete (revoke) an approval public key for the specified API user. Revoking the last key disables the API user\'s ability to sign approvals. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ApprovalsBetaApiDeleteApprovalKeyRequest } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ApprovalsBetaApiDeleteApprovalKeyRequest = { + // string | The ID of the API user whose approval key to delete. + userId: 8f3c1a2e-4b7d-4c91-a0e5-2d6f8b1c3a94, + // string | The ID of the approval key to delete. + keyId: fab543c0-d6be-414c-aa05-5c6c84269d7a, + // string | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. (optional) + idempotencyKey: idempotencyKey_example, +}; + +fireblocks.approvalsBeta.deleteApprovalKey(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | [**string**] | The ID of the API user whose approval key to delete. | defaults to undefined + **keyId** | [**string**] | The ID of the approval key to delete. | defaults to undefined + **idempotencyKey** | [**string**] | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. | (optional) defaults to undefined + + +### Return type + +void (empty response body) + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**204** | The approval key was deleted. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + # **getApprovalById** > ApprovalRequestItem getApprovalById() @@ -75,6 +277,72 @@ No authorization required [[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) +# **getApprovalKeys** +> ListApprovalApiKeysResponse getApprovalKeys() + +List the approval public keys registered for the specified API user. Endpoint Permission: Owner, Admin, Non-Signing Admin, Approver, Signer, Security Admin, Security Auditor. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ApprovalsBetaApiGetApprovalKeysRequest, ListApprovalApiKeysResponse } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ApprovalsBetaApiGetApprovalKeysRequest = { + // string | The ID of the API user whose approval keys to list. + userId: 8f3c1a2e-4b7d-4c91-a0e5-2d6f8b1c3a94, + // number | Number of results per page. Maximum 15. Defaults to 10. (optional) + pageSize: 56, + // string | Cursor returned from the previous response (the `next` field) to fetch the next page. (optional) + pageCursor: pageCursor_example, +}; + +fireblocks.approvalsBeta.getApprovalKeys(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **userId** | [**string**] | The ID of the API user whose approval keys to list. | defaults to undefined + **pageSize** | [**number**] | Number of results per page. Maximum 15. Defaults to 10. | (optional) defaults to 10 + **pageCursor** | [**string**] | Cursor returned from the previous response (the `next` field) to fetch the next page. | (optional) defaults to undefined + + +### Return type + +**[ListApprovalApiKeysResponse](../models/ListApprovalApiKeysResponse.md)** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | The API user\'s approval keys. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + # **getApprovals** > ListApprovalsResponse getApprovals() diff --git a/docs/apis/ComplianceOrchestratorBetaApi.md b/docs/apis/ComplianceOrchestratorBetaApi.md new file mode 100644 index 0000000..458af76 --- /dev/null +++ b/docs/apis/ComplianceOrchestratorBetaApi.md @@ -0,0 +1,271 @@ +# ComplianceOrchestratorBetaApi + +All URIs are relative to https://developers.fireblocks.com/reference/ + +Method | HTTP request | Description +------------- | ------------- | ------------- +[**getScreeningResult**](#getScreeningResult) | **GET** /compliance/orchestrator/screenings/{screeningId} | Get a Compliance Orchestrator screening\'s result +[**getWorkflow**](#getWorkflow) | **GET** /compliance/orchestrator/workflows/{workflowId} | Get a Compliance Orchestrator workflow +[**triggerScreening**](#triggerScreening) | **POST** /compliance/orchestrator/screenings | Trigger a Compliance Orchestrator screening +[**updateWorkflowStatus**](#updateWorkflowStatus) | **PATCH** /compliance/orchestrator/workflows/{workflowId}/status | Update a Compliance Orchestrator workflow\'s status + + +# **getScreeningResult** +> GetScreeningResultResponse getScreeningResult() + +Returns the result of a screening started by `POST /v1/compliance/orchestrator/screenings`, with a result per workflow step and an audit log. Safe to poll: a screening still in flight reports `PENDING` or `RUNNING`. Only screenings owned by the requesting tenant are returned. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ComplianceOrchestratorBetaApiGetScreeningResultRequest, GetScreeningResultResponse } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ComplianceOrchestratorBetaApiGetScreeningResultRequest = { + // string | The screening\'s identifier, returned by `POST /v1/compliance/orchestrator/screenings`. + screeningId: a1b2c3d4-e5f6-4a7b-8c9d-0e1f2a3b4c5d, +}; + +fireblocks.complianceOrchestratorBeta.getScreeningResult(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **screeningId** | [**string**] | The screening\'s identifier, returned by `POST /v1/compliance/orchestrator/screenings`. | defaults to undefined + + +### Return type + +**[GetScreeningResultResponse](../models/GetScreeningResultResponse.md)** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Screening result | * X-Request-ID -
| +**400** | Invalid request arguments. | * X-Request-ID -
| +**404** | Screening result not found. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **getWorkflow** +> GetWorkflowResponse getWorkflow() + +Returns a workflow\'s status and its steps in execution order. Read it to see what a given `workflowId` will screen, and which fields its rules may reference. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ComplianceOrchestratorBetaApiGetWorkflowRequest, GetWorkflowResponse } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ComplianceOrchestratorBetaApiGetWorkflowRequest = { + // string | The workflow\'s identifier. + workflowId: f47ac10b-58cc-4372-a567-0e02b2c3d479, +}; + +fireblocks.complianceOrchestratorBeta.getWorkflow(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **workflowId** | [**string**] | The workflow\'s identifier. | defaults to undefined + + +### Return type + +**[GetWorkflowResponse](../models/GetWorkflowResponse.md)** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: Not defined + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Workflow | * X-Request-ID -
| +**400** | Invalid request arguments. | * X-Request-ID -
| +**404** | Workflow not found. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **triggerScreening** +> TriggerScreeningResponse triggerScreening(triggerScreeningRequest) + +Starts a compliance screening against an active workflow and returns a `screeningId`. The screening runs asynchronously — poll `GET /v1/compliance/orchestrator/screenings/{screeningId}` for the result. Unlike the screening that applies automatically to submitted transactions under `/v1/screening`, this is called on demand, before anything exists on-chain. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ComplianceOrchestratorBetaApiTriggerScreeningRequest, TriggerScreeningResponse } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ComplianceOrchestratorBetaApiTriggerScreeningRequest = { + // TriggerScreeningRequest + triggerScreeningRequest: param_value, + // string | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. (optional) + idempotencyKey: idempotencyKey_example, +}; + +fireblocks.complianceOrchestratorBeta.triggerScreening(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **triggerScreeningRequest** | **[TriggerScreeningRequest](../models/TriggerScreeningRequest.md)**| | + **idempotencyKey** | [**string**] | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. | (optional) defaults to undefined + + +### Return type + +**[TriggerScreeningResponse](../models/TriggerScreeningResponse.md)** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**202** | Screening accepted | * X-Request-ID -
| +**400** | Invalid or missing required input fields. | * X-Request-ID -
| +**404** | Workflow not found. | * X-Request-ID -
| +**409** | Workflow is not active. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + +# **updateWorkflowStatus** +> UpdateWorkflowStatusResponse updateWorkflowStatus(updateWorkflowStatusRequest, ) + +Moves a workflow between `DRAFT` and `ACTIVE`. A workflow must be `ACTIVE` before `POST /v1/compliance/orchestrator/screenings` will accept a screening against it. Returns the workflow\'s id and new status, not its full configuration. + +### Example + + +```typescript +import { readFileSync } from 'fs'; +import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest, UpdateWorkflowStatusResponse } from '@fireblocks/ts-sdk'; + +// Set the environment variables for authentication +process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" +process.env.FIREBLOCKS_API_KEY = "my-api-key"; +process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf8"); + +const fireblocks = new Fireblocks(); + +let body: ComplianceOrchestratorBetaApiUpdateWorkflowStatusRequest = { + // UpdateWorkflowStatusRequest + updateWorkflowStatusRequest: param_value, + // string | The workflow\'s identifier. + workflowId: f47ac10b-58cc-4372-a567-0e02b2c3d479, + // string | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. (optional) + idempotencyKey: idempotencyKey_example, +}; + +fireblocks.complianceOrchestratorBeta.updateWorkflowStatus(body).then((res: FireblocksResponse) => { + console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); +}).catch((error:any) => console.error(error)); +``` + + +### Parameters + +Name | Type | Description | Notes +------------- | ------------- | ------------- | ------------- + **updateWorkflowStatusRequest** | **[UpdateWorkflowStatusRequest](../models/UpdateWorkflowStatusRequest.md)**| | + **workflowId** | [**string**] | The workflow\'s identifier. | defaults to undefined + **idempotencyKey** | [**string**] | A unique identifier for the request. If the request is sent multiple times with the same idempotency key, the server will return the same response as the first request. The idempotency key is valid for 24 hours. | (optional) defaults to undefined + + +### Return type + +**[UpdateWorkflowStatusResponse](../models/UpdateWorkflowStatusResponse.md)** + +### Authorization + +No authorization required + +### HTTP request headers + + - **Content-Type**: application/json + - **Accept**: application/json + + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +**200** | Workflow status updated | * X-Request-ID -
| +**400** | Invalid request arguments. | * X-Request-ID -
| +**404** | Workflow not found. | * X-Request-ID -
| +**0** | Error Response | * X-Request-ID -
| + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) + + diff --git a/docs/apis/WebhooksV2Api.md b/docs/apis/WebhooksV2Api.md index 66f7777..54b5fde 100644 --- a/docs/apis/WebhooksV2Api.md +++ b/docs/apis/WebhooksV2Api.md @@ -9,7 +9,7 @@ Method | HTTP request | Description [**deleteWebhook**](#deleteWebhook) | **DELETE** /webhooks/{webhookId} | Delete webhook [**deleteWebhookOauth**](#deleteWebhookOauth) | **DELETE** /webhooks_settings/oauth/{webhookOauthId} | Delete OAuth credentials [**getMetrics**](#getMetrics) | **GET** /webhooks/{webhookId}/metrics/{metricName} | Get webhook metrics -[**getMtlsCsr**](#getMtlsCsr) | **GET** /webhooks/mtls/csr | Get mTLS CSR +[**getMtlsCsr**](#getMtlsCsr) | **GET** /webhooks_settings/mtls_csr | Get mTLS CSR [**getNotification**](#getNotification) | **GET** /webhooks/{webhookId}/notifications/{notificationId} | Get notification by id [**getNotificationAttempts**](#getNotificationAttempts) | **GET** /webhooks/{webhookId}/notifications/{notificationId}/attempts | Get notification attempts [**getNotifications**](#getNotifications) | **GET** /webhooks/{webhookId}/notifications | Get all notifications by webhook id @@ -343,7 +343,7 @@ No authorization required # **getMtlsCsr** > WebhookMtlsCsrResponse getMtlsCsr() -Returns the Fireblocks Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. +Returns the Certificate Signing Request (CSR) PEM that customers use to generate their signed client certificate. The private key the CSR is built from is held by Fireblocks and is specific to this workspace. It is created on the first request for a given key type, and the same CSR is returned on subsequent requests for that type. Pass `keyAlgorithm` to choose RSA or ECDSA. A workspace may hold one key of each: the CSR returned is always the one for the type requested, so a certificate signed against it matches the key used at delivery time. ### Example @@ -351,7 +351,7 @@ Returns the Fireblocks Certificate Signing Request (CSR) PEM that customers use ```typescript import { readFileSync } from 'fs'; import { Fireblocks, BasePath } from '@fireblocks/ts-sdk'; -import type { FireblocksResponse, WebhookMtlsCsrResponse } from '@fireblocks/ts-sdk'; +import type { FireblocksResponse, WebhooksV2ApiGetMtlsCsrRequest, WebhookMtlsCsrResponse } from '@fireblocks/ts-sdk'; // Set the environment variables for authentication process.env.FIREBLOCKS_BASE_PATH = BasePath.Sandbox; // or assign directly to "https://sandbox-api.fireblocks.io/v1" @@ -360,7 +360,10 @@ process.env.FIREBLOCKS_SECRET_KEY = readFileSync("./fireblocks_secret.key", "utf const fireblocks = new Fireblocks(); -let body:any = {}; +let body: WebhooksV2ApiGetMtlsCsrRequest = { + // 'RSA' | 'ECDSA' | Algorithm of the private key the CSR is generated for. ECDSA keys are smaller and quicker to issue, but the certificate authority signing the request has to accept an EC subject key, which some do not by default. (optional) + keyAlgorithm: RSA, +}; fireblocks.webhooksV2.getMtlsCsr(body).then((res: FireblocksResponse) => { console.log('API called successfully. Returned data: ' + JSON.stringify(res, null, 2)); @@ -369,7 +372,10 @@ fireblocks.webhooksV2.getMtlsCsr(body).then((res: FireblocksResponse** | Algorithm of the private key the CSR is generated for. ECDSA keys are smaller and quicker to issue, but the certificate authority signing the request has to accept an EC subject key, which some do not by default. | (optional) defaults to 'RSA' ### Return type @@ -1314,7 +1320,7 @@ No authorization required # **updateWebhookOauth** > WebhookOauthCredentials updateWebhookOauth(updateWebhookOauthRequest, ) -Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Since a `null` inside a map is the delete mechanism, none of the three accepts `null` for the whole field — `customJwtClaims: null`, `customBodyParams: null` or `customHeaders: null` is rejected with a `400` rather than ignored. Clear a map by listing each of its keys with a `null` value. Because `null` is spent on deletion, a claim cannot be set to JSON `null` either, on this endpoint or on create. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. +Updates only the fields present in the request; anything omitted is left as it is. Sending `clientSecret` on its own rotates the secret for every webhook using these credentials. `customJwtClaims`, `customBodyParams` and `customHeaders` are all merged key by key rather than replaced, the same way a webhook\'s own `customHeaders` behaves: a key sent with a value is added or overwritten, a key sent with a `null` value is deleted, and a key you omit is left alone. Setting one of the three to `null` as a whole clears that map, which is the quick way to empty it without naming every key. There is no ambiguity between the two uses of `null` — one names an entry to delete, the other names the field. A claim cannot be set to JSON `null`, though, on this endpoint or on create, because `null` is spent on deletion. `mtlsClientSignedCert` is a scalar rather than a map, so `null` there does remove it. **Endpoint Permissions:** Owner, Admin, Non-Signing Admin. ### Example diff --git a/docs/models/ApprovalApiKey.md b/docs/models/ApprovalApiKey.md new file mode 100644 index 0000000..f262321 --- /dev/null +++ b/docs/models/ApprovalApiKey.md @@ -0,0 +1,17 @@ +# ApprovalApiKey + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**id** | **string** | The unique key ID, used to delete the key. | [default to undefined]| +|**name** | **string** | A human-readable label for the key. | [default to undefined]| +|**createdAt** | **string** | Creation time as epoch time in seconds. | [default to undefined]| +|**lastUsedAt** | **string** | Last time the key was used to sign, as epoch time in seconds (0 if never used). | [default to undefined]| +|**approvalApiPublicKey** | [**ApprovalApiPublicKey**](ApprovalApiPublicKey.md) | | [default to undefined]| +|**userId** | **string** | The ID of the API user who owns this key. | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ApprovalApiPublicKey.md b/docs/models/ApprovalApiPublicKey.md new file mode 100644 index 0000000..8f55cf1 --- /dev/null +++ b/docs/models/ApprovalApiPublicKey.md @@ -0,0 +1,26 @@ +# ApprovalApiPublicKey + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**algorithm** | **string** | The signature algorithm of the public key. | [default to undefined]| +|**publicKeyPem** | **string** | The PEM-encoded public key. | [default to undefined]| + + +## Enum: ApprovalApiPublicKeyAlgorithmEnum + + +* `RsaPs256` (value: `'RSA_PS256'`) + +* `EcdsaSecp256R1` (value: `'ECDSA_SECP256R1'`) + +* `EcdsaSecp384R1` (value: `'ECDSA_SECP384R1'`) + +* `EddsaEd25519` (value: `'EDDSA_ED25519'`) + + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ApproveApprovalRequest.md b/docs/models/ApproveApprovalRequest.md new file mode 100644 index 0000000..4db51fc --- /dev/null +++ b/docs/models/ApproveApprovalRequest.md @@ -0,0 +1,13 @@ +# ApproveApprovalRequest + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**signature** | **string** | Base64url-encoded signature over the request\'s signable data, produced with the private key of a registered approval API key. If keyId is provided the signature must match that key; otherwise it is matched against all of the user\'s registered keys. | [default to undefined]| +|**keyId** | **string** | The ID of the approval API key used to sign the request. Optional — if omitted, the signature is verified against all of the user\'s registered approval API keys. | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/AuditEventTypeEnum.md b/docs/models/AuditEventTypeEnum.md new file mode 100644 index 0000000..756986e --- /dev/null +++ b/docs/models/AuditEventTypeEnum.md @@ -0,0 +1,20 @@ +# AuditEventTypeEnum + +## Enum + + +* `StatusTransition` (value: `'STATUS_TRANSITION'`) + +* `StepTriggerRuleEvaluated` (value: `'STEP_TRIGGER_RULE_EVALUATED'`) + +* `ConnectorCall` (value: `'CONNECTOR_CALL'`) + +* `StepOutcomeRuleEvaluated` (value: `'STEP_OUTCOME_RULE_EVALUATED'`) + +* `StepMetadataRecorded` (value: `'STEP_METADATA_RECORDED'`) + +* `WorkflowOutcome` (value: `'WORKFLOW_OUTCOME'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/AuditLogEntry.md b/docs/models/AuditLogEntry.md new file mode 100644 index 0000000..af5a4e6 --- /dev/null +++ b/docs/models/AuditLogEntry.md @@ -0,0 +1,14 @@ +# AuditLogEntry + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**timestamp** | **string** | Unix timestamp in seconds when the event occurred, encoded as a string. | [default to undefined]| +|**eventType** | [**AuditEventTypeEnum**](AuditEventTypeEnum.md) | | [default to undefined]| +|**data** | **string** | The event payload, JSON serialised and then base64 encoded. Its shape depends on `eventType` — decode it to read the event. | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/BypassReasonEnum.md b/docs/models/BypassReasonEnum.md new file mode 100644 index 0000000..32393dd --- /dev/null +++ b/docs/models/BypassReasonEnum.md @@ -0,0 +1,28 @@ +# BypassReasonEnum + +## Enum + + +* `Manual` (value: `'MANUAL'`) + +* `UnsupportedAsset` (value: `'UNSUPPORTED_ASSET'`) + +* `UnsupportedRoute` (value: `'UNSUPPORTED_ROUTE'`) + +* `PassedByPolicy` (value: `'PASSED_BY_POLICY'`) + +* `BypassedFailure` (value: `'BYPASSED_FAILURE'`) + +* `TimedOut` (value: `'TIMED_OUT'`) + +* `BadCredentials` (value: `'BAD_CREDENTIALS'`) + +* `ConfigurationError` (value: `'CONFIGURATION_ERROR'`) + +* `DroppedByBlockchain` (value: `'DROPPED_BY_BLOCKCHAIN'`) + +* `ProcessDismissed` (value: `'PROCESS_DISMISSED'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ComplianceScreeningStatusEnum.md b/docs/models/ComplianceScreeningStatusEnum.md new file mode 100644 index 0000000..53c6103 --- /dev/null +++ b/docs/models/ComplianceScreeningStatusEnum.md @@ -0,0 +1,16 @@ +# ComplianceScreeningStatusEnum + +## Enum + + +* `Pending` (value: `'PENDING'`) + +* `Running` (value: `'RUNNING'`) + +* `Completed` (value: `'COMPLETED'`) + +* `Failed` (value: `'FAILED'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ConnectorStatusEnum.md b/docs/models/ConnectorStatusEnum.md new file mode 100644 index 0000000..385bb50 --- /dev/null +++ b/docs/models/ConnectorStatusEnum.md @@ -0,0 +1,16 @@ +# ConnectorStatusEnum + +## Enum + + +* `Completed` (value: `'COMPLETED'`) + +* `Bypassed` (value: `'BYPASSED'`) + +* `Failed` (value: `'FAILED'`) + +* `Frozen` (value: `'FROZEN'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ConnectorVerdictEnum.md b/docs/models/ConnectorVerdictEnum.md new file mode 100644 index 0000000..c7d2042 --- /dev/null +++ b/docs/models/ConnectorVerdictEnum.md @@ -0,0 +1,14 @@ +# ConnectorVerdictEnum + +## Enum + + +* `Accept` (value: `'ACCEPT'`) + +* `Reject` (value: `'REJECT'`) + +* `Alert` (value: `'ALERT'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/CreateWebhookRequest.md b/docs/models/CreateWebhookRequest.md index a1032e9..2836479 100644 --- a/docs/models/CreateWebhookRequest.md +++ b/docs/models/CreateWebhookRequest.md @@ -9,7 +9,7 @@ |**description** | **string** | description of the webhook. should not contain special characters. | [optional] [default to undefined]| |**enabled** | **boolean** | The status of the webhook. If false, the webhook will not receive notifications. | [optional] [default to true]| |**mtls** | [**WebhookMtls**](WebhookMtls.md) | | [optional] [default to undefined]| -|**webhookOauthId** | **string** | The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. | [optional] [default to undefined]| +|**webhookOauthId** | **string** | The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. Cannot be combined with an `authorization` custom header on the same webhook; a request that would leave both set is rejected. | [optional] [default to undefined]| |**customHeaders** | [**WebhookCustomHeaders**](WebhookCustomHeaders.md) | | [optional] [default to undefined]| diff --git a/docs/models/GetScreeningResultResponse.md b/docs/models/GetScreeningResultResponse.md new file mode 100644 index 0000000..8e2e2f2 --- /dev/null +++ b/docs/models/GetScreeningResultResponse.md @@ -0,0 +1,17 @@ +# GetScreeningResultResponse + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**screeningId** | **string** | Identifier of the screening being queried. | [default to undefined]| +|**workflowId** | **string** | Identifier of the workflow that produced this screening. | [default to undefined]| +|**screeningStatus** | [**ComplianceScreeningStatusEnum**](ComplianceScreeningStatusEnum.md) | | [default to undefined]| +|**steps** | [**Array<StepResult>**](StepResult.md) | Flat step list. | [default to undefined]| +|**auditLog** | [**Array<AuditLogEntry>**](AuditLogEntry.md) | Append-only audit trail for this screening. | [default to undefined]| +|**outcome** | [**ScreeningOutcomeEnum**](ScreeningOutcomeEnum.md) | | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/GetWorkflowResponse.md b/docs/models/GetWorkflowResponse.md new file mode 100644 index 0000000..fd86da7 --- /dev/null +++ b/docs/models/GetWorkflowResponse.md @@ -0,0 +1,18 @@ +# GetWorkflowResponse + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**workflowId** | **string** | Unique identifier of the workflow. | [default to undefined]| +|**status** | [**WorkflowStatusEnum**](WorkflowStatusEnum.md) | | [default to undefined]| +|**title** | **string** | User-facing display name for the workflow. | [default to undefined]| +|**createdAt** | **string** | Unix timestamp in seconds when the workflow was provisioned, encoded as a string. | [default to undefined]| +|**steps** | [**Array<StepConfig>**](StepConfig.md) | Flat list — one step per connector. | [default to undefined]| +|**templateId** | **string** | The template this workflow was provisioned from, if any. | [optional] [default to undefined]| +|**description** | **string** | User-facing free-text description of the workflow\'s purpose. | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/InternalTransferResponse.md b/docs/models/InternalTransferResponse.md index 0c337ab..7b09f9d 100644 --- a/docs/models/InternalTransferResponse.md +++ b/docs/models/InternalTransferResponse.md @@ -6,6 +6,8 @@ |------------ | ------------- | ------------- | -------------| |**success** | **boolean** | Indicates whether the transfer was successful | [default to undefined]| |**id** | **string** | The transaction ID of the internal transfer | [optional] [default to undefined]| +|**status** | **string** | The transfer status returned by the transaction manager. Only present when the transfer was processed via the transaction manager flow. | [optional] [default to undefined]| +|**systemMessages** | [**Array<SystemMessageInfo>**](SystemMessageInfo.md) | System messages returned by the transaction manager about the health of the transfer being performed. Only present when the transfer was processed via the transaction manager flow. | [optional] [default to undefined]| diff --git a/docs/models/ListApprovalApiKeysResponse.md b/docs/models/ListApprovalApiKeysResponse.md new file mode 100644 index 0000000..7d3d1fa --- /dev/null +++ b/docs/models/ListApprovalApiKeysResponse.md @@ -0,0 +1,13 @@ +# ListApprovalApiKeysResponse + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**data** | [**Array<ApprovalApiKey>**](ApprovalApiKey.md) | The registered approval API keys. | [default to undefined]| +|**next** | **string** | Cursor for the next page of results. Pass it back as the `pageCursor` query param to fetch the next page. Empty or absent when this is the last page. | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ParameterWithValue.md b/docs/models/ParameterWithValue.md index 274c3ef..2368500 100644 --- a/docs/models/ParameterWithValue.md +++ b/docs/models/ParameterWithValue.md @@ -9,7 +9,7 @@ |**description** | **string** | A description of the parameter, fetched from the devdoc of this contract | [optional] [default to undefined]| |**internalType** | **string** | The internal type of the parameter as it appears in the ABI | [optional] [default to undefined]| |**components** | [**Array<Parameter>**](Parameter.md) | | [optional] [default to undefined]| -|**value** | **string** | The value of the parameter. can also be ParameterWithValue | [optional] [default to undefined]| +|**value** | **any** | The value of the parameter. The shape follows the ABI `type`: a string for `string`/`address`/`bytes*`, a number for `uint*`/`int*`, a boolean for `bool`, an array for `T[]`, and for `tuple` an array of nested ParameterWithValue objects (one per entry in `components`, in ABI order). | [optional] [default to undefined]| |**functionValue** | [**LeanAbiFunction**](LeanAbiFunction.md) | The function value of this param (if has one). If this is set, the `value` shouldn`t be. Used for proxies | [optional] [default to undefined]| diff --git a/docs/models/RegisterApprovalApiKeyRequest.md b/docs/models/RegisterApprovalApiKeyRequest.md new file mode 100644 index 0000000..279b97a --- /dev/null +++ b/docs/models/RegisterApprovalApiKeyRequest.md @@ -0,0 +1,13 @@ +# RegisterApprovalApiKeyRequest + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**name** | **string** | A human-readable label for the key. | [default to undefined]| +|**approvalApiPublicKey** | [**ApprovalApiPublicKey**](ApprovalApiPublicKey.md) | | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/RegisterApprovalApiKeyResponse.md b/docs/models/RegisterApprovalApiKeyResponse.md new file mode 100644 index 0000000..25514b2 --- /dev/null +++ b/docs/models/RegisterApprovalApiKeyResponse.md @@ -0,0 +1,12 @@ +# RegisterApprovalApiKeyResponse + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**keyId** | **string** | The server-generated ID of the registered key, used for deletion. | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/RiskLevelEnum.md b/docs/models/RiskLevelEnum.md new file mode 100644 index 0000000..d70d048 --- /dev/null +++ b/docs/models/RiskLevelEnum.md @@ -0,0 +1,18 @@ +# RiskLevelEnum + +## Enum + + +* `Severe` (value: `'SEVERE'`) + +* `High` (value: `'HIGH'`) + +* `Medium` (value: `'MEDIUM'`) + +* `Low` (value: `'LOW'`) + +* `Unknown` (value: `'UNKNOWN'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/Rule.md b/docs/models/Rule.md new file mode 100644 index 0000000..f4dee61 --- /dev/null +++ b/docs/models/Rule.md @@ -0,0 +1,16 @@ +# Rule + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**ruleId** | **string** | UUID, unique within the rule set. | [optional] [default to undefined]| +|**conditions** | [**Array<RuleCondition>**](RuleCondition.md) | Conditions AND-ed together within this rule. | [optional] [default to undefined]| +|**ruleAction** | [**RuleActionEnum**](RuleActionEnum.md) | | [optional] [default to undefined]| +|**order** | **number** | Zero-based evaluation order among the rule set\'s rules, lowest first. | [optional] [default to undefined]| +|**title** | **string** | User-facing label for the rule. Cosmetic only — not read by rule evaluation. | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/RuleActionEnum.md b/docs/models/RuleActionEnum.md new file mode 100644 index 0000000..3c092ef --- /dev/null +++ b/docs/models/RuleActionEnum.md @@ -0,0 +1,22 @@ +# RuleActionEnum + +## Enum + + +* `Screen` (value: `'SCREEN'`) + +* `Pass` (value: `'PASS'`) + +* `Freeze` (value: `'FREEZE'`) + +* `Accept` (value: `'ACCEPT'`) + +* `Reject` (value: `'REJECT'`) + +* `Alert` (value: `'ALERT'`) + +* `Wait` (value: `'WAIT'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/RuleCondition.md b/docs/models/RuleCondition.md new file mode 100644 index 0000000..5e81cec --- /dev/null +++ b/docs/models/RuleCondition.md @@ -0,0 +1,14 @@ +# RuleCondition + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**field** | **string** | The input context field this condition tests. Allowed values depend on the rule set type (trigger vs. outcome) and the step\'s connector/operation. | [default to undefined]| +|**operator** | [**RuleConditionOperatorEnum**](RuleConditionOperatorEnum.md) | | [default to undefined]| +|**value** | **string** | The value `field` is compared against, using `operator`. | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/RuleConditionOperatorEnum.md b/docs/models/RuleConditionOperatorEnum.md new file mode 100644 index 0000000..1a79daa --- /dev/null +++ b/docs/models/RuleConditionOperatorEnum.md @@ -0,0 +1,20 @@ +# RuleConditionOperatorEnum + +## Enum + + +* `Equals` (value: `'EQUALS'`) + +* `NotEquals` (value: `'NOT_EQUALS'`) + +* `Gt` (value: `'GT'`) + +* `Gte` (value: `'GTE'`) + +* `Lt` (value: `'LT'`) + +* `Lte` (value: `'LTE'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/RuleSet.md b/docs/models/RuleSet.md new file mode 100644 index 0000000..8715564 --- /dev/null +++ b/docs/models/RuleSet.md @@ -0,0 +1,12 @@ +# RuleSet + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**rules** | [**Array<Rule>**](Rule.md) | Ordered rule list, evaluated top to bottom; the first match wins. | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ScreeningInput.md b/docs/models/ScreeningInput.md new file mode 100644 index 0000000..806ee81 --- /dev/null +++ b/docs/models/ScreeningInput.md @@ -0,0 +1,13 @@ +# ScreeningInput + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**operation** | [**ScreeningOperationEnum**](ScreeningOperationEnum.md) | | [default to undefined]| +|**payload** | [**Array<ScreeningPayload>**](ScreeningPayload.md) | The screening subjects. Up to 100 per request — the provider\'s own batch limit for address screening — so a bulk check does not need one call per address. | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ScreeningOperationEnum.md b/docs/models/ScreeningOperationEnum.md new file mode 100644 index 0000000..e1cc24c --- /dev/null +++ b/docs/models/ScreeningOperationEnum.md @@ -0,0 +1,14 @@ +# ScreeningOperationEnum + +## Enum + + +* `AddressScreening` (value: `'ADDRESS_SCREENING'`) + +* `TransactionScreening` (value: `'TRANSACTION_SCREENING'`) + +* `RegisterTransaction` (value: `'REGISTER_TRANSACTION'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ScreeningOutcomeEnum.md b/docs/models/ScreeningOutcomeEnum.md new file mode 100644 index 0000000..e575190 --- /dev/null +++ b/docs/models/ScreeningOutcomeEnum.md @@ -0,0 +1,12 @@ +# ScreeningOutcomeEnum + +## Enum + + +* `Accept` (value: `'ACCEPT'`) + +* `Reject` (value: `'REJECT'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/ScreeningPayload.md b/docs/models/ScreeningPayload.md new file mode 100644 index 0000000..202ec9a --- /dev/null +++ b/docs/models/ScreeningPayload.md @@ -0,0 +1,22 @@ +# ScreeningPayload + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**blockchain** | **string** | The blockchain network of the asset being screened. | [optional] [default to undefined]| +|**asset** | **string** | The asset identifier being screened. | [optional] [default to undefined]| +|**assetAmount** | **string** | The amount of the asset involved in the transaction, as a string. | [optional] [default to undefined]| +|**usdValue** | **string** | The USD value of the transaction amount, as a string. | [optional] [default to undefined]| +|**customerRefId** | **string** | Customer-provided reference identifier for tracking. | [optional] [default to undefined]| +|**externalId** | **string** | External identifier for the screening (provider-specific). | [optional] [default to undefined]| +|**address** | **string** | The blockchain address to screen. Used for the `ADDRESS_SCREENING` operation. | [optional] [default to undefined]| +|**direction** | [**TransferDirectionEnum**](TransferDirectionEnum.md) | | [optional] [default to undefined]| +|**sourceAddress** | **Array<string>** | The source blockchain address(es) of the transaction. | [optional] [default to undefined]| +|**destinationAddress** | **Array<string>** | The destination blockchain address(es) of the transaction. | [optional] [default to undefined]| +|**txHash** | **string** | The transaction hash on the blockchain. | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/StepConfig.md b/docs/models/StepConfig.md new file mode 100644 index 0000000..02db24d --- /dev/null +++ b/docs/models/StepConfig.md @@ -0,0 +1,15 @@ +# StepConfig + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**stepId** | **string** | Unique within the workflow. | [default to undefined]| +|**connectorId** | **string** | Identifies which connector this step invokes. | [default to undefined]| +|**operations** | [**Array<StepOperationConfig>**](StepOperationConfig.md) | One entry per operation the step\'s connector handles. | [default to undefined]| +|**order** | **number** | Execution order among the workflow\'s steps, lowest first. | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/StepOperationConfig.md b/docs/models/StepOperationConfig.md new file mode 100644 index 0000000..6c9a170 --- /dev/null +++ b/docs/models/StepOperationConfig.md @@ -0,0 +1,21 @@ +# StepOperationConfig + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**operation** | [**ScreeningOperationEnum**](ScreeningOperationEnum.md) | | [optional] [default to undefined]| +|**requiredParameters** | **Array<string>** | Resolved server-side on every `GetWorkflow` call from the step\'s connector definition for this operation. Read-only: ignored on write. | [optional] [default to undefined]| +|**optionalParameters** | **Array<string>** | Like `requiredParameters`, but optional inputs to the operation. | [optional] [default to undefined]| +|**triggerRuleParameters** | **Array<string>** | Fields a condition in `triggerRuleSetStruct` may reference. | [optional] [default to undefined]| +|**outcomeEvaluationParameters** | **Array<string>** | Provider response fields a condition in `outcomeRuleSetStruct` may reference. | [optional] [default to undefined]| +|**outcomeMetaParameters** | **Array<string>** | Additional provider response fields returned with the result; not usable in `outcomeRuleSetStruct` conditions. | [optional] [default to undefined]| +|**triggerRuleSetStruct** | [**RuleSet**](RuleSet.md) | | [optional] [default to undefined]| +|**triggerRuleSetJson** | **string** | The tenant\'s trigger rules, as a JSON-encoded string. Set for steps whose rules are still defined as a legacy screening policy rather than natively in Compliance Orchestrator, and refreshed on every read. Mutually exclusive with `triggerRuleSetStruct`. | [optional] [default to undefined]| +|**outcomeRuleSetStruct** | [**RuleSet**](RuleSet.md) | | [optional] [default to undefined]| +|**outcomeRuleSetJson** | **string** | The tenant\'s outcome rules, as a JSON-encoded string. Set for steps whose rules are still defined as a legacy screening policy rather than natively in Compliance Orchestrator, and refreshed on every read. Mutually exclusive with `outcomeRuleSetStruct`. | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/StepResult.md b/docs/models/StepResult.md new file mode 100644 index 0000000..2ff2752 --- /dev/null +++ b/docs/models/StepResult.md @@ -0,0 +1,25 @@ +# StepResult + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**stepId** | **string** | Identifier of this step within the workflow. | [default to undefined]| +|**connectorId** | **string** | Identifier of the connector that executed this step. | [default to undefined]| +|**operation** | [**ScreeningOperationEnum**](ScreeningOperationEnum.md) | | [default to undefined]| +|**triggerRuleOutcome** | [**TriggerRuleOutcomeEnum**](TriggerRuleOutcomeEnum.md) | | [default to undefined]| +|**outcomeRuleOutcome** | [**ScreeningOutcomeEnum**](ScreeningOutcomeEnum.md) | | [default to undefined]| +|**outcome** | [**ScreeningOutcomeEnum**](ScreeningOutcomeEnum.md) | | [default to undefined]| +|**matchedTriggerRule** | [**Rule**](Rule.md) | | [optional] [default to undefined]| +|**matchedOutcomeRule** | [**Rule**](Rule.md) | | [optional] [default to undefined]| +|**metadata** | [**StepResultMetadata**](StepResultMetadata.md) | | [optional] [default to undefined]| +|**ticketId** | **string** | The connector-side screening ticket identifier. | [optional] [default to undefined]| +|**verdict** | [**ConnectorVerdictEnum**](ConnectorVerdictEnum.md) | | [optional] [default to undefined]| +|**connectorStatus** | [**ConnectorStatusEnum**](ConnectorStatusEnum.md) | | [optional] [default to undefined]| +|**bypassReason** | [**BypassReasonEnum**](BypassReasonEnum.md) | | [optional] [default to undefined]| +|**risk** | [**RiskLevelEnum**](RiskLevelEnum.md) | | [optional] [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/StepResultMetadata.md b/docs/models/StepResultMetadata.md new file mode 100644 index 0000000..b7c7035 --- /dev/null +++ b/docs/models/StepResultMetadata.md @@ -0,0 +1,11 @@ +# StepResultMetadata + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/TransferDirectionEnum.md b/docs/models/TransferDirectionEnum.md new file mode 100644 index 0000000..a71cd4e --- /dev/null +++ b/docs/models/TransferDirectionEnum.md @@ -0,0 +1,12 @@ +# TransferDirectionEnum + +## Enum + + +* `Inbound` (value: `'INBOUND'`) + +* `Outbound` (value: `'OUTBOUND'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/TriggerRuleOutcomeEnum.md b/docs/models/TriggerRuleOutcomeEnum.md new file mode 100644 index 0000000..7ccc085 --- /dev/null +++ b/docs/models/TriggerRuleOutcomeEnum.md @@ -0,0 +1,14 @@ +# TriggerRuleOutcomeEnum + +## Enum + + +* `Execute` (value: `'EXECUTE'`) + +* `Pass` (value: `'PASS'`) + +* `Fail` (value: `'FAIL'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/TriggerScreeningRequest.md b/docs/models/TriggerScreeningRequest.md new file mode 100644 index 0000000..a545bdc --- /dev/null +++ b/docs/models/TriggerScreeningRequest.md @@ -0,0 +1,13 @@ +# TriggerScreeningRequest + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**workflowId** | **string** | The workflow to screen against. Must be in `ACTIVE` status. | [default to undefined]| +|**input** | [**ScreeningInput**](ScreeningInput.md) | | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/TriggerScreeningResponse.md b/docs/models/TriggerScreeningResponse.md new file mode 100644 index 0000000..4f18f15 --- /dev/null +++ b/docs/models/TriggerScreeningResponse.md @@ -0,0 +1,13 @@ +# TriggerScreeningResponse + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**screeningId** | **string** | Identifier of the screening that was created. Poll `GET /v1/compliance/orchestrator/screenings/{screeningId}` with it for the verdict. | [default to undefined]| +|**screeningStatus** | [**ComplianceScreeningStatusEnum**](ComplianceScreeningStatusEnum.md) | | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/UpdateWebhookRequest.md b/docs/models/UpdateWebhookRequest.md index 81e7bdf..52062e8 100644 --- a/docs/models/UpdateWebhookRequest.md +++ b/docs/models/UpdateWebhookRequest.md @@ -9,7 +9,7 @@ |**events** | [**Array<WebhookEvent>**](WebhookEvent.md) | The events that the webhook will be subscribed to | [optional] [default to undefined]| |**enabled** | **boolean** | The status of the webhook | [optional] [default to undefined]| |**mtls** | [**WebhookMtls**](WebhookMtls.md) | | [optional] [default to undefined]| -|**webhookOauthId** | **string** | The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. | [optional] [default to undefined]| +|**webhookOauthId** | **string** | The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. Cannot be combined with an `authorization` custom header on the same webhook; a request that would leave both set is rejected. | [optional] [default to undefined]| |**customHeaders** | [**WebhookCustomHeadersUpdate**](WebhookCustomHeadersUpdate.md) | | [optional] [default to undefined]| diff --git a/docs/models/UpdateWorkflowStatusRequest.md b/docs/models/UpdateWorkflowStatusRequest.md new file mode 100644 index 0000000..bf01a75 --- /dev/null +++ b/docs/models/UpdateWorkflowStatusRequest.md @@ -0,0 +1,12 @@ +# UpdateWorkflowStatusRequest + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**status** | [**WorkflowStatusEnum**](WorkflowStatusEnum.md) | | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/UpdateWorkflowStatusResponse.md b/docs/models/UpdateWorkflowStatusResponse.md new file mode 100644 index 0000000..cc2de0a --- /dev/null +++ b/docs/models/UpdateWorkflowStatusResponse.md @@ -0,0 +1,13 @@ +# UpdateWorkflowStatusResponse + +## Properties + +|Name | Type | Description | Notes| +|------------ | ------------- | ------------- | -------------| +|**workflowId** | **string** | Unique identifier of the workflow. | [default to undefined]| +|**status** | [**WorkflowStatusEnum**](WorkflowStatusEnum.md) | | [default to undefined]| + + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/WebhookMtlsCsrResponse.md b/docs/models/WebhookMtlsCsrResponse.md index 16be619..7d1c6a9 100644 --- a/docs/models/WebhookMtlsCsrResponse.md +++ b/docs/models/WebhookMtlsCsrResponse.md @@ -5,6 +5,7 @@ |Name | Type | Description | Notes| |------------ | ------------- | ------------- | -------------| |**csr** | **string** | The Fireblocks PEM-encoded Certificate Signing Request (CSR). | [default to undefined]| +|**keyAlgorithm** | [**WebhookMtlsKeyAlgorithm**](WebhookMtlsKeyAlgorithm.md) | | [default to undefined]| diff --git a/docs/models/WebhookMtlsKeyAlgorithm.md b/docs/models/WebhookMtlsKeyAlgorithm.md new file mode 100644 index 0000000..60e26f3 --- /dev/null +++ b/docs/models/WebhookMtlsKeyAlgorithm.md @@ -0,0 +1,12 @@ +# WebhookMtlsKeyAlgorithm + +## Enum + + +* `Rsa` (value: `'RSA'`) + +* `Ecdsa` (value: `'ECDSA'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/docs/models/WorkflowStatusEnum.md b/docs/models/WorkflowStatusEnum.md new file mode 100644 index 0000000..d933297 --- /dev/null +++ b/docs/models/WorkflowStatusEnum.md @@ -0,0 +1,12 @@ +# WorkflowStatusEnum + +## Enum + + +* `Active` (value: `'ACTIVE'`) + +* `Draft` (value: `'DRAFT'`) + + + +[[Back to top]](#) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to Model list]](../../README.md#documentation-for-models) [[Back to README]](../../README.md) diff --git a/models/approval-api-key.ts b/models/approval-api-key.ts new file mode 100644 index 0000000..ef391a0 --- /dev/null +++ b/models/approval-api-key.ts @@ -0,0 +1,63 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ApprovalApiPublicKey } from './approval-api-public-key'; + +/** + * A registered approval API key for an API user. + * @export + * @interface ApprovalApiKey + */ +export interface ApprovalApiKey { + /** + * The unique key ID, used to delete the key. + * @type {string} + * @memberof ApprovalApiKey + */ + 'id': string; + /** + * A human-readable label for the key. + * @type {string} + * @memberof ApprovalApiKey + */ + 'name': string; + /** + * Creation time as epoch time in seconds. + * @type {string} + * @memberof ApprovalApiKey + */ + 'createdAt': string; + /** + * Last time the key was used to sign, as epoch time in seconds (0 if never used). + * @type {string} + * @memberof ApprovalApiKey + */ + 'lastUsedAt': string; + /** + * + * @type {ApprovalApiPublicKey} + * @memberof ApprovalApiKey + */ + 'approvalApiPublicKey': ApprovalApiPublicKey; + /** + * The ID of the API user who owns this key. + * @type {string} + * @memberof ApprovalApiKey + */ + 'userId': string; +} + diff --git a/models/approval-api-public-key.ts b/models/approval-api-public-key.ts new file mode 100644 index 0000000..58639ab --- /dev/null +++ b/models/approval-api-public-key.ts @@ -0,0 +1,46 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The public key material and its signing algorithm. + * @export + * @interface ApprovalApiPublicKey + */ +export interface ApprovalApiPublicKey { + /** + * The signature algorithm of the public key. + * @type {string} + * @memberof ApprovalApiPublicKey + */ + 'algorithm': ApprovalApiPublicKeyAlgorithmEnum; + /** + * The PEM-encoded public key. + * @type {string} + * @memberof ApprovalApiPublicKey + */ + 'publicKeyPem': string; +} + +export const ApprovalApiPublicKeyAlgorithmEnum = { + RsaPs256: 'RSA_PS256', + EcdsaSecp256R1: 'ECDSA_SECP256R1', + EcdsaSecp384R1: 'ECDSA_SECP384R1', + EddsaEd25519: 'EDDSA_ED25519' +} as const; + +export type ApprovalApiPublicKeyAlgorithmEnum = typeof ApprovalApiPublicKeyAlgorithmEnum[keyof typeof ApprovalApiPublicKeyAlgorithmEnum]; + + diff --git a/models/approve-approval-request.ts b/models/approve-approval-request.ts new file mode 100644 index 0000000..08537ab --- /dev/null +++ b/models/approve-approval-request.ts @@ -0,0 +1,36 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The signed approval of a pending request. + * @export + * @interface ApproveApprovalRequest + */ +export interface ApproveApprovalRequest { + /** + * Base64url-encoded signature over the request\'s signable data, produced with the private key of a registered approval API key. If keyId is provided the signature must match that key; otherwise it is matched against all of the user\'s registered keys. + * @type {string} + * @memberof ApproveApprovalRequest + */ + 'signature': string; + /** + * The ID of the approval API key used to sign the request. Optional — if omitted, the signature is verified against all of the user\'s registered approval API keys. + * @type {string} + * @memberof ApproveApprovalRequest + */ + 'keyId'?: string; +} + diff --git a/models/audit-event-type-enum.ts b/models/audit-event-type-enum.ts new file mode 100644 index 0000000..9621769 --- /dev/null +++ b/models/audit-event-type-enum.ts @@ -0,0 +1,35 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The kind of event an audit entry records. - `STATUS_TRANSITION` — the screening moved between statuses - `STEP_TRIGGER_RULE_EVALUATED` — a step\'s trigger rules were evaluated - `CONNECTOR_CALL` — a connector was called; `data.phase` distinguishes the request from its terminal result - `STEP_OUTCOME_RULE_EVALUATED` — a step\'s outcome rules read the response - `STEP_METADATA_RECORDED` — connector metadata was attached to a step - `WORKFLOW_OUTCOME` — the workflow outcome was derived from its steps. + * @export + * @enum {string} + */ + +export const AuditEventTypeEnum = { + StatusTransition: 'STATUS_TRANSITION', + StepTriggerRuleEvaluated: 'STEP_TRIGGER_RULE_EVALUATED', + ConnectorCall: 'CONNECTOR_CALL', + StepOutcomeRuleEvaluated: 'STEP_OUTCOME_RULE_EVALUATED', + StepMetadataRecorded: 'STEP_METADATA_RECORDED', + WorkflowOutcome: 'WORKFLOW_OUTCOME' +} as const; + +export type AuditEventTypeEnum = typeof AuditEventTypeEnum[keyof typeof AuditEventTypeEnum]; + + + diff --git a/models/audit-log-entry.ts b/models/audit-log-entry.ts new file mode 100644 index 0000000..8bef99b --- /dev/null +++ b/models/audit-log-entry.ts @@ -0,0 +1,47 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { AuditEventTypeEnum } from './audit-event-type-enum'; + +/** + * One entry in a screening\'s append-only audit trail. + * @export + * @interface AuditLogEntry + */ +export interface AuditLogEntry { + /** + * Unix timestamp in seconds when the event occurred, encoded as a string. + * @type {string} + * @memberof AuditLogEntry + */ + 'timestamp': string; + /** + * + * @type {AuditEventTypeEnum} + * @memberof AuditLogEntry + */ + 'eventType': AuditEventTypeEnum; + /** + * The event payload, JSON serialised and then base64 encoded. Its shape depends on `eventType` — decode it to read the event. + * @type {string} + * @memberof AuditLogEntry + */ + 'data': string; +} + + + diff --git a/models/bypass-reason-enum.ts b/models/bypass-reason-enum.ts new file mode 100644 index 0000000..a36b501 --- /dev/null +++ b/models/bypass-reason-enum.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * Why a step\'s screening did not run. A verbatim mirror of the platform\'s `BypassReason` vocabulary, shared with the rest of Fireblocks screening. Only `PASSED_BY_POLICY` is an approval — the policy deliberately let the subject through. Every other value means the check could not be performed, and the step is rejected rather than passed. A bypass is not a pass. - `MANUAL` — a person bypassed it - `UNSUPPORTED_ASSET` — the provider does not screen this asset or chain - `UNSUPPORTED_ROUTE` — the provider does not screen this route - `PASSED_BY_POLICY` — a policy rule let it through without screening - `BYPASSED_FAILURE` — screening failed and policy allowed a bypass - `TIMED_OUT` — the provider did not answer within the deadline - `BAD_CREDENTIALS` — the tenant\'s provider credentials were rejected - `CONFIGURATION_ERROR` — the connector is misconfigured for this tenant - `DROPPED_BY_BLOCKCHAIN` — the transaction never confirmed - `PROCESS_DISMISSED` — the surrounding process was cancelled + * @export + * @enum {string} + */ + +export const BypassReasonEnum = { + Manual: 'MANUAL', + UnsupportedAsset: 'UNSUPPORTED_ASSET', + UnsupportedRoute: 'UNSUPPORTED_ROUTE', + PassedByPolicy: 'PASSED_BY_POLICY', + BypassedFailure: 'BYPASSED_FAILURE', + TimedOut: 'TIMED_OUT', + BadCredentials: 'BAD_CREDENTIALS', + ConfigurationError: 'CONFIGURATION_ERROR', + DroppedByBlockchain: 'DROPPED_BY_BLOCKCHAIN', + ProcessDismissed: 'PROCESS_DISMISSED' +} as const; + +export type BypassReasonEnum = typeof BypassReasonEnum[keyof typeof BypassReasonEnum]; + + + diff --git a/models/compliance-screening-status-enum.ts b/models/compliance-screening-status-enum.ts new file mode 100644 index 0000000..4f2e6b8 --- /dev/null +++ b/models/compliance-screening-status-enum.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * A screening\'s lifecycle status. - `PENDING` — accepted, not started - `RUNNING` — one or more steps in flight - `COMPLETED` — every step finished and the workflow outcome is set - `FAILED` — the screening could not be completed + * @export + * @enum {string} + */ + +export const ComplianceScreeningStatusEnum = { + Pending: 'PENDING', + Running: 'RUNNING', + Completed: 'COMPLETED', + Failed: 'FAILED' +} as const; + +export type ComplianceScreeningStatusEnum = typeof ComplianceScreeningStatusEnum[keyof typeof ComplianceScreeningStatusEnum]; + + + diff --git a/models/connector-status-enum.ts b/models/connector-status-enum.ts new file mode 100644 index 0000000..eef6238 --- /dev/null +++ b/models/connector-status-enum.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The connector\'s own processing status for a step. - `COMPLETED` — the provider answered - `BYPASSED` — no provider call was made; see `bypassReason` - `FAILED` — the provider call did not succeed - `FROZEN` — the step is held pending manual action + * @export + * @enum {string} + */ + +export const ConnectorStatusEnum = { + Completed: 'COMPLETED', + Bypassed: 'BYPASSED', + Failed: 'FAILED', + Frozen: 'FROZEN' +} as const; + +export type ConnectorStatusEnum = typeof ConnectorStatusEnum[keyof typeof ConnectorStatusEnum]; + + + diff --git a/models/connector-verdict-enum.ts b/models/connector-verdict-enum.ts new file mode 100644 index 0000000..b5bd0c6 --- /dev/null +++ b/models/connector-verdict-enum.ts @@ -0,0 +1,32 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The connector\'s own verdict for a step, before the step\'s outcome rules are applied. `null` on a step that did not reach the provider. + * @export + * @enum {string} + */ + +export const ConnectorVerdictEnum = { + Accept: 'ACCEPT', + Reject: 'REJECT', + Alert: 'ALERT' +} as const; + +export type ConnectorVerdictEnum = typeof ConnectorVerdictEnum[keyof typeof ConnectorVerdictEnum]; + + + diff --git a/models/create-webhook-request.ts b/models/create-webhook-request.ts index 06d31fb..aecded9 100644 --- a/models/create-webhook-request.ts +++ b/models/create-webhook-request.ts @@ -60,7 +60,7 @@ export interface CreateWebhookRequest { */ 'mtls'?: WebhookMtls | null; /** - * The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. + * The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. Cannot be combined with an `authorization` custom header on the same webhook; a request that would leave both set is rejected. * @type {string} * @memberof CreateWebhookRequest */ diff --git a/models/get-screening-result-response.ts b/models/get-screening-result-response.ts new file mode 100644 index 0000000..57f008b --- /dev/null +++ b/models/get-screening-result-response.ts @@ -0,0 +1,74 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { AuditLogEntry } from './audit-log-entry'; +// May contain unused imports in some cases +// @ts-ignore +import { ComplianceScreeningStatusEnum } from './compliance-screening-status-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { ScreeningOutcomeEnum } from './screening-outcome-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { StepResult } from './step-result'; + +/** + * The current status, outcome, per-step results, and audit log for a screening. + * @export + * @interface GetScreeningResultResponse + */ +export interface GetScreeningResultResponse { + /** + * Identifier of the screening being queried. + * @type {string} + * @memberof GetScreeningResultResponse + */ + 'screeningId': string; + /** + * Identifier of the workflow that produced this screening. + * @type {string} + * @memberof GetScreeningResultResponse + */ + 'workflowId': string; + /** + * + * @type {ComplianceScreeningStatusEnum} + * @memberof GetScreeningResultResponse + */ + 'screeningStatus': ComplianceScreeningStatusEnum; + /** + * Flat step list. + * @type {Array} + * @memberof GetScreeningResultResponse + */ + 'steps': Array; + /** + * Append-only audit trail for this screening. + * @type {Array} + * @memberof GetScreeningResultResponse + */ + 'auditLog': Array; + /** + * + * @type {ScreeningOutcomeEnum} + * @memberof GetScreeningResultResponse + */ + 'outcome'?: ScreeningOutcomeEnum | null; +} + + + diff --git a/models/get-workflow-response.ts b/models/get-workflow-response.ts new file mode 100644 index 0000000..e12fa66 --- /dev/null +++ b/models/get-workflow-response.ts @@ -0,0 +1,74 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { StepConfig } from './step-config'; +// May contain unused imports in some cases +// @ts-ignore +import { WorkflowStatusEnum } from './workflow-status-enum'; + +/** + * A workflow\'s current definition, including its steps and each step\'s rule sets. A workflow is the configuration a screening runs against: an ordered list of steps, each backed by one connector. It must be `ACTIVE` before a screening will accept it — `DRAFT` is the editing state, so a screening never runs against a half-finished configuration. + * @export + * @interface GetWorkflowResponse + */ +export interface GetWorkflowResponse { + /** + * Unique identifier of the workflow. + * @type {string} + * @memberof GetWorkflowResponse + */ + 'workflowId': string; + /** + * + * @type {WorkflowStatusEnum} + * @memberof GetWorkflowResponse + */ + 'status': WorkflowStatusEnum; + /** + * User-facing display name for the workflow. + * @type {string} + * @memberof GetWorkflowResponse + */ + 'title': string; + /** + * Unix timestamp in seconds when the workflow was provisioned, encoded as a string. + * @type {string} + * @memberof GetWorkflowResponse + */ + 'createdAt': string; + /** + * Flat list — one step per connector. + * @type {Array} + * @memberof GetWorkflowResponse + */ + 'steps': Array; + /** + * The template this workflow was provisioned from, if any. + * @type {string} + * @memberof GetWorkflowResponse + */ + 'templateId'?: string | null; + /** + * User-facing free-text description of the workflow\'s purpose. + * @type {string} + * @memberof GetWorkflowResponse + */ + 'description'?: string | null; +} + + + diff --git a/models/index.ts b/models/index.ts index f08d05e..0265018 100644 --- a/models/index.ts +++ b/models/index.ts @@ -97,8 +97,11 @@ export * from './amount-range-min-max'; export * from './amount-range-min-max2'; export * from './api-key'; export * from './api-keys-paginated-response'; +export * from './approval-api-key'; +export * from './approval-api-public-key'; export * from './approval-request'; export * from './approval-request-item'; +export * from './approve-approval-request'; export * from './approvers-config'; export * from './approvers-config-approval-groups-inner'; export * from './apy'; @@ -137,7 +140,9 @@ export * from './assign-vaults-to-legal-entity-request'; export * from './assign-vaults-to-legal-entity-response'; export * from './attach-detach-utxo-labels-request'; export * from './attach-detach-utxo-labels-response'; +export * from './audit-event-type-enum'; export * from './audit-log-data'; +export * from './audit-log-entry'; export * from './audit-logs-data'; export * from './auditor-data'; export * from './authorization-groups'; @@ -177,6 +182,7 @@ export * from './byork-verdict-enum'; export * from './byork-verdict-request'; export * from './byork-verdict-response'; export * from './byork-verdict-response-status-enum'; +export * from './bypass-reason-enum'; export * from './call-accepted'; export * from './callback-handler'; export * from './callback-handler-request'; @@ -219,6 +225,7 @@ export * from './compliance-result-statuses-enum'; export * from './compliance-results'; export * from './compliance-screening-result'; export * from './compliance-screening-result-full-payload'; +export * from './compliance-screening-status-enum'; export * from './config-change-request-status'; export * from './config-conversion-operation-snapshot'; export * from './config-disbursement-operation-snapshot'; @@ -243,6 +250,8 @@ export * from './connected-account-type'; export * from './connected-accounts-response'; export * from './connected-single-account'; export * from './connected-single-account-response'; +export * from './connector-status-enum'; +export * from './connector-verdict-enum'; export * from './console-user'; export * from './console-users'; export * from './contact'; @@ -532,6 +541,7 @@ export * from './get-paged-exchange-accounts-response-paging'; export * from './get-positions-response'; export * from './get-providers-response'; export * from './get-routing-policy-asset-groups-response'; +export * from './get-screening-result-response'; export * from './get-signing-key-response-dto'; export * from './get-supported-assets-response'; export * from './get-test-wallet-address-response'; @@ -544,6 +554,7 @@ export * from './get-vault-account-asset-addresses-response'; export * from './get-vault-accounts-response'; export * from './get-vault-assets-response'; export * from './get-whitelist-ip-addresses-response'; +export * from './get-workflow-response'; export * from './get-workspace-status-response'; export * from './gleif-data'; export * from './gleif-other-legal-entity-name'; @@ -608,6 +619,7 @@ export * from './legacy-src-or-dest-attributes-inner'; export * from './legal-entity-registration'; export * from './lei-status'; export * from './linked-tokens-count'; +export * from './list-approval-api-keys-response'; export * from './list-approvals-response'; export * from './list-assets-response'; export * from './list-blockchains-response'; @@ -813,6 +825,8 @@ export * from './read-call-function-dto-abi-function'; export * from './reason-for-payment-enum'; export * from './recipient-handle'; export * from './redeem-funds-to-linked-ddaresponse'; +export * from './register-approval-api-key-request'; +export * from './register-approval-api-key-response'; export * from './register-legal-entity-request'; export * from './register-new-asset-request'; export * from './reissue-multichain-token-request'; @@ -853,9 +867,15 @@ export * from './retry-requote-request-details'; export * from './retry-requote-type-enum'; export * from './reward-info'; export * from './rewards-info'; +export * from './risk-level-enum'; export * from './role-details'; export * from './role-details2'; export * from './role-grantee'; +export * from './rule'; +export * from './rule-action-enum'; +export * from './rule-condition'; +export * from './rule-condition-operator-enum'; +export * from './rule-set'; export * from './ruleset-quorum'; export * from './sepaaddress'; export * from './sepadestination'; @@ -869,11 +889,15 @@ export * from './screening-aml-alert'; export * from './screening-aml-matched-rule'; export * from './screening-aml-result'; export * from './screening-configurations-request'; +export * from './screening-input'; export * from './screening-metadata-config'; +export * from './screening-operation-enum'; export * from './screening-operation-execution'; export * from './screening-operation-execution-output'; export * from './screening-operation-failure'; export * from './screening-operation-type'; +export * from './screening-outcome-enum'; +export * from './screening-payload'; export * from './screening-policy-amount'; export * from './screening-policy-amount-range'; export * from './screening-policy-currency'; @@ -991,6 +1015,10 @@ export * from './staking-positions-paginated-response'; export * from './staking-provider'; export * from './status'; export * from './stellar-ripple-create-params-dto'; +export * from './step-config'; +export * from './step-operation-config'; +export * from './step-result'; +export * from './step-result-metadata'; export * from './submit-order-requirement-request'; export * from './supported-block-chains-response'; export * from './supported-blockchain'; @@ -1141,6 +1169,7 @@ export * from './transaction-response-contract-call-decoded-data'; export * from './transaction-response-destination'; export * from './transaction-tag'; export * from './transfer-config-operation'; +export * from './transfer-direction-enum'; export * from './transfer-operation-config-params'; export * from './transfer-operation-execution'; export * from './transfer-operation-execution-output'; @@ -1213,6 +1242,9 @@ export * from './travel-rule-validate-transaction-request'; export * from './travel-rule-validate-transaction-response'; export * from './travel-rule-vasp-for-vault'; export * from './travel-rule-verdict-enum'; +export * from './trigger-rule-outcome-enum'; +export * from './trigger-screening-request'; +export * from './trigger-screening-response'; export * from './trigger-validation-flow-response'; export * from './trust-proof-of-address-create-response'; export * from './trust-proof-of-address-request'; @@ -1245,6 +1277,8 @@ export * from './update-vault-account-asset-address-request'; export * from './update-vault-account-request'; export * from './update-webhook-oauth-request'; export * from './update-webhook-request'; +export * from './update-workflow-status-request'; +export * from './update-workflow-status-response'; export * from './us-wire-payment-info'; export * from './usdc-gateway-wallet-asset'; export * from './usdc-gateway-wallet-info-response'; @@ -1293,6 +1327,7 @@ export * from './webhook-event'; export * from './webhook-metric'; export * from './webhook-mtls'; export * from './webhook-mtls-csr-response'; +export * from './webhook-mtls-key-algorithm'; export * from './webhook-oauth-credentials'; export * from './webhook-oauth-custom-body-params'; export * from './webhook-oauth-custom-body-params-update'; @@ -1306,6 +1341,7 @@ export * from './withdraw-request'; export * from './workflow-config-status'; export * from './workflow-configuration-id'; export * from './workflow-execution-operation'; +export * from './workflow-status-enum'; export * from './workspace'; export * from './write-abi-function'; export * from './write-call-function-dto'; diff --git a/models/internal-transfer-response.ts b/models/internal-transfer-response.ts index eb3b519..26d6a94 100644 --- a/models/internal-transfer-response.ts +++ b/models/internal-transfer-response.ts @@ -13,6 +13,9 @@ */ +// May contain unused imports in some cases +// @ts-ignore +import { SystemMessageInfo } from './system-message-info'; /** * @@ -32,5 +35,17 @@ export interface InternalTransferResponse { * @memberof InternalTransferResponse */ 'id'?: string | null; + /** + * The transfer status returned by the transaction manager. Only present when the transfer was processed via the transaction manager flow. + * @type {string} + * @memberof InternalTransferResponse + */ + 'status'?: string | null; + /** + * System messages returned by the transaction manager about the health of the transfer being performed. Only present when the transfer was processed via the transaction manager flow. + * @type {Array} + * @memberof InternalTransferResponse + */ + 'systemMessages'?: Array | null; } diff --git a/models/list-approval-api-keys-response.ts b/models/list-approval-api-keys-response.ts new file mode 100644 index 0000000..b89f2c6 --- /dev/null +++ b/models/list-approval-api-keys-response.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ApprovalApiKey } from './approval-api-key'; + +/** + * The approval API keys registered for the API user. + * @export + * @interface ListApprovalApiKeysResponse + */ +export interface ListApprovalApiKeysResponse { + /** + * The registered approval API keys. + * @type {Array} + * @memberof ListApprovalApiKeysResponse + */ + 'data': Array; + /** + * Cursor for the next page of results. Pass it back as the `pageCursor` query param to fetch the next page. Empty or absent when this is the last page. + * @type {string} + * @memberof ListApprovalApiKeysResponse + */ + 'next'?: string; +} + diff --git a/models/parameter-with-value.ts b/models/parameter-with-value.ts index b264330..96a0bd2 100644 --- a/models/parameter-with-value.ts +++ b/models/parameter-with-value.ts @@ -57,11 +57,11 @@ export interface ParameterWithValue { */ 'components'?: Array; /** - * The value of the parameter. can also be ParameterWithValue - * @type {string} + * The value of the parameter. The shape follows the ABI `type`: a string for `string`/`address`/`bytes*`, a number for `uint*`/`int*`, a boolean for `bool`, an array for `T[]`, and for `tuple` an array of nested ParameterWithValue objects (one per entry in `components`, in ABI order). + * @type {any} * @memberof ParameterWithValue */ - 'value'?: string; + 'value'?: any; /** * The function value of this param (if has one). If this is set, the `value` shouldn`t be. Used for proxies * @type {LeanAbiFunction} diff --git a/models/register-approval-api-key-request.ts b/models/register-approval-api-key-request.ts new file mode 100644 index 0000000..3b5b513 --- /dev/null +++ b/models/register-approval-api-key-request.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ApprovalApiPublicKey } from './approval-api-public-key'; + +/** + * The approval API key to register. + * @export + * @interface RegisterApprovalApiKeyRequest + */ +export interface RegisterApprovalApiKeyRequest { + /** + * A human-readable label for the key. + * @type {string} + * @memberof RegisterApprovalApiKeyRequest + */ + 'name': string; + /** + * + * @type {ApprovalApiPublicKey} + * @memberof RegisterApprovalApiKeyRequest + */ + 'approvalApiPublicKey': ApprovalApiPublicKey; +} + diff --git a/models/register-approval-api-key-response.ts b/models/register-approval-api-key-response.ts new file mode 100644 index 0000000..0d6df84 --- /dev/null +++ b/models/register-approval-api-key-response.ts @@ -0,0 +1,30 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The result of registering an approval API key. + * @export + * @interface RegisterApprovalApiKeyResponse + */ +export interface RegisterApprovalApiKeyResponse { + /** + * The server-generated ID of the registered key, used for deletion. + * @type {string} + * @memberof RegisterApprovalApiKeyResponse + */ + 'keyId': string; +} + diff --git a/models/risk-level-enum.ts b/models/risk-level-enum.ts new file mode 100644 index 0000000..8aaff6b --- /dev/null +++ b/models/risk-level-enum.ts @@ -0,0 +1,34 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The provider\'s risk assessment for a step, normalised across connectors. `null` on a step that did not reach the provider — the absence of a risk level is not the same as low risk. + * @export + * @enum {string} + */ + +export const RiskLevelEnum = { + Severe: 'SEVERE', + High: 'HIGH', + Medium: 'MEDIUM', + Low: 'LOW', + Unknown: 'UNKNOWN' +} as const; + +export type RiskLevelEnum = typeof RiskLevelEnum[keyof typeof RiskLevelEnum]; + + + diff --git a/models/rule-action-enum.ts b/models/rule-action-enum.ts new file mode 100644 index 0000000..2cbf010 --- /dev/null +++ b/models/rule-action-enum.ts @@ -0,0 +1,36 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * What happens when a rule matches. Which values are legal depends on the rule set the rule belongs to — a trigger rule decides whether to screen, an outcome rule decides what the answer means. The enum is the union of both sets, so neither set accepts all of its values: `FREEZE` is the one value shared by the two, and every other value belongs to exactly one of them. Trigger rules: - `SCREEN` — call the connector - `PASS` — let the subject through without screening - `FREEZE` — hold for manual action Outcome rules: - `ACCEPT` — the step passes - `REJECT` — the step fails - `ALERT` — the step passes but is flagged for review - `FREEZE` — hold for manual action - `WAIT` — come back later; refused once the deadline has passed + * @export + * @enum {string} + */ + +export const RuleActionEnum = { + Screen: 'SCREEN', + Pass: 'PASS', + Freeze: 'FREEZE', + Accept: 'ACCEPT', + Reject: 'REJECT', + Alert: 'ALERT', + Wait: 'WAIT' +} as const; + +export type RuleActionEnum = typeof RuleActionEnum[keyof typeof RuleActionEnum]; + + + diff --git a/models/rule-condition-operator-enum.ts b/models/rule-condition-operator-enum.ts new file mode 100644 index 0000000..cc24820 --- /dev/null +++ b/models/rule-condition-operator-enum.ts @@ -0,0 +1,35 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * The comparison applied between a rule condition\'s `field` and its `value`. + * @export + * @enum {string} + */ + +export const RuleConditionOperatorEnum = { + Equals: 'EQUALS', + NotEquals: 'NOT_EQUALS', + Gt: 'GT', + Gte: 'GTE', + Lt: 'LT', + Lte: 'LTE' +} as const; + +export type RuleConditionOperatorEnum = typeof RuleConditionOperatorEnum[keyof typeof RuleConditionOperatorEnum]; + + + diff --git a/models/rule-condition.ts b/models/rule-condition.ts new file mode 100644 index 0000000..fff66b0 --- /dev/null +++ b/models/rule-condition.ts @@ -0,0 +1,47 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { RuleConditionOperatorEnum } from './rule-condition-operator-enum'; + +/** + * A single condition within a rule. Conditions within a rule are AND-ed together. + * @export + * @interface RuleCondition + */ +export interface RuleCondition { + /** + * The input context field this condition tests. Allowed values depend on the rule set type (trigger vs. outcome) and the step\'s connector/operation. + * @type {string} + * @memberof RuleCondition + */ + 'field': string; + /** + * + * @type {RuleConditionOperatorEnum} + * @memberof RuleCondition + */ + 'operator': RuleConditionOperatorEnum; + /** + * The value `field` is compared against, using `operator`. + * @type {string} + * @memberof RuleCondition + */ + 'value': string; +} + + + diff --git a/models/rule-set.ts b/models/rule-set.ts new file mode 100644 index 0000000..f1f4dd3 --- /dev/null +++ b/models/rule-set.ts @@ -0,0 +1,33 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { Rule } from './rule'; + +/** + * An ordered set of rules. Rules are evaluated top to bottom, and the first one that matches wins. + * @export + * @interface RuleSet + */ +export interface RuleSet { + /** + * Ordered rule list, evaluated top to bottom; the first match wins. + * @type {Array} + * @memberof RuleSet + */ + 'rules'?: Array; +} + diff --git a/models/rule.ts b/models/rule.ts new file mode 100644 index 0000000..08ba97e --- /dev/null +++ b/models/rule.ts @@ -0,0 +1,62 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { RuleActionEnum } from './rule-action-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { RuleCondition } from './rule-condition'; + +/** + * A single rule within a rule set. The first rule whose conditions match wins, and its `ruleAction` is applied. + * @export + * @interface Rule + */ +export interface Rule { + /** + * UUID, unique within the rule set. + * @type {string} + * @memberof Rule + */ + 'ruleId'?: string; + /** + * Conditions AND-ed together within this rule. + * @type {Array} + * @memberof Rule + */ + 'conditions'?: Array; + /** + * + * @type {RuleActionEnum} + * @memberof Rule + */ + 'ruleAction'?: RuleActionEnum; + /** + * Zero-based evaluation order among the rule set\'s rules, lowest first. + * @type {number} + * @memberof Rule + */ + 'order'?: number; + /** + * User-facing label for the rule. Cosmetic only — not read by rule evaluation. + * @type {string} + * @memberof Rule + */ + 'title'?: string | null; +} + + + diff --git a/models/screening-input.ts b/models/screening-input.ts new file mode 100644 index 0000000..a4ed195 --- /dev/null +++ b/models/screening-input.ts @@ -0,0 +1,44 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ScreeningOperationEnum } from './screening-operation-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { ScreeningPayload } from './screening-payload'; + +/** + * What the caller wants screened, and how. + * @export + * @interface ScreeningInput + */ +export interface ScreeningInput { + /** + * + * @type {ScreeningOperationEnum} + * @memberof ScreeningInput + */ + 'operation': ScreeningOperationEnum; + /** + * The screening subjects. Up to 100 per request — the provider\'s own batch limit for address screening — so a bulk check does not need one call per address. + * @type {Array} + * @memberof ScreeningInput + */ + 'payload': Array; +} + + + diff --git a/models/screening-operation-enum.ts b/models/screening-operation-enum.ts new file mode 100644 index 0000000..7f8e0e9 --- /dev/null +++ b/models/screening-operation-enum.ts @@ -0,0 +1,32 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * What the caller wants Compliance Orchestrator to do. The target workflow must have a step configured for the operation; the error names the supported set when it does not. - `ADDRESS_SCREENING` — screen an address on its own, before anything exists on-chain. Answers whether the address itself carries risk. - `TRANSACTION_SCREENING` — screen a whole transfer: source and destination, amount and direction, not the destination alone. - `REGISTER_TRANSACTION` — record a confirmed transfer with the provider for ongoing monitoring. Not a gate: it files the transfer so the provider\'s own rules can raise alerts later, which is what feeds its AML model. + * @export + * @enum {string} + */ + +export const ScreeningOperationEnum = { + AddressScreening: 'ADDRESS_SCREENING', + TransactionScreening: 'TRANSACTION_SCREENING', + RegisterTransaction: 'REGISTER_TRANSACTION' +} as const; + +export type ScreeningOperationEnum = typeof ScreeningOperationEnum[keyof typeof ScreeningOperationEnum]; + + + diff --git a/models/screening-outcome-enum.ts b/models/screening-outcome-enum.ts new file mode 100644 index 0000000..7667888 --- /dev/null +++ b/models/screening-outcome-enum.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * An `ACCEPT`/`REJECT` decision — the workflow\'s own outcome, a step\'s outcome, or the result of evaluating a step\'s outcome rules. `null` on a workflow outcome that is not decided yet. + * @export + * @enum {string} + */ + +export const ScreeningOutcomeEnum = { + Accept: 'ACCEPT', + Reject: 'REJECT' +} as const; + +export type ScreeningOutcomeEnum = typeof ScreeningOutcomeEnum[keyof typeof ScreeningOutcomeEnum]; + + + diff --git a/models/screening-payload.ts b/models/screening-payload.ts new file mode 100644 index 0000000..3fa42f8 --- /dev/null +++ b/models/screening-payload.ts @@ -0,0 +1,95 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { TransferDirectionEnum } from './transfer-direction-enum'; + +/** + * The subject of the screening. Which fields are required depends on the operation and on the connectors configured on the workflow\'s step. + * @export + * @interface ScreeningPayload + */ +export interface ScreeningPayload { + /** + * The blockchain network of the asset being screened. + * @type {string} + * @memberof ScreeningPayload + */ + 'blockchain'?: string; + /** + * The asset identifier being screened. + * @type {string} + * @memberof ScreeningPayload + */ + 'asset'?: string; + /** + * The amount of the asset involved in the transaction, as a string. + * @type {string} + * @memberof ScreeningPayload + */ + 'assetAmount'?: string; + /** + * The USD value of the transaction amount, as a string. + * @type {string} + * @memberof ScreeningPayload + */ + 'usdValue'?: string; + /** + * Customer-provided reference identifier for tracking. + * @type {string} + * @memberof ScreeningPayload + */ + 'customerRefId'?: string; + /** + * External identifier for the screening (provider-specific). + * @type {string} + * @memberof ScreeningPayload + */ + 'externalId'?: string; + /** + * The blockchain address to screen. Used for the `ADDRESS_SCREENING` operation. + * @type {string} + * @memberof ScreeningPayload + */ + 'address'?: string; + /** + * + * @type {TransferDirectionEnum} + * @memberof ScreeningPayload + */ + 'direction'?: TransferDirectionEnum; + /** + * The source blockchain address(es) of the transaction. + * @type {Array} + * @memberof ScreeningPayload + */ + 'sourceAddress'?: Array; + /** + * The destination blockchain address(es) of the transaction. + * @type {Array} + * @memberof ScreeningPayload + */ + 'destinationAddress'?: Array; + /** + * The transaction hash on the blockchain. + * @type {string} + * @memberof ScreeningPayload + */ + 'txHash'?: string; +} + + + diff --git a/models/step-config.ts b/models/step-config.ts new file mode 100644 index 0000000..deb321d --- /dev/null +++ b/models/step-config.ts @@ -0,0 +1,51 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { StepOperationConfig } from './step-operation-config'; + +/** + * One step in a workflow, backed by a single connector. A connector is the compliance provider integration that does the work — `kyt_trmlabs` is TRM Labs. The step declares which operations that connector handles; a screening naming an operation no step is configured for is refused, and the error reports the supported set. + * @export + * @interface StepConfig + */ +export interface StepConfig { + /** + * Unique within the workflow. + * @type {string} + * @memberof StepConfig + */ + 'stepId': string; + /** + * Identifies which connector this step invokes. + * @type {string} + * @memberof StepConfig + */ + 'connectorId': string; + /** + * One entry per operation the step\'s connector handles. + * @type {Array} + * @memberof StepConfig + */ + 'operations': Array; + /** + * Execution order among the workflow\'s steps, lowest first. + * @type {number} + * @memberof StepConfig + */ + 'order': number; +} + diff --git a/models/step-operation-config.ts b/models/step-operation-config.ts new file mode 100644 index 0000000..a9445af --- /dev/null +++ b/models/step-operation-config.ts @@ -0,0 +1,92 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { RuleSet } from './rule-set'; +// May contain unused imports in some cases +// @ts-ignore +import { ScreeningOperationEnum } from './screening-operation-enum'; + +/** + * Configuration for one operation the step\'s connector handles. The operation arrives on the screening request; the connector decides how to handle it. Two rule sets govern the step, and both are configured here rather than sent per request, so the same call behaves differently across workflows. Trigger rules decide whether the connector runs at all; outcome rules turn the provider\'s response into the step\'s verdict. With neither configured the step runs under the connector\'s own defaults, which for `kyt_trmlabs` are permissive: the screening completes without consulting the provider. The four parameter lists are the contract for writing those rules: a rule naming a field outside `triggerRuleParameters` or `outcomeEvaluationParameters` is rejected. They are derived from the connector registry rather than stored, so a connector gaining a field is reflected here without a migration. + * @export + * @interface StepOperationConfig + */ +export interface StepOperationConfig { + /** + * + * @type {ScreeningOperationEnum} + * @memberof StepOperationConfig + */ + 'operation'?: ScreeningOperationEnum; + /** + * Resolved server-side on every `GetWorkflow` call from the step\'s connector definition for this operation. Read-only: ignored on write. + * @type {Array} + * @memberof StepOperationConfig + */ + 'requiredParameters'?: Array; + /** + * Like `requiredParameters`, but optional inputs to the operation. + * @type {Array} + * @memberof StepOperationConfig + */ + 'optionalParameters'?: Array; + /** + * Fields a condition in `triggerRuleSetStruct` may reference. + * @type {Array} + * @memberof StepOperationConfig + */ + 'triggerRuleParameters'?: Array; + /** + * Provider response fields a condition in `outcomeRuleSetStruct` may reference. + * @type {Array} + * @memberof StepOperationConfig + */ + 'outcomeEvaluationParameters'?: Array; + /** + * Additional provider response fields returned with the result; not usable in `outcomeRuleSetStruct` conditions. + * @type {Array} + * @memberof StepOperationConfig + */ + 'outcomeMetaParameters'?: Array; + /** + * + * @type {RuleSet} + * @memberof StepOperationConfig + */ + 'triggerRuleSetStruct'?: RuleSet; + /** + * The tenant\'s trigger rules, as a JSON-encoded string. Set for steps whose rules are still defined as a legacy screening policy rather than natively in Compliance Orchestrator, and refreshed on every read. Mutually exclusive with `triggerRuleSetStruct`. + * @type {string} + * @memberof StepOperationConfig + */ + 'triggerRuleSetJson'?: string | null; + /** + * + * @type {RuleSet} + * @memberof StepOperationConfig + */ + 'outcomeRuleSetStruct'?: RuleSet; + /** + * The tenant\'s outcome rules, as a JSON-encoded string. Set for steps whose rules are still defined as a legacy screening policy rather than natively in Compliance Orchestrator, and refreshed on every read. Mutually exclusive with `outcomeRuleSetStruct`. + * @type {string} + * @memberof StepOperationConfig + */ + 'outcomeRuleSetJson'?: string | null; +} + + + diff --git a/models/step-result-metadata.ts b/models/step-result-metadata.ts new file mode 100644 index 0000000..4e3dcdd --- /dev/null +++ b/models/step-result-metadata.ts @@ -0,0 +1,26 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * Connector-specific data, keyed by the connector\'s configured outcomeMetaParameters for this operation. + * @export + * @interface StepResultMetadata + */ +export interface StepResultMetadata { + [key: string]: any; + +} + diff --git a/models/step-result.ts b/models/step-result.ts new file mode 100644 index 0000000..be9e0a0 --- /dev/null +++ b/models/step-result.ts @@ -0,0 +1,137 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { BypassReasonEnum } from './bypass-reason-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { ConnectorStatusEnum } from './connector-status-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { ConnectorVerdictEnum } from './connector-verdict-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { RiskLevelEnum } from './risk-level-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { Rule } from './rule'; +// May contain unused imports in some cases +// @ts-ignore +import { ScreeningOperationEnum } from './screening-operation-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { ScreeningOutcomeEnum } from './screening-outcome-enum'; +// May contain unused imports in some cases +// @ts-ignore +import { StepResultMetadata } from './step-result-metadata'; +// May contain unused imports in some cases +// @ts-ignore +import { TriggerRuleOutcomeEnum } from './trigger-rule-outcome-enum'; + +/** + * The result of one workflow step\'s execution during a screening. Carries the step\'s outcome next to the two rule evaluations that produced it — which trigger rule decided the connector should run, and which outcome rule read the response — plus the provider\'s own verdict and risk level. A step that did not screen carries a `bypassReason` instead of a risk level. Only `PASSED_BY_POLICY` means the policy deliberately let it through; every other reason means the check could not be performed, and the step is rejected rather than passed. A bypass is not an approval. + * @export + * @interface StepResult + */ +export interface StepResult { + /** + * Identifier of this step within the workflow. + * @type {string} + * @memberof StepResult + */ + 'stepId': string; + /** + * Identifier of the connector that executed this step. + * @type {string} + * @memberof StepResult + */ + 'connectorId': string; + /** + * + * @type {ScreeningOperationEnum} + * @memberof StepResult + */ + 'operation': ScreeningOperationEnum; + /** + * + * @type {TriggerRuleOutcomeEnum} + * @memberof StepResult + */ + 'triggerRuleOutcome': TriggerRuleOutcomeEnum; + /** + * + * @type {ScreeningOutcomeEnum} + * @memberof StepResult + */ + 'outcomeRuleOutcome': ScreeningOutcomeEnum | null; + /** + * + * @type {ScreeningOutcomeEnum} + * @memberof StepResult + */ + 'outcome': ScreeningOutcomeEnum | null; + /** + * + * @type {Rule} + * @memberof StepResult + */ + 'matchedTriggerRule'?: Rule | null; + /** + * + * @type {Rule} + * @memberof StepResult + */ + 'matchedOutcomeRule'?: Rule | null; + /** + * + * @type {StepResultMetadata} + * @memberof StepResult + */ + 'metadata'?: StepResultMetadata; + /** + * The connector-side screening ticket identifier. + * @type {string} + * @memberof StepResult + */ + 'ticketId'?: string | null; + /** + * + * @type {ConnectorVerdictEnum} + * @memberof StepResult + */ + 'verdict'?: ConnectorVerdictEnum | null; + /** + * + * @type {ConnectorStatusEnum} + * @memberof StepResult + */ + 'connectorStatus'?: ConnectorStatusEnum | null; + /** + * + * @type {BypassReasonEnum} + * @memberof StepResult + */ + 'bypassReason'?: BypassReasonEnum | null; + /** + * + * @type {RiskLevelEnum} + * @memberof StepResult + */ + 'risk'?: RiskLevelEnum | null; +} + + + diff --git a/models/transfer-direction-enum.ts b/models/transfer-direction-enum.ts new file mode 100644 index 0000000..0b5db8d --- /dev/null +++ b/models/transfer-direction-enum.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * A transfer\'s direction relative to the workspace. Set for `TRANSACTION_SCREENING` and `REGISTER_TRANSACTION`; it has no meaning for `ADDRESS_SCREENING`, which screens an address on its own. + * @export + * @enum {string} + */ + +export const TransferDirectionEnum = { + Inbound: 'INBOUND', + Outbound: 'OUTBOUND' +} as const; + +export type TransferDirectionEnum = typeof TransferDirectionEnum[keyof typeof TransferDirectionEnum]; + + + diff --git a/models/trigger-rule-outcome-enum.ts b/models/trigger-rule-outcome-enum.ts new file mode 100644 index 0000000..9df5b84 --- /dev/null +++ b/models/trigger-rule-outcome-enum.ts @@ -0,0 +1,32 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * Whether the step\'s trigger rules caused its connector to run. This is a decision about running, not about risk — `ACCEPT`/`REJECT` belong to the outcome fields. - `EXECUTE` — a rule called for screening, so the connector ran - `PASS` — a rule let the subject through without screening - `FAIL` — the step could not run; see `bypassReason` + * @export + * @enum {string} + */ + +export const TriggerRuleOutcomeEnum = { + Execute: 'EXECUTE', + Pass: 'PASS', + Fail: 'FAIL' +} as const; + +export type TriggerRuleOutcomeEnum = typeof TriggerRuleOutcomeEnum[keyof typeof TriggerRuleOutcomeEnum]; + + + diff --git a/models/trigger-screening-request.ts b/models/trigger-screening-request.ts new file mode 100644 index 0000000..5eb9290 --- /dev/null +++ b/models/trigger-screening-request.ts @@ -0,0 +1,39 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ScreeningInput } from './screening-input'; + +/** + * Request to trigger a screening against an active workflow. + * @export + * @interface TriggerScreeningRequest + */ +export interface TriggerScreeningRequest { + /** + * The workflow to screen against. Must be in `ACTIVE` status. + * @type {string} + * @memberof TriggerScreeningRequest + */ + 'workflowId': string; + /** + * + * @type {ScreeningInput} + * @memberof TriggerScreeningRequest + */ + 'input': ScreeningInput; +} + diff --git a/models/trigger-screening-response.ts b/models/trigger-screening-response.ts new file mode 100644 index 0000000..ab45350 --- /dev/null +++ b/models/trigger-screening-response.ts @@ -0,0 +1,41 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { ComplianceScreeningStatusEnum } from './compliance-screening-status-enum'; + +/** + * Acknowledgement that a screening was accepted and is now running. + * @export + * @interface TriggerScreeningResponse + */ +export interface TriggerScreeningResponse { + /** + * Identifier of the screening that was created. Poll `GET /v1/compliance/orchestrator/screenings/{screeningId}` with it for the verdict. + * @type {string} + * @memberof TriggerScreeningResponse + */ + 'screeningId': string; + /** + * + * @type {ComplianceScreeningStatusEnum} + * @memberof TriggerScreeningResponse + */ + 'screeningStatus': ComplianceScreeningStatusEnum; +} + + + diff --git a/models/update-webhook-oauth-request.ts b/models/update-webhook-oauth-request.ts index 7b02cfa..c2c4c61 100644 --- a/models/update-webhook-oauth-request.ts +++ b/models/update-webhook-oauth-request.ts @@ -24,7 +24,7 @@ import { WebhookOauthCustomHeadersUpdate } from './webhook-oauth-custom-headers- import { WebhookOauthCustomJwtClaimsUpdate } from './webhook-oauth-custom-jwt-claims-update'; /** - * A partial update. Every field is optional and an omitted field is left as it is, so `{ \"clientSecret\": \"new-secret\" }` rotates the secret and changes nothing else. A rotation applies to every webhook referencing these credentials. The three custom maps merge: a key with a value is upserted, a key with `null` is deleted, a key you leave out is untouched. Because `null` inside a map means delete, none of the three is nullable as a whole — `customJwtClaims: null` and friends are rejected with a `400`. Clear a map by naming each key with a `null` value. `mtlsClientSignedCert` is a scalar, so `null` there does remove it. + * A partial update. Every field is optional and an omitted field is left as it is, so `{ \"clientSecret\": \"new-secret\" }` rotates the secret and changes nothing else. A rotation applies to every webhook referencing these credentials. The three custom maps merge. A key with a value is upserted, a key with `null` is deleted, a key you leave out is untouched, and the whole field set to `null` clears the map. There is no ambiguity between the two uses of `null` — one names an entry, the other names the field. `mtlsClientSignedCert` is a scalar, so `null` there removes it. * @export * @interface UpdateWebhookOauthRequest */ diff --git a/models/update-webhook-request.ts b/models/update-webhook-request.ts index cbced6a..f16a5a1 100644 --- a/models/update-webhook-request.ts +++ b/models/update-webhook-request.ts @@ -60,7 +60,7 @@ export interface UpdateWebhookRequest { */ 'mtls'?: WebhookMtls | null; /** - * The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. + * The id of the OAuth credentials this webhook authenticates with, from `/v1/webhooks_settings/oauth`. Several webhooks may share one credential set, so rotating its client secret covers all of them at once. Send `null` to stop using OAuth for this webhook. Cannot be combined with an `authorization` custom header on the same webhook; a request that would leave both set is rejected. * @type {string} * @memberof UpdateWebhookRequest */ diff --git a/models/update-workflow-status-request.ts b/models/update-workflow-status-request.ts new file mode 100644 index 0000000..4816dcd --- /dev/null +++ b/models/update-workflow-status-request.ts @@ -0,0 +1,35 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { WorkflowStatusEnum } from './workflow-status-enum'; + +/** + * Request to change a workflow\'s status. + * @export + * @interface UpdateWorkflowStatusRequest + */ +export interface UpdateWorkflowStatusRequest { + /** + * + * @type {WorkflowStatusEnum} + * @memberof UpdateWorkflowStatusRequest + */ + 'status': WorkflowStatusEnum; +} + + + diff --git a/models/update-workflow-status-response.ts b/models/update-workflow-status-response.ts new file mode 100644 index 0000000..0940d23 --- /dev/null +++ b/models/update-workflow-status-response.ts @@ -0,0 +1,41 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +// May contain unused imports in some cases +// @ts-ignore +import { WorkflowStatusEnum } from './workflow-status-enum'; + +/** + * The workflow\'s status after the update. + * @export + * @interface UpdateWorkflowStatusResponse + */ +export interface UpdateWorkflowStatusResponse { + /** + * Unique identifier of the workflow. + * @type {string} + * @memberof UpdateWorkflowStatusResponse + */ + 'workflowId': string; + /** + * + * @type {WorkflowStatusEnum} + * @memberof UpdateWorkflowStatusResponse + */ + 'status': WorkflowStatusEnum; +} + + + diff --git a/models/webhook-custom-headers-update.ts b/models/webhook-custom-headers-update.ts index 36b0529..f4e25ea 100644 --- a/models/webhook-custom-headers-update.ts +++ b/models/webhook-custom-headers-update.ts @@ -15,7 +15,7 @@ /** - * A delta applied to the delivery headers. A header with a value is added or replaced, a header with `null` is deleted, and one you leave out is untouched. A value replaces what is stored under that name rather than adding to it, so an array is the complete new set of lines for that header. Send `customHeaders: null` to clear every header in one call. That does not collide with a `null` value on a name: one names the header to delete, the other names the whole field. Names are case-insensitive, so a `null` under one casing deletes a header stored under another. Same rules as on create: string or non-empty array, `Cookie` string-only, 10 lines total and under 16 KB in the resulting set, the same reserved names, and values write-only. Entries set to `null` do not count towards the limit. + * A delta applied to the delivery headers. A header with a value is added or replaced, a header with `null` is deleted, and one you leave out is untouched. A value replaces what is stored under that name rather than adding to it, so an array is the complete new set of lines for that header. Send `customHeaders: null` to clear every header in one call. That does not collide with a `null` value on a name: one names the header to delete, the other names the whole field. Names are case-insensitive, so a `null` under one casing deletes a header stored under another. Same rules as on create: string or non-empty array, `Cookie` and `Authorization` string-only, 10 headers and under 16 KB in the resulting set, the same reserved names, and values write-only. Entries set to `null` do not count towards the limit. `Authorization` cannot be combined with `webhookOauthId`, though one request may add it and detach the credentials together. * @export * @interface WebhookCustomHeadersUpdate */ diff --git a/models/webhook-custom-headers.ts b/models/webhook-custom-headers.ts index 010a259..8f3eea8 100644 --- a/models/webhook-custom-headers.ts +++ b/models/webhook-custom-headers.ts @@ -15,7 +15,7 @@ /** - * Custom HTTP headers attached to every notification delivered by this webhook. A value is a string, sent as one header line, or an array of strings, sent as one header line per element under the same name. `Cookie` accepts only a string. An empty array is rejected — leave the name out instead. At most 10 header lines in total, counted per array element rather than per name. Names must be valid HTTP header tokens, are case-insensitive, and are at most 128 characters. A value may be empty and has no length limit of its own; the whole object must be under 16 KB when serialized as UTF-8. A value that large may still be refused by your own endpoint, since web servers commonly cap the whole request header block at around 8 KB. Reserved names: `Host`, `Content-Type`, `Content-Length`, `Transfer-Encoding`, `Connection`, `User-Agent`, `Accept`, `Accept-Encoding`, `Fireblocks-Signature`, `Fireblocks-Webhook-Signature`. When this webhook has OAuth credentials attached, an `Authorization` value you set and the bearer token are both sent as separate header lines. Values are write-only; responses return only the header names. + * Custom HTTP headers attached to every notification delivered by this webhook. A value is a string, sent as one header line, or an array of strings, sent as one header line per element under the same name. `Cookie` and `Authorization` accept only a string. An empty array is rejected — leave the name out instead. At most 10 headers, counted by name — an array value counts once, however many lines it sends. Names must be valid HTTP header tokens, are case-insensitive, and are at most 128 characters. A value may be empty and has no length limit of its own; the whole object must be under 16 KB when serialized as UTF-8. A value that large may still be refused by your own endpoint, since web servers commonly cap the whole request header block at around 8 KB. Reserved names: `Host`, `Content-Type`, `Content-Length`, `Transfer-Encoding`, `Connection`, `User-Agent`, `Accept`, `Accept-Encoding`, `Fireblocks-Signature`, `Fireblocks-Webhook-Signature`. `Authorization` may be set, but not together with `webhookOauthId`; a request that would leave both set is rejected. Values are write-only; responses return only the header names. * @export * @interface WebhookCustomHeaders */ diff --git a/models/webhook-mtls-csr-response.ts b/models/webhook-mtls-csr-response.ts index 13b4616..6f8775b 100644 --- a/models/webhook-mtls-csr-response.ts +++ b/models/webhook-mtls-csr-response.ts @@ -13,6 +13,9 @@ */ +// May contain unused imports in some cases +// @ts-ignore +import { WebhookMtlsKeyAlgorithm } from './webhook-mtls-key-algorithm'; /** * mTLS Certificate Signing Request response @@ -26,5 +29,13 @@ export interface WebhookMtlsCsrResponse { * @memberof WebhookMtlsCsrResponse */ 'csr': string; + /** + * + * @type {WebhookMtlsKeyAlgorithm} + * @memberof WebhookMtlsCsrResponse + */ + 'keyAlgorithm': WebhookMtlsKeyAlgorithm; } + + diff --git a/models/webhook-mtls-key-algorithm.ts b/models/webhook-mtls-key-algorithm.ts new file mode 100644 index 0000000..a26c2f7 --- /dev/null +++ b/models/webhook-mtls-key-algorithm.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * Algorithm of the Fireblocks-held mTLS private key. A workspace may hold one key of each type, so a CSR is always returned for the type requested, and the type is echoed back on the response. ECDSA keys are smaller and quicker to issue, but the certificate authority signing the request has to accept an EC subject key, which some do not by default. + * @export + * @enum {string} + */ + +export const WebhookMtlsKeyAlgorithm = { + Rsa: 'RSA', + Ecdsa: 'ECDSA' +} as const; + +export type WebhookMtlsKeyAlgorithm = typeof WebhookMtlsKeyAlgorithm[keyof typeof WebhookMtlsKeyAlgorithm]; + + + diff --git a/models/webhook-oauth-credentials.ts b/models/webhook-oauth-credentials.ts index 844966a..dd15258 100644 --- a/models/webhook-oauth-credentials.ts +++ b/models/webhook-oauth-credentials.ts @@ -15,7 +15,7 @@ /** - * A stored OAuth 2.0 client credential set, referenced by webhooks through their `webhookOauthId`. When a webhook references one, the dispatcher fetches a bearer token from `url` before each delivery and attaches it as `Authorization: Bearer {token}`. Secret material is never returned: `clientSecret` is absent from this schema entirely, and the `customJwtClaims`, `customBodyParams` and `customHeaders` fields are reduced to their names, without the configured values. + * A stored OAuth 2.0 client credential set, referenced by webhooks through their `webhookOauthId`. Deliveries for a webhook that references one carry `Authorization: Bearer {token}`, using a token fetched from `url` and cached until it expires, so your authorization server sees far fewer token requests than deliveries. Secret material is never returned: `clientSecret` is absent from this schema entirely, and the `customJwtClaims`, `customBodyParams` and `customHeaders` fields are reduced to their names, without the configured values. * @export * @interface WebhookOauthCredentials */ diff --git a/models/webhook-oauth-custom-headers-update.ts b/models/webhook-oauth-custom-headers-update.ts index 08a9d9f..244d99d 100644 --- a/models/webhook-oauth-custom-headers-update.ts +++ b/models/webhook-oauth-custom-headers-update.ts @@ -15,7 +15,7 @@ /** - * A delta applied to the token request headers — not the webhook delivery headers. A header with a value is added or replaced, a header with `null` is deleted, and one you leave out is untouched. So `{ \"X-Api-Key\": \"new-key\", \"X-Tenant\": null }` rotates `X-Api-Key`, drops `X-Tenant`, and changes nothing else. Send `customHeaders: null` to clear every header in one call. That does not collide with a `null` value on a name: one names the header to delete, the other names the whole field. Names are case-insensitive, so a `null` under one casing deletes a header stored under another, and names are stored and returned lowercased. Same rules as on create: string values only, `Content-Type`/`Content-Length`/`Host` reserved, resulting set under 16 KB, values write-only. + * A delta applied to the token request headers — not the webhook delivery headers. A header with a value is added or replaced, a header with `null` is deleted, and one you leave out is untouched. So `{ \"X-Api-Key\": \"new-key\", \"X-Tenant\": null }` rotates `X-Api-Key`, drops `X-Tenant`, and changes nothing else. Send `customHeaders: null` to clear every header in one call. That does not collide with a `null` value on a name: one names the header to delete, the other names the whole field. Names are case-insensitive, so a `null` under one casing deletes a header stored under another, and names are stored and returned lowercased. Same rules as on create: string values only, `Content-Type`, `Content-Length` and `Host` reserved, `Authorization` only with `client_secret_post` or `client_secret_jwt`, resulting set under 16 KB, values write-only. * @export * @interface WebhookOauthCustomHeadersUpdate */ diff --git a/models/webhook-oauth-custom-headers.ts b/models/webhook-oauth-custom-headers.ts index bf1f130..1ab8aad 100644 --- a/models/webhook-oauth-custom-headers.ts +++ b/models/webhook-oauth-custom-headers.ts @@ -15,7 +15,7 @@ /** - * Extra HTTP headers for **the token request to your authorization server** — not for the webhook delivery, which has its own separate `customHeaders`. A gateway API key is the usual case. Applies to every authentication method. Values must be strings; an empty string is allowed. Names are matched case-insensitively, so two names differing only in case are a duplicate. Names are stored and returned lowercased, so `X-Api-Key` comes back as `x-api-key`. `Content-Type`, `Content-Length` and `Host` are set by Fireblocks and cannot be overridden. `Authorization` is not sent when `authMethod` is `client_secret_basic`. Values have no length limit of their own; the whole object must be under 16 KB when serialized as UTF-8. Values are write-only; responses return only the header names. On update this merges name by name rather than replacing — see `WebhookOauthCustomHeadersUpdate`. + * Extra HTTP headers for **the token request to your authorization server** — not for the webhook delivery, which has its own separate `customHeaders`. A gateway API key is the usual case. Values must be strings; an empty string is allowed. Names are matched case-insensitively, so two names differing only in case are a duplicate. Names are stored and returned lowercased, so `X-Api-Key` comes back as `x-api-key`. `Content-Type`, `Content-Length` and `Host` are set by Fireblocks and cannot be overridden. `Authorization` can be set with `client_secret_post` or `client_secret_jwt`, which send the credentials in the body — useful when your token endpoint sits behind a gateway. It is rejected with `client_secret_basic`, which sends the credentials in that header. Values have no length limit of their own; the whole object must be under 16 KB when serialized as UTF-8. Values are write-only; responses return only the header names. On update this merges name by name rather than replacing — see `WebhookOauthCustomHeadersUpdate`. * @export * @interface WebhookOauthCustomHeaders */ diff --git a/models/workflow-status-enum.ts b/models/workflow-status-enum.ts new file mode 100644 index 0000000..0d493d3 --- /dev/null +++ b/models/workflow-status-enum.ts @@ -0,0 +1,31 @@ +/* tslint:disable */ +/* eslint-disable */ +/** + * Fireblocks API + * Fireblocks provides a suite of applications to manage digital asset operations and a complete development platform to build your business on the blockchain. - Visit our website for more information: [Fireblocks Website](https://fireblocks.com) - Visit our developer docs: [Fireblocks DevPortal](https://developers.fireblocks.com) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: developers@fireblocks.com + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + + +/** + * A workflow\'s status, which controls whether it can be screened against. - `DRAFT` — the editing state. Rules can be changed while nothing is screening against them, so a screening never runs against a half-finished configuration. - `ACTIVE` — `POST /v1/compliance/orchestrator/screenings` accepts screenings against this workflow. + * @export + * @enum {string} + */ + +export const WorkflowStatusEnum = { + Active: 'ACTIVE', + Draft: 'DRAFT' +} as const; + +export type WorkflowStatusEnum = typeof WorkflowStatusEnum[keyof typeof WorkflowStatusEnum]; + + + diff --git a/package-lock.json b/package-lock.json index d2f4f6d..206dbc5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@fireblocks/ts-sdk", - "version": "31.0.0", + "version": "0.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@fireblocks/ts-sdk", - "version": "31.0.0", + "version": "0.0.0", "license": "MIT License", "dependencies": { "axios": "^1.15.2", @@ -874,9 +874,9 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.5.5", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz", + "integrity": "sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==", "dev": true, "license": "MIT" }, @@ -1159,9 +1159,9 @@ "license": "MIT" }, "node_modules/axios": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.19.0.tgz", - "integrity": "sha512-ht/iuYZXEjFxLH/Hkezgd7m6JKlHHXEUSneaDz8uZe1Gj5QZtCnpyDsckvAiEnT89OEbCLmnte4R4sn7P0EKFw==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.20.0.tgz", + "integrity": "sha512-r8aOh8j9cGKpgQAqpzrUHnSIc6a59Y3Xf/cv8sy1DrHCkZHzQGEuoq1tARk6qSyDdtQGSDgpb9kFlruzPvrgwg==", "license": "MIT", "dependencies": { "follow-redirects": "^1.16.0", @@ -1294,9 +1294,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.11.19", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.19.tgz", - "integrity": "sha512-Grytf1xOxOEMTGRwx6rLGKkTabd4vMg3VrKdj/7joCmV0qgh4QwMMO6xh34YEXQqirAuUdgQGa5orJQQ+69RBw==", + "version": "2.11.20", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.20.tgz", + "integrity": "sha512-H0ulySigv6icDJ1F7SjtdCD6PrhTpdYCmP0CactWy1+ekh0AFd0o1Wn5T8b+hnTmdBx19u9yhL6wvCylXMY7zw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -1715,9 +1715,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.415", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.415.tgz", - "integrity": "sha512-958V+Kbhtgz+SxXeEVKBjrlKRBIDAYvUJfwhjxMZ5S6ut9jAl7l9ZKBkBrvjyjZE36PabLUo2L8kEeV5O4vgJg==", + "version": "1.5.420", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.420.tgz", + "integrity": "sha512-2yD6XreGusOfNV+dUcvipJEXc3n/n7fgr7996aszTG+YY5E4mqM4tOq/3uhP129cazL9YHbVWSpc79ePotWtPA==", "dev": true, "license": "ISC" }, @@ -3371,9 +3371,9 @@ "license": "MIT" }, "node_modules/node-releases": { - "version": "2.0.53", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.53.tgz", - "integrity": "sha512-D9UOmYG3UH1V+ENW56t5QXBwJw1YEY18ruVeus89Rw+SyIgjPkCO84bRzO3uNIYosJbNwiabWVn48o3uJLjxFQ==", + "version": "2.0.54", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.54.tgz", + "integrity": "sha512-YHs7BmmcsdAI5Ozuf8JZo6PT0mv2GIWC9vMfvUC3dp65M8hn7Ux8CPL+2oBI7juNuj9d0ndhTcznq2ODBps9cQ==", "dev": true, "license": "MIT", "engines": { @@ -4078,9 +4078,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.1.tgz", - "integrity": "sha512-ZZ61DsRsOnakl74HAmp3oSN4aXUmEWXf+i/yv0h7tIBfICc3VdrFErQKUUKPgu3AMsTUMbcongALEN4l6GSUrQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.2.tgz", + "integrity": "sha512-UQ+MSxlhRm1bzjhU+DcuXfjFO1FzNtqhK5+9Yvlp90ItDLk5vT932A0rFu619nf7RVS+Y/VeaUW1jaRDqZ8VJw==", "dev": true, "funding": [ { diff --git a/package.json b/package.json index f88aea5..584251d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@fireblocks/ts-sdk", - "version": "31.0.0", + "version": "0.0.0", "description": "OpenAPI client for @fireblocks/ts-sdk", "author": "Fireblocks SDK Generator", "repository": { diff --git a/tests/client.spec.ts b/tests/client.spec.ts index 254d957..20f37ff 100644 --- a/tests/client.spec.ts +++ b/tests/client.spec.ts @@ -17,6 +17,7 @@ AuditLogsApi, BlockchainLinkBetaApi, BlockchainsAssetsApi, ComplianceApi, +ComplianceOrchestratorBetaApi, ComplianceScreeningConfigurationApi, ConnectedAccountsBetaApi, ConsoleUserApi, @@ -77,6 +78,7 @@ let mockAuditLogsApi: jest.Mock; let mockBlockchainLinkBetaApi: jest.Mock; let mockBlockchainsAssetsApi: jest.Mock; let mockComplianceApi: jest.Mock; +let mockComplianceOrchestratorBetaApi: jest.Mock; let mockComplianceScreeningConfigurationApi: jest.Mock; let mockConnectedAccountsBetaApi: jest.Mock; let mockConsoleUserApi: jest.Mock; @@ -134,6 +136,7 @@ jest.mock('../api', () => { mockBlockchainLinkBetaApi = jest.fn(); mockBlockchainsAssetsApi = jest.fn(); mockComplianceApi = jest.fn(); + mockComplianceOrchestratorBetaApi = jest.fn(); mockComplianceScreeningConfigurationApi = jest.fn(); mockConnectedAccountsBetaApi = jest.fn(); mockConsoleUserApi = jest.fn(); @@ -192,6 +195,7 @@ jest.mock('../api', () => { BlockchainLinkBetaApi: mockBlockchainLinkBetaApi, BlockchainsAssetsApi: mockBlockchainsAssetsApi, ComplianceApi: mockComplianceApi, + ComplianceOrchestratorBetaApi: mockComplianceOrchestratorBetaApi, ComplianceScreeningConfigurationApi: mockComplianceScreeningConfigurationApi, ConnectedAccountsBetaApi: mockConnectedAccountsBetaApi, ConsoleUserApi: mockConsoleUserApi, @@ -344,6 +348,10 @@ describe("Fireblocks Client Tests", () => { expect(fireblocks.compliance).toBeInstanceOf(ComplianceApi); expect(mockComplianceApi).toHaveBeenCalledWith(expectedConfig, undefined, mockAxios); }); + it('Should return ComplianceOrchestratorBetaApi', async () => { + expect(fireblocks.complianceOrchestratorBeta).toBeInstanceOf(ComplianceOrchestratorBetaApi); + expect(mockComplianceOrchestratorBetaApi).toHaveBeenCalledWith(expectedConfig, undefined, mockAxios); + }); it('Should return ComplianceScreeningConfigurationApi', async () => { expect(fireblocks.complianceScreeningConfiguration).toBeInstanceOf(ComplianceScreeningConfigurationApi); expect(mockComplianceScreeningConfigurationApi).toHaveBeenCalledWith(expectedConfig, undefined, mockAxios);