From 75bfabda46de3d810465d32339882ee664fa654b Mon Sep 17 00:00:00 2001 From: fireblocks_dx_team Date: Thu, 13 Nov 2025 11:43:41 +0000 Subject: [PATCH] Generated SDK #5834 --- .openapi-generator/FILES | 318 +- README.md | 118 +- api/openapi.yaml | 7685 ++++++++++++++--- build.gradle | 2 +- docs/AccountBasedAccessProviderDetails.md | 15 + docs/AccountConfig.md | 5 +- docs/AchAccountType.md | 13 + docs/AchAddress.md | 17 + docs/AchDestination.md | 22 + docs/AlertExposureTypeEnum.md | 13 + docs/AlertLevelEnum.md | 17 + docs/AmlAlert.md | 22 + docs/AmlMatchedRule.md | 16 + docs/AmlResult.md | 17 + docs/AmlStatusEnum.md | 19 + docs/AmountConfig.md | 14 + docs/AmountConfigCurrency.md | 14 + docs/AmountOverTimeConfig.md | 14 +- docs/AmountRange.md | 6 +- docs/AmountRangeMinMax.md | 15 + ...meConfigRange.md => AmountRangeMinMax2.md} | 6 +- docs/ApproversConfig.md | 2 +- docs/BlockchainsAssetsApi.md | 2 +- docs/ComplianceResultFullPayload.md | 2 + docs/ComplianceResultStatusesEnum.md | 50 +- docs/ComplianceResults.md | 2 + docs/ComplianceScreeningResult.md | 65 +- docs/ComplianceScreeningResultFullPayload.md | 37 +- docs/DAppAddressConfig.md | 17 + docs/DestinationConfig.md | 7 +- docs/DirectAccessProviderDetails.md | 15 + docs/ExecutionStepType.md | 2 + docs/FeePropertiesDetails.md | 34 + docs/FiatDestination.md | 100 + docs/IbanAddress.md | 14 + docs/IbanDestination.md | 22 + docs/InitiatorConfig.md | 2 +- docs/LimitExecutionRequestDetails.md | 16 +- docs/LimitExecutionResponseDetails.md | 16 +- docs/LimitTypeDetails.md | 23 + docs/LocalBankTransferAfricaAddress.md | 16 + docs/LocalBankTransferAfricaDestination.md | 22 + docs/MarketExecutionRequestDetails.md | 12 +- docs/MarketExecutionResponseDetails.md | 12 +- docs/MarketTypeDetails.md | 21 + docs/MobileMoneyAddress.md | 29 + docs/MobileMoneyDestination.md | 22 + docs/OrderSide.md | 15 + docs/OrderStatus.md | 2 + docs/PaymentInstructions.md | 12 +- docs/PaymentInstructionsDetails.md | 13 + docs/PixAddress.md | 29 + docs/PixDestination.md | 22 + docs/PolicyCurrency.md | 15 + docs/PolicyOperator.md | 2 - docs/PolicyRule.md | 8 +- docs/PolicyTag.md | 14 + docs/PolicyVerdictActionEnum.md | 29 + docs/PolicyVerdictActionEnum2.md | 27 + docs/QuoteExecutionResponseDetails.md | 16 +- docs/QuoteExecutionTypeDetails.md | 23 + ...QuoteExecutionWithRequoteRequestDetails.md | 2 +- ...onWithRequoteRequestDetailsAllOfReQuote.md | 37 - ...uoteExecutionWithRequoteResponseDetails.md | 2 +- ...nWithRequoteResponseDetailsAllOfReQuote.md | 37 - docs/QuotePropertiesDetails.md | 42 + docs/ReQuoteDetails.md | 13 + docs/ReQuoteDetailsReQuote.md | 37 + docs/RegisterNewAssetRequest.md | 2 +- docs/SEPAAddress.md | 20 + docs/SEPADestination.md | 22 + docs/ScreeningAlertExposureTypeEnum.md | 13 + docs/ScreeningAmlAlert.md | 22 + docs/ScreeningAmlMatchedRule.md | 16 + docs/ScreeningAmlResult.md | 17 + docs/ScreeningMetadataConfig.md | 2 +- docs/ScreeningRiskLevelEnum.md | 21 + docs/ScreeningTRLinkAmount.md | 24 + docs/ScreeningTRLinkMissingTrmDecision.md | 36 + docs/ScreeningTRLinkMissingTrmRule.md | 33 + docs/ScreeningTRLinkPostScreeningRule.md | 35 + docs/ScreeningTRLinkPrescreeningRule.md | 31 + docs/ScreeningTRLinkRuleBase.md | 30 + docs/ScreeningTravelRuleMatchedRule.md | 19 + docs/ScreeningTravelRulePrescreeningRule.md | 30 + docs/ScreeningTravelRuleResult.md | 18 + docs/ScreeningVerdictEnum.md | 25 + docs/SourceConfig.md | 27 + docs/SpeiAddress.md | 15 + docs/SpeiDestination.md | 22 + docs/SwiftAddress.md | 15 + docs/SwiftDestination.md | 22 + docs/TRLinkAmount.md | 24 + docs/TRLinkMissingTrmAction.md | 17 + docs/TRLinkMissingTrmActionEnum.md | 17 + docs/TRLinkMissingTrmDecision.md | 36 + docs/TRLinkMissingTrmRule.md | 33 + docs/TRLinkPostScreeningRule.md | 35 + docs/TRLinkPreScreeningAction.md | 13 + docs/TRLinkPreScreeningActionEnum.md | 13 + docs/TRLinkPreScreeningRule.md | 31 + docs/TRLinkProviderResult.md | 14 + docs/TRLinkProviderResultWithRule.md | 15 + docs/TRLinkProviderResultWithRule2.md | 15 + docs/TRLinkRegistrationResult.md | 23 + docs/TRLinkRegistrationResultFullPayload.md | 23 + docs/TRLinkRegistrationStatus.md | 19 + docs/TRLinkRegistrationStatusEnum.md | 19 + docs/TRLinkResult.md | 39 + docs/TRLinkResultFullPayload.md | 39 + docs/TRLinkRuleBase.md | 30 + docs/TRLinkTrmScreeningStatus.md | 17 + docs/TRLinkTrmScreeningStatusEnum.md | 17 + docs/TRLinkVerdict.md | 17 + docs/TRLinkVerdictEnum.md | 17 + docs/Tag.md | 3 + docs/TagAttachmentOperationAction.md | 13 + docs/TransactionDirection.md | 13 + docs/TransactionOperationEnum.md | 37 + docs/TransactionsApi.md | 8 +- docs/TransferPeerSubTypeEnum.md | 17 + docs/TransferPeerTypeEnum.md | 37 + docs/TravelRuleActionEnum.md | 15 + docs/TravelRuleDirectionEnum.md | 13 + docs/TravelRuleMatchedRule.md | 19 + docs/TravelRulePrescreeningRule.md | 30 + docs/TravelRuleResult.md | 18 + docs/TravelRuleStatusEnum.md | 19 + docs/TravelRuleVerdictEnum.md | 17 + docs/USWireAddress.md | 17 + docs/USWireDestination.md | 22 + docs/VaultAccountTagAttachmentOperation.md | 15 + ...ultAccountTagAttachmentPendingOperation.md | 16 + ...ltAccountTagAttachmentRejectedOperation.md | 27 + ...tAccountsTagAttachmentOperationsRequest.md | 15 + ...AccountsTagAttachmentOperationsResponse.md | 15 + docs/VaultsApi.md | 99 +- docs/WebhookMetric.md | 13 + docs/WebhooksV2Api.md | 86 + pom.xml | 2 +- .../com/fireblocks/sdk/Configuration.java | 2 +- .../sdk/api/BlockchainsAssetsApi.java | 2 +- .../fireblocks/sdk/api/TransactionsApi.java | 14 + .../com/fireblocks/sdk/api/VaultsApi.java | 103 +- .../com/fireblocks/sdk/api/WebhooksV2Api.java | 72 + .../AccountBasedAccessProviderDetails.java | 250 + .../fireblocks/sdk/model/AccountConfig.java | 111 +- .../fireblocks/sdk/model/AchAccountType.java | 64 + .../com/fireblocks/sdk/model/AchAddress.java | 312 + .../fireblocks/sdk/model/AchDestination.java | 213 + .../sdk/model/AlertExposureTypeEnum.java | 64 + .../fireblocks/sdk/model/AlertLevelEnum.java | 68 + .../com/fireblocks/sdk/model/AmlAlert.java | 479 + .../fireblocks/sdk/model/AmlMatchedRule.java | 219 + .../com/fireblocks/sdk/model/AmlResult.java | 300 + .../fireblocks/sdk/model/AmlStatusEnum.java | 70 + .../fireblocks/sdk/model/AmountConfig.java | 179 + .../sdk/model/AmountConfigCurrency.java | 139 + .../sdk/model/AmountOverTimeConfig.java | 65 +- .../com/fireblocks/sdk/model/AmountRange.java | 134 +- .../sdk/model/AmountRangeMinMax.java | 177 + ...nfigRange.java => AmountRangeMinMax2.java} | 29 +- .../fireblocks/sdk/model/ApproversConfig.java | 19 +- .../model/ComplianceResultFullPayload.java | 113 +- .../model/ComplianceResultStatusesEnum.java | 52 +- .../sdk/model/ComplianceResults.java | 111 +- .../sdk/model/ComplianceScreeningResult.java | 1266 ++- .../ComplianceScreeningResultFullPayload.java | 1254 ++- .../sdk/model/DAppAddressConfig.java | 326 + .../sdk/model/DestinationConfig.java | 123 +- .../model/DirectAccessProviderDetails.java | 235 + .../sdk/model/ExecutionStepType.java | 4 +- .../sdk/model/FeePropertiesDetails.java | 306 + .../fireblocks/sdk/model/FiatDestination.java | 847 ++ .../com/fireblocks/sdk/model/IbanAddress.java | 183 + .../fireblocks/sdk/model/IbanDestination.java | 213 + .../fireblocks/sdk/model/InitiatorConfig.java | 20 +- .../model/LimitExecutionRequestDetails.java | 310 +- .../model/LimitExecutionResponseDetails.java | 311 +- .../sdk/model/LimitTypeDetails.java | 263 + .../model/LocalBankTransferAfricaAddress.java | 271 + .../LocalBankTransferAfricaDestination.java | 219 + .../model/MarketExecutionRequestDetails.java | 149 +- .../model/MarketExecutionResponseDetails.java | 148 +- .../sdk/model/MarketTypeDetails.java | 178 + .../sdk/model/MobileMoneyAddress.java | 366 + .../sdk/model/MobileMoneyDestination.java | 217 + .../com/fireblocks/sdk/model/OrderSide.java | 66 + .../com/fireblocks/sdk/model/OrderStatus.java | 2 + .../sdk/model/PaymentInstructions.java | 40 +- .../sdk/model/PaymentInstructionsDetails.java | 139 + .../com/fireblocks/sdk/model/PixAddress.java | 345 + .../fireblocks/sdk/model/PixDestination.java | 213 + .../fireblocks/sdk/model/PolicyCurrency.java | 66 + .../fireblocks/sdk/model/PolicyOperator.java | 4 +- .../com/fireblocks/sdk/model/PolicyRule.java | 107 +- .../com/fireblocks/sdk/model/PolicyTag.java | 143 + .../sdk/model/PolicyVerdictActionEnum.java | 80 + .../sdk/model/PolicyVerdictActionEnum2.java | 78 + .../model/QuoteExecutionResponseDetails.java | 309 +- .../sdk/model/QuoteExecutionTypeDetails.java | 262 + ...oteExecutionWithRequoteRequestDetails.java | 13 +- ...teExecutionWithRequoteResponseDetails.java | 13 +- ...ithRequoteResponseDetailsAllOfReQuote.java | 366 - .../sdk/model/QuotePropertiesDetails.java | 712 ++ .../fireblocks/sdk/model/ReQuoteDetails.java | 133 + ...eQuote.java => ReQuoteDetailsReQuote.java} | 75 +- .../sdk/model/RegisterNewAssetRequest.java | 2 +- .../sdk/model/RetryRequoteRequestDetails.java | 2 +- .../com/fireblocks/sdk/model/SEPAAddress.java | 421 + .../fireblocks/sdk/model/SEPADestination.java | 213 + .../model/ScreeningAlertExposureTypeEnum.java | 64 + .../sdk/model/ScreeningAmlAlert.java | 481 ++ .../sdk/model/ScreeningAmlMatchedRule.java | 220 + .../sdk/model/ScreeningAmlResult.java | 302 + .../sdk/model/ScreeningMetadataConfig.java | 19 +- .../sdk/model/ScreeningRiskLevelEnum.java | 72 + .../sdk/model/ScreeningTRLinkAmount.java | 213 + .../ScreeningTRLinkMissingTrmDecision.java | 1053 +++ .../model/ScreeningTRLinkMissingTrmRule.java | 924 ++ .../ScreeningTRLinkPostScreeningRule.java | 1010 +++ .../ScreeningTRLinkPrescreeningRule.java | 843 ++ .../sdk/model/ScreeningTRLinkRuleBase.java | 787 ++ .../model/ScreeningTravelRuleMatchedRule.java | 342 + .../ScreeningTravelRulePrescreeningRule.java | 813 ++ .../sdk/model/ScreeningTravelRuleResult.java | 325 + .../sdk/model/ScreeningVerdictEnum.java | 80 + .../fireblocks/sdk/model/SourceConfig.java | 457 + .../com/fireblocks/sdk/model/SpeiAddress.java | 228 + .../fireblocks/sdk/model/SpeiDestination.java | 213 + .../fireblocks/sdk/model/SwiftAddress.java | 228 + .../sdk/model/SwiftDestination.java | 213 + .../fireblocks/sdk/model/TRLinkAmount.java | 210 + .../sdk/model/TRLinkMissingTrmAction.java | 68 + .../sdk/model/TRLinkMissingTrmActionEnum.java | 68 + .../sdk/model/TRLinkMissingTrmDecision.java | 1041 +++ .../sdk/model/TRLinkMissingTrmRule.java | 914 ++ .../sdk/model/TRLinkPostScreeningRule.java | 997 +++ .../sdk/model/TRLinkPreScreeningAction.java | 64 + .../model/TRLinkPreScreeningActionEnum.java | 64 + .../sdk/model/TRLinkPreScreeningRule.java | 834 ++ .../sdk/model/TRLinkProviderResult.java | 140 + .../model/TRLinkProviderResultWithRule.java | 178 + .../model/TRLinkProviderResultWithRule2.java | 179 + .../sdk/model/TRLinkRegistrationResult.java | 528 ++ .../TRLinkRegistrationResultFullPayload.java | 537 ++ .../sdk/model/TRLinkRegistrationStatus.java | 70 + .../model/TRLinkRegistrationStatusEnum.java | 70 + .../fireblocks/sdk/model/TRLinkResult.java | 725 ++ .../sdk/model/TRLinkResultFullPayload.java | 736 ++ .../fireblocks/sdk/model/TRLinkRuleBase.java | 781 ++ .../sdk/model/TRLinkTrmScreeningStatus.java | 68 + .../model/TRLinkTrmScreeningStatusEnum.java | 68 + .../fireblocks/sdk/model/TRLinkVerdict.java | 68 + .../sdk/model/TRLinkVerdictEnum.java | 68 + .../java/com/fireblocks/sdk/model/Tag.java | 127 +- .../model/TagAttachmentOperationAction.java | 64 + .../sdk/model/TransactionDirection.java | 64 + .../sdk/model/TransactionOperationEnum.java | 88 + .../sdk/model/TransferPeerSubTypeEnum.java | 68 + .../sdk/model/TransferPeerTypeEnum.java | 88 + .../sdk/model/TravelRuleActionEnum.java | 66 + .../sdk/model/TravelRuleDirectionEnum.java | 64 + .../sdk/model/TravelRuleMatchedRule.java | 338 + .../sdk/model/TravelRulePrescreeningRule.java | 804 ++ .../sdk/model/TravelRuleResult.java | 322 + .../sdk/model/TravelRuleStatusEnum.java | 70 + .../sdk/model/TravelRuleVerdictEnum.java | 68 + .../fireblocks/sdk/model/USWireAddress.java | 309 + .../sdk/model/USWireDestination.java | 213 + .../VaultAccountTagAttachmentOperation.java | 237 + ...tAccountTagAttachmentPendingOperation.java | 285 + ...AccountTagAttachmentRejectedOperation.java | 319 + ...ccountsTagAttachmentOperationsRequest.java | 292 + ...countsTagAttachmentOperationsResponse.java | 315 + .../fireblocks/sdk/model/WebhookMetric.java | 145 + .../sdk/api/BlockchainsAssetsApiTest.java | 2 +- .../sdk/api/TransactionsApiTest.java | 4 + .../com/fireblocks/sdk/api/VaultsApiTest.java | 29 +- .../fireblocks/sdk/api/WebhooksV2ApiTest.java | 16 + ...AccountBasedAccessProviderDetailsTest.java | 45 + .../sdk/model/AccountConfigTest.java | 6 + .../sdk/model/AchAccountTypeTest.java | 25 + .../fireblocks/sdk/model/AchAddressTest.java | 57 + .../sdk/model/AchDestinationTest.java | 39 + .../sdk/model/AlertExposureTypeEnumTest.java | 25 + .../sdk/model/AlertLevelEnumTest.java | 25 + .../fireblocks/sdk/model/AmlAlertTest.java | 81 + .../sdk/model/AmlMatchedRuleTest.java | 45 + .../fireblocks/sdk/model/AmlResultTest.java | 51 + .../sdk/model/AmlStatusEnumTest.java | 25 + .../sdk/model/AmountConfigCurrencyTest.java | 33 + .../sdk/model/AmountConfigTest.java | 39 + ...eTest.java => AmountRangeMinMax2Test.java} | 12 +- .../sdk/model/AmountRangeMinMaxTest.java | 39 + .../fireblocks/sdk/model/AmountRangeTest.java | 18 +- .../ComplianceResultFullPayloadTest.java | 12 + .../sdk/model/ComplianceResultsTest.java | 12 + ...plianceScreeningResultFullPayloadTest.java | 162 +- .../model/ComplianceScreeningResultTest.java | 162 +- .../sdk/model/DAppAddressConfigTest.java | 51 + .../sdk/model/DestinationConfigTest.java | 6 + .../DirectAccessProviderDetailsTest.java | 45 + .../sdk/model/FeePropertiesDetailsTest.java | 45 + .../sdk/model/FiatDestinationTest.java | 39 + .../fireblocks/sdk/model/IbanAddressTest.java | 39 + .../sdk/model/IbanDestinationTest.java | 39 + .../LimitExecutionRequestDetailsTest.java | 36 +- .../LimitExecutionResponseDetailsTest.java | 36 +- .../sdk/model/LimitTypeDetailsTest.java | 45 + .../LocalBankTransferAfricaAddressTest.java | 51 + ...ocalBankTransferAfricaDestinationTest.java | 40 + .../MarketExecutionRequestDetailsTest.java | 12 +- .../MarketExecutionResponseDetailsTest.java | 12 +- .../sdk/model/MarketTypeDetailsTest.java | 33 + .../sdk/model/MobileMoneyAddressTest.java | 57 + .../sdk/model/MobileMoneyDestinationTest.java | 39 + .../fireblocks/sdk/model/OrderSideTest.java | 25 + .../model/PaymentInstructionsDetailsTest.java | 33 + .../fireblocks/sdk/model/PixAddressTest.java | 57 + .../sdk/model/PixDestinationTest.java | 39 + .../sdk/model/PolicyCurrencyTest.java | 25 + .../fireblocks/sdk/model/PolicyRuleTest.java | 12 + .../fireblocks/sdk/model/PolicyTagTest.java | 33 + .../model/PolicyVerdictActionEnum2Test.java | 25 + .../model/PolicyVerdictActionEnumTest.java | 25 + .../QuoteExecutionResponseDetailsTest.java | 36 +- .../model/QuoteExecutionTypeDetailsTest.java | 45 + ...equoteResponseDetailsAllOfReQuoteTest.java | 46 - .../sdk/model/QuotePropertiesDetailsTest.java | 99 + ...st.java => ReQuoteDetailsReQuoteTest.java} | 13 +- .../sdk/model/ReQuoteDetailsTest.java | 33 + .../fireblocks/sdk/model/SEPAAddressTest.java | 75 + .../sdk/model/SEPADestinationTest.java | 39 + .../ScreeningAlertExposureTypeEnumTest.java | 25 + .../sdk/model/ScreeningAmlAlertTest.java | 81 + .../model/ScreeningAmlMatchedRuleTest.java | 45 + .../sdk/model/ScreeningAmlResultTest.java | 51 + .../sdk/model/ScreeningRiskLevelEnumTest.java | 25 + .../sdk/model/ScreeningTRLinkAmountTest.java | 39 + ...ScreeningTRLinkMissingTrmDecisionTest.java | 165 + .../ScreeningTRLinkMissingTrmRuleTest.java | 147 + .../ScreeningTRLinkPostScreeningRuleTest.java | 159 + .../ScreeningTRLinkPrescreeningRuleTest.java | 135 + .../model/ScreeningTRLinkRuleBaseTest.java | 129 + .../ScreeningTravelRuleMatchedRuleTest.java | 63 + ...reeningTravelRulePrescreeningRuleTest.java | 130 + .../model/ScreeningTravelRuleResultTest.java | 57 + .../sdk/model/ScreeningVerdictEnumTest.java | 25 + .../sdk/model/SourceConfigTest.java | 63 + .../fireblocks/sdk/model/SpeiAddressTest.java | 45 + .../sdk/model/SpeiDestinationTest.java | 39 + .../sdk/model/SwiftAddressTest.java | 45 + .../sdk/model/SwiftDestinationTest.java | 39 + .../sdk/model/TRLinkAmountTest.java | 39 + .../model/TRLinkMissingTrmActionEnumTest.java | 25 + .../sdk/model/TRLinkMissingTrmActionTest.java | 25 + .../model/TRLinkMissingTrmDecisionTest.java | 165 + .../sdk/model/TRLinkMissingTrmRuleTest.java | 147 + .../model/TRLinkPostScreeningRuleTest.java | 159 + .../TRLinkPreScreeningActionEnumTest.java | 25 + .../model/TRLinkPreScreeningActionTest.java | 25 + .../sdk/model/TRLinkPreScreeningRuleTest.java | 135 + .../sdk/model/TRLinkProviderResultTest.java | 33 + .../TRLinkProviderResultWithRule2Test.java | 39 + .../TRLinkProviderResultWithRuleTest.java | 39 + ...LinkRegistrationResultFullPayloadTest.java | 88 + .../model/TRLinkRegistrationResultTest.java | 87 + .../TRLinkRegistrationStatusEnumTest.java | 25 + .../model/TRLinkRegistrationStatusTest.java | 25 + .../model/TRLinkResultFullPayloadTest.java | 111 + .../sdk/model/TRLinkResultTest.java | 111 + .../sdk/model/TRLinkRuleBaseTest.java | 129 + .../TRLinkTrmScreeningStatusEnumTest.java | 25 + .../model/TRLinkTrmScreeningStatusTest.java | 25 + .../sdk/model/TRLinkVerdictEnumTest.java | 25 + .../sdk/model/TRLinkVerdictTest.java | 25 + .../TagAttachmentOperationActionTest.java | 25 + .../com/fireblocks/sdk/model/TagTest.java | 18 + .../sdk/model/TransactionDirectionTest.java | 25 + .../model/TransactionOperationEnumTest.java | 25 + .../model/TransferPeerSubTypeEnumTest.java | 25 + .../sdk/model/TransferPeerTypeEnumTest.java | 25 + .../sdk/model/TravelRuleActionEnumTest.java | 25 + .../model/TravelRuleDirectionEnumTest.java | 25 + .../sdk/model/TravelRuleMatchedRuleTest.java | 63 + .../model/TravelRulePrescreeningRuleTest.java | 129 + .../sdk/model/TravelRuleResultTest.java | 57 + .../sdk/model/TravelRuleStatusEnumTest.java | 25 + .../sdk/model/TravelRuleVerdictEnumTest.java | 25 + .../sdk/model/USWireAddressTest.java | 57 + .../sdk/model/USWireDestinationTest.java | 39 + ...aultAccountTagAttachmentOperationTest.java | 46 + ...ountTagAttachmentPendingOperationTest.java | 52 + ...untTagAttachmentRejectedOperationTest.java | 52 + ...ntsTagAttachmentOperationsRequestTest.java | 46 + ...tsTagAttachmentOperationsResponseTest.java | 46 + .../sdk/model/WebhookMetricTest.java | 33 + 398 files changed, 50028 insertions(+), 3159 deletions(-) create mode 100644 docs/AccountBasedAccessProviderDetails.md create mode 100644 docs/AchAccountType.md create mode 100644 docs/AchAddress.md create mode 100644 docs/AchDestination.md create mode 100644 docs/AlertExposureTypeEnum.md create mode 100644 docs/AlertLevelEnum.md create mode 100644 docs/AmlAlert.md create mode 100644 docs/AmlMatchedRule.md create mode 100644 docs/AmlResult.md create mode 100644 docs/AmlStatusEnum.md create mode 100644 docs/AmountConfig.md create mode 100644 docs/AmountConfigCurrency.md create mode 100644 docs/AmountRangeMinMax.md rename docs/{AmountOverTimeConfigRange.md => AmountRangeMinMax2.md} (57%) create mode 100644 docs/DAppAddressConfig.md create mode 100644 docs/DirectAccessProviderDetails.md create mode 100644 docs/FeePropertiesDetails.md create mode 100644 docs/FiatDestination.md create mode 100644 docs/IbanAddress.md create mode 100644 docs/IbanDestination.md create mode 100644 docs/LimitTypeDetails.md create mode 100644 docs/LocalBankTransferAfricaAddress.md create mode 100644 docs/LocalBankTransferAfricaDestination.md create mode 100644 docs/MarketTypeDetails.md create mode 100644 docs/MobileMoneyAddress.md create mode 100644 docs/MobileMoneyDestination.md create mode 100644 docs/OrderSide.md create mode 100644 docs/PaymentInstructionsDetails.md create mode 100644 docs/PixAddress.md create mode 100644 docs/PixDestination.md create mode 100644 docs/PolicyCurrency.md create mode 100644 docs/PolicyTag.md create mode 100644 docs/PolicyVerdictActionEnum.md create mode 100644 docs/PolicyVerdictActionEnum2.md create mode 100644 docs/QuoteExecutionTypeDetails.md delete mode 100644 docs/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.md delete mode 100644 docs/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.md create mode 100644 docs/QuotePropertiesDetails.md create mode 100644 docs/ReQuoteDetails.md create mode 100644 docs/ReQuoteDetailsReQuote.md create mode 100644 docs/SEPAAddress.md create mode 100644 docs/SEPADestination.md create mode 100644 docs/ScreeningAlertExposureTypeEnum.md create mode 100644 docs/ScreeningAmlAlert.md create mode 100644 docs/ScreeningAmlMatchedRule.md create mode 100644 docs/ScreeningAmlResult.md create mode 100644 docs/ScreeningRiskLevelEnum.md create mode 100644 docs/ScreeningTRLinkAmount.md create mode 100644 docs/ScreeningTRLinkMissingTrmDecision.md create mode 100644 docs/ScreeningTRLinkMissingTrmRule.md create mode 100644 docs/ScreeningTRLinkPostScreeningRule.md create mode 100644 docs/ScreeningTRLinkPrescreeningRule.md create mode 100644 docs/ScreeningTRLinkRuleBase.md create mode 100644 docs/ScreeningTravelRuleMatchedRule.md create mode 100644 docs/ScreeningTravelRulePrescreeningRule.md create mode 100644 docs/ScreeningTravelRuleResult.md create mode 100644 docs/ScreeningVerdictEnum.md create mode 100644 docs/SourceConfig.md create mode 100644 docs/SpeiAddress.md create mode 100644 docs/SpeiDestination.md create mode 100644 docs/SwiftAddress.md create mode 100644 docs/SwiftDestination.md create mode 100644 docs/TRLinkAmount.md create mode 100644 docs/TRLinkMissingTrmAction.md create mode 100644 docs/TRLinkMissingTrmActionEnum.md create mode 100644 docs/TRLinkMissingTrmDecision.md create mode 100644 docs/TRLinkMissingTrmRule.md create mode 100644 docs/TRLinkPostScreeningRule.md create mode 100644 docs/TRLinkPreScreeningAction.md create mode 100644 docs/TRLinkPreScreeningActionEnum.md create mode 100644 docs/TRLinkPreScreeningRule.md create mode 100644 docs/TRLinkProviderResult.md create mode 100644 docs/TRLinkProviderResultWithRule.md create mode 100644 docs/TRLinkProviderResultWithRule2.md create mode 100644 docs/TRLinkRegistrationResult.md create mode 100644 docs/TRLinkRegistrationResultFullPayload.md create mode 100644 docs/TRLinkRegistrationStatus.md create mode 100644 docs/TRLinkRegistrationStatusEnum.md create mode 100644 docs/TRLinkResult.md create mode 100644 docs/TRLinkResultFullPayload.md create mode 100644 docs/TRLinkRuleBase.md create mode 100644 docs/TRLinkTrmScreeningStatus.md create mode 100644 docs/TRLinkTrmScreeningStatusEnum.md create mode 100644 docs/TRLinkVerdict.md create mode 100644 docs/TRLinkVerdictEnum.md create mode 100644 docs/TagAttachmentOperationAction.md create mode 100644 docs/TransactionDirection.md create mode 100644 docs/TransactionOperationEnum.md create mode 100644 docs/TransferPeerSubTypeEnum.md create mode 100644 docs/TransferPeerTypeEnum.md create mode 100644 docs/TravelRuleActionEnum.md create mode 100644 docs/TravelRuleDirectionEnum.md create mode 100644 docs/TravelRuleMatchedRule.md create mode 100644 docs/TravelRulePrescreeningRule.md create mode 100644 docs/TravelRuleResult.md create mode 100644 docs/TravelRuleStatusEnum.md create mode 100644 docs/TravelRuleVerdictEnum.md create mode 100644 docs/USWireAddress.md create mode 100644 docs/USWireDestination.md create mode 100644 docs/VaultAccountTagAttachmentOperation.md create mode 100644 docs/VaultAccountTagAttachmentPendingOperation.md create mode 100644 docs/VaultAccountTagAttachmentRejectedOperation.md create mode 100644 docs/VaultAccountsTagAttachmentOperationsRequest.md create mode 100644 docs/VaultAccountsTagAttachmentOperationsResponse.md create mode 100644 docs/WebhookMetric.md create mode 100644 src/main/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetails.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AchAccountType.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AchAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AchDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AlertExposureTypeEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AlertLevelEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AmlAlert.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AmlMatchedRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AmlResult.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AmlStatusEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AmountConfig.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AmountConfigCurrency.java create mode 100644 src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax.java rename src/main/java/com/fireblocks/sdk/model/{AmountOverTimeConfigRange.java => AmountRangeMinMax2.java} (84%) create mode 100644 src/main/java/com/fireblocks/sdk/model/DAppAddressConfig.java create mode 100644 src/main/java/com/fireblocks/sdk/model/DirectAccessProviderDetails.java create mode 100644 src/main/java/com/fireblocks/sdk/model/FeePropertiesDetails.java create mode 100644 src/main/java/com/fireblocks/sdk/model/FiatDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/IbanAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/IbanDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/LimitTypeDetails.java create mode 100644 src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/MarketTypeDetails.java create mode 100644 src/main/java/com/fireblocks/sdk/model/MobileMoneyAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/MobileMoneyDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/OrderSide.java create mode 100644 src/main/java/com/fireblocks/sdk/model/PaymentInstructionsDetails.java create mode 100644 src/main/java/com/fireblocks/sdk/model/PixAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/PixDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/PolicyCurrency.java create mode 100644 src/main/java/com/fireblocks/sdk/model/PolicyTag.java create mode 100644 src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2.java create mode 100644 src/main/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetails.java delete mode 100644 src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.java create mode 100644 src/main/java/com/fireblocks/sdk/model/QuotePropertiesDetails.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ReQuoteDetails.java rename src/main/java/com/fireblocks/sdk/model/{QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.java => ReQuoteDetailsReQuote.java} (80%) create mode 100644 src/main/java/com/fireblocks/sdk/model/SEPAAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/SEPADestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningAmlAlert.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningAmlResult.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkAmount.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecision.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBase.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleResult.java create mode 100644 src/main/java/com/fireblocks/sdk/model/ScreeningVerdictEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/SourceConfig.java create mode 100644 src/main/java/com/fireblocks/sdk/model/SpeiAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/SpeiDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/SwiftAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/SwiftDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkAmount.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmAction.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecision.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkPostScreeningRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningAction.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkProviderResult.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResult.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayload.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatus.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkResult.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkResultFullPayload.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkRuleBase.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatus.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkVerdict.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TRLinkVerdictEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TagAttachmentOperationAction.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TransactionDirection.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TransactionOperationEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TransferPeerTypeEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TravelRuleActionEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TravelRuleDirectionEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TravelRuleMatchedRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TravelRulePrescreeningRule.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TravelRuleResult.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TravelRuleStatusEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/TravelRuleVerdictEnum.java create mode 100644 src/main/java/com/fireblocks/sdk/model/USWireAddress.java create mode 100644 src/main/java/com/fireblocks/sdk/model/USWireDestination.java create mode 100644 src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperation.java create mode 100644 src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperation.java create mode 100644 src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperation.java create mode 100644 src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequest.java create mode 100644 src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponse.java create mode 100644 src/main/java/com/fireblocks/sdk/model/WebhookMetric.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetailsTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AchAccountTypeTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AchAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AchDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AlertExposureTypeEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AlertLevelEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AmlAlertTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AmlMatchedRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AmlResultTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AmlStatusEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AmountConfigCurrencyTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/AmountConfigTest.java rename src/test/java/com/fireblocks/sdk/model/{AmountOverTimeConfigRangeTest.java => AmountRangeMinMax2Test.java} (68%) create mode 100644 src/test/java/com/fireblocks/sdk/model/AmountRangeMinMaxTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/DAppAddressConfigTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/DirectAccessProviderDetailsTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/FeePropertiesDetailsTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/FiatDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/IbanAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/IbanDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/LimitTypeDetailsTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/MarketTypeDetailsTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/MobileMoneyAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/MobileMoneyDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/OrderSideTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/PaymentInstructionsDetailsTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/PixAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/PixDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/PolicyCurrencyTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/PolicyTagTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2Test.java create mode 100644 src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetailsTest.java delete mode 100644 src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/QuotePropertiesDetailsTest.java rename src/test/java/com/fireblocks/sdk/model/{QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteTest.java => ReQuoteDetailsReQuoteTest.java} (61%) create mode 100644 src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/SEPAAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/SEPADestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningAmlAlertTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningAmlResultTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkAmountTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecisionTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBaseTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleResultTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/ScreeningVerdictEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/SourceConfigTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/SpeiAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/SpeiDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/SwiftAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/SwiftDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkAmountTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecisionTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkPostScreeningRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2Test.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayloadTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkResultFullPayloadTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkResultTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkRuleBaseTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkVerdictEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TRLinkVerdictTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TagAttachmentOperationActionTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TransactionDirectionTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TransactionOperationEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TransferPeerTypeEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TravelRuleActionEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TravelRuleDirectionEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TravelRuleMatchedRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TravelRulePrescreeningRuleTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TravelRuleResultTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TravelRuleStatusEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/TravelRuleVerdictEnumTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/USWireAddressTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/USWireDestinationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperationTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequestTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponseTest.java create mode 100644 src/test/java/com/fireblocks/sdk/model/WebhookMetricTest.java diff --git a/.openapi-generator/FILES b/.openapi-generator/FILES index b881bafe..dcbbdc02 100644 --- a/.openapi-generator/FILES +++ b/.openapi-generator/FILES @@ -16,6 +16,7 @@ docs/Account.md docs/AccountAccess.md docs/AccountBase.md docs/AccountBasedAccessProvider.md +docs/AccountBasedAccessProviderDetails.md docs/AccountConfig.md docs/AccountHolderDetails.md docs/AccountIdentifier.md @@ -23,6 +24,9 @@ docs/AccountProviderID.md docs/AccountReference.md docs/AccountType.md docs/AccountType2.md +docs/AchAccountType.md +docs/AchAddress.md +docs/AchDestination.md docs/AchPaymentInfo.md docs/AdapterProcessingResult.md docs/AddAbiRequestDto.md @@ -37,16 +41,25 @@ docs/AdditionalInfo.md docs/AdditionalInfoRequest.md docs/AdditionalInfoRequestAdditionalInfo.md docs/AddressNotAvailableError.md +docs/AlertExposureTypeEnum.md +docs/AlertLevelEnum.md +docs/AmlAlert.md +docs/AmlMatchedRule.md docs/AmlRegistrationResult.md docs/AmlRegistrationResultFullPayload.md +docs/AmlResult.md docs/AmlScreeningResult.md +docs/AmlStatusEnum.md docs/AmlVerdictManualRequest.md docs/AmlVerdictManualResponse.md docs/AmountAndChainDescriptor.md +docs/AmountConfig.md +docs/AmountConfigCurrency.md docs/AmountInfo.md docs/AmountOverTimeConfig.md -docs/AmountOverTimeConfigRange.md docs/AmountRange.md +docs/AmountRangeMinMax.md +docs/AmountRangeMinMax2.md docs/ApiKey.md docs/ApiKeysPaginatedResponse.md docs/ApiUserApi.md @@ -232,6 +245,7 @@ docs/CreateWalletRequest.md docs/CreateWebhookRequest.md docs/CreateWorkflowExecutionRequestParamsInner.md docs/CustomRoutingDest.md +docs/DAppAddressConfig.md docs/DVPSettlement.md docs/DefaultNetworkRoutingDest.md docs/Delegation.md @@ -253,6 +267,7 @@ docs/DestinationTransferPeerPath.md docs/DestinationTransferPeerPathResponse.md docs/DirectAccess.md docs/DirectAccessProvider.md +docs/DirectAccessProviderDetails.md docs/DisbursementAmountInstruction.md docs/DisbursementConfigOperation.md docs/DisbursementInstruction.md @@ -332,11 +347,13 @@ docs/FeeBreakdownOneOf1.md docs/FeeInfo.md docs/FeeLevel.md docs/FeePayerInfo.md +docs/FeePropertiesDetails.md docs/FetchAbiRequestDto.md docs/FiatAccount.md docs/FiatAccountType.md docs/FiatAccountsApi.md docs/FiatAsset.md +docs/FiatDestination.md docs/FiatTransfer.md docs/FixedFee.md docs/FreezeTransactionResponse.md @@ -372,6 +389,8 @@ docs/GetValidationKeyResponseDto.md docs/GetWhitelistIpAddressesResponse.md docs/GetWorkspaceStatusResponse.md docs/HttpContractDoesNotExistError.md +docs/IbanAddress.md +docs/IbanDestination.md docs/IbanPaymentInfo.md docs/Identification.md docs/IdlType.md @@ -423,17 +442,23 @@ docs/LegacyPublishResult.md docs/LegacySrcOrDestAttributesInner.md docs/LimitExecutionRequestDetails.md docs/LimitExecutionResponseDetails.md +docs/LimitTypeDetails.md docs/ListAssetsResponse.md docs/ListBlockchainsResponse.md docs/ListOwnedCollectionsResponse.md docs/ListOwnedTokensResponse.md +docs/LocalBankTransferAfricaAddress.md +docs/LocalBankTransferAfricaDestination.md docs/Manifest.md docs/MarketExecutionRequestDetails.md docs/MarketExecutionResponseDetails.md docs/MarketRequoteRequestDetails.md +docs/MarketTypeDetails.md docs/MediaEntityResponse.md docs/MergeStakeAccountsRequest.md docs/MergeStakeAccountsResponse.md +docs/MobileMoneyAddress.md +docs/MobileMoneyDestination.md docs/ModifySigningKeyAgentIdDto.md docs/ModifySigningKeyDto.md docs/ModifyValidationKeyDto.md @@ -467,6 +492,7 @@ docs/OneTimeAddressAccount.md docs/OneTimeAddressReference.md docs/OperationExecutionFailure.md docs/OrderDetails.md +docs/OrderSide.md docs/OrderStatus.md docs/OrderSummary.md docs/OtaBetaApi.md @@ -489,6 +515,7 @@ docs/PaymentAccount.md docs/PaymentAccountResponse.md docs/PaymentAccountType.md docs/PaymentInstructions.md +docs/PaymentInstructionsDetails.md docs/PaymentsPayoutApi.md docs/PayoutInitMethod.md docs/PayoutInstruction.md @@ -501,11 +528,14 @@ docs/PeerAdapterInfo.md docs/PeerType.md docs/PersonalIdentification.md docs/PersonalIdentificationFullName.md +docs/PixAddress.md +docs/PixDestination.md docs/PixPaymentInfo.md docs/PlatformAccount.md docs/Players.md docs/PolicyAndValidationResponse.md docs/PolicyCheckResult.md +docs/PolicyCurrency.md docs/PolicyEditorBetaApi.md docs/PolicyEditorV2BetaApi.md docs/PolicyMetadata.md @@ -515,8 +545,11 @@ docs/PolicyRule.md docs/PolicyRuleCheckResult.md docs/PolicyRuleError.md docs/PolicyStatus.md +docs/PolicyTag.md docs/PolicyType.md docs/PolicyValidation.md +docs/PolicyVerdictActionEnum.md +docs/PolicyVerdictActionEnum2.md docs/PostOrderSettlement.md docs/PostalAddress.md docs/PreScreening.md @@ -531,11 +564,13 @@ docs/PublishResult.md docs/Quote.md docs/QuoteExecutionRequestDetails.md docs/QuoteExecutionResponseDetails.md +docs/QuoteExecutionTypeDetails.md docs/QuoteExecutionWithRequoteRequestDetails.md -docs/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.md docs/QuoteExecutionWithRequoteResponseDetails.md -docs/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.md +docs/QuotePropertiesDetails.md docs/QuotesResponse.md +docs/ReQuoteDetails.md +docs/ReQuoteDetailsReQuote.md docs/ReadAbiFunction.md docs/ReadCallFunctionDto.md docs/ReadCallFunctionDtoAbiFunction.md @@ -565,8 +600,14 @@ docs/RespondToConnectionRequest.md docs/RetryRequoteRequestDetails.md docs/RewardInfo.md docs/RewardsInfo.md +docs/SEPAAddress.md +docs/SEPADestination.md docs/SOLAccount.md docs/SOLAccountWithValue.md +docs/ScreeningAlertExposureTypeEnum.md +docs/ScreeningAmlAlert.md +docs/ScreeningAmlMatchedRule.md +docs/ScreeningAmlResult.md docs/ScreeningConfigurationsRequest.md docs/ScreeningMetadataConfig.md docs/ScreeningOperationExecution.md @@ -575,9 +616,20 @@ docs/ScreeningOperationFailure.md docs/ScreeningOperationType.md docs/ScreeningPolicyResponse.md docs/ScreeningProviderRulesConfigurationResponse.md +docs/ScreeningRiskLevelEnum.md +docs/ScreeningTRLinkAmount.md +docs/ScreeningTRLinkMissingTrmDecision.md +docs/ScreeningTRLinkMissingTrmRule.md +docs/ScreeningTRLinkPostScreeningRule.md +docs/ScreeningTRLinkPrescreeningRule.md +docs/ScreeningTRLinkRuleBase.md +docs/ScreeningTravelRuleMatchedRule.md +docs/ScreeningTravelRulePrescreeningRule.md +docs/ScreeningTravelRuleResult.md docs/ScreeningUpdateConfigurations.md docs/ScreeningValidationFailure.md docs/ScreeningVerdict.md +docs/ScreeningVerdictEnum.md docs/ScreeningVerdictMatchedRule.md docs/SearchNetworkIdsResponse.md docs/SepaPaymentInfo.md @@ -644,12 +696,15 @@ docs/SolanaConfig.md docs/SolanaInstruction.md docs/SolanaInstructionWithValue.md docs/SolanaSimpleCreateParams.md +docs/SourceConfig.md docs/SourceTransferPeerPath.md docs/SourceTransferPeerPathResponse.md docs/SpamOwnershipResponse.md docs/SpamTokenResponse.md +docs/SpeiAddress.md docs/SpeiAdvancedPaymentInfo.md docs/SpeiBasicPaymentInfo.md +docs/SpeiDestination.md docs/SplitRequest.md docs/SplitResponse.md docs/StakeRequest.md @@ -658,8 +713,34 @@ docs/StakingApi.md docs/StakingProvider.md docs/Status.md docs/StellarRippleCreateParamsDto.md +docs/SwiftAddress.md +docs/SwiftDestination.md docs/SystemMessageInfo.md +docs/TRLinkAmount.md +docs/TRLinkMissingTrmAction.md +docs/TRLinkMissingTrmActionEnum.md +docs/TRLinkMissingTrmDecision.md +docs/TRLinkMissingTrmRule.md +docs/TRLinkPostScreeningRule.md +docs/TRLinkPreScreeningAction.md +docs/TRLinkPreScreeningActionEnum.md +docs/TRLinkPreScreeningRule.md +docs/TRLinkProviderResult.md +docs/TRLinkProviderResultWithRule.md +docs/TRLinkProviderResultWithRule2.md +docs/TRLinkRegistrationResult.md +docs/TRLinkRegistrationResultFullPayload.md +docs/TRLinkRegistrationStatus.md +docs/TRLinkRegistrationStatusEnum.md +docs/TRLinkResult.md +docs/TRLinkResultFullPayload.md +docs/TRLinkRuleBase.md +docs/TRLinkTrmScreeningStatus.md +docs/TRLinkTrmScreeningStatusEnum.md +docs/TRLinkVerdict.md +docs/TRLinkVerdictEnum.md docs/Tag.md +docs/TagAttachmentOperationAction.md docs/TagsApi.md docs/TagsPagedResponse.md docs/Task.md @@ -689,8 +770,10 @@ docs/TradingErrorResponse.md docs/TradingErrorResponseError.md docs/TradingProvider.md docs/Transaction.md +docs/TransactionDirection.md docs/TransactionFee.md docs/TransactionOperation.md +docs/TransactionOperationEnum.md docs/TransactionReceiptResponse.md docs/TransactionRequest.md docs/TransactionRequestAmount.md @@ -718,19 +801,24 @@ docs/TransferOperationPreviewOutput.md docs/TransferOperationType.md docs/TransferPeerPathSubType.md docs/TransferPeerPathType.md +docs/TransferPeerSubTypeEnum.md +docs/TransferPeerTypeEnum.md docs/TransferRail.md docs/TransferReceipt.md docs/TransferValidationFailure.md +docs/TravelRuleActionEnum.md docs/TravelRuleAddress.md docs/TravelRuleApi.md docs/TravelRuleCreateTransactionRequest.md docs/TravelRuleDateAndPlaceOfBirth.md +docs/TravelRuleDirectionEnum.md docs/TravelRuleGeographicAddress.md docs/TravelRuleGetAllVASPsResponse.md docs/TravelRuleIssuer.md docs/TravelRuleIssuers.md docs/TravelRuleLegalPerson.md docs/TravelRuleLegalPersonNameIdentifier.md +docs/TravelRuleMatchedRule.md docs/TravelRuleNationalIdentification.md docs/TravelRuleNaturalNameIdentifier.md docs/TravelRuleNaturalPerson.md @@ -739,6 +827,9 @@ docs/TravelRuleOwnershipProof.md docs/TravelRulePerson.md docs/TravelRulePiiIVMS.md docs/TravelRulePolicyRuleResponse.md +docs/TravelRulePrescreeningRule.md +docs/TravelRuleResult.md +docs/TravelRuleStatusEnum.md docs/TravelRuleTransactionBlockchainInfo.md docs/TravelRuleUpdateVASPDetails.md docs/TravelRuleVASP.md @@ -756,7 +847,10 @@ docs/TravelRuleValidatePiiIVMS.md docs/TravelRuleValidateTransactionRequest.md docs/TravelRuleValidateTransactionResponse.md docs/TravelRuleVaspForVault.md +docs/TravelRuleVerdictEnum.md docs/TxLog.md +docs/USWireAddress.md +docs/USWireDestination.md docs/UnfreezeTransactionResponse.md docs/UnmanagedWallet.md docs/UnspentInput.md @@ -788,8 +882,13 @@ docs/ValidatedTransactionsForRescan.md docs/ValidationKeyDto.md docs/Validator.md docs/VaultAccount.md +docs/VaultAccountTagAttachmentOperation.md +docs/VaultAccountTagAttachmentPendingOperation.md +docs/VaultAccountTagAttachmentRejectedOperation.md docs/VaultAccountsPagedResponse.md docs/VaultAccountsPagedResponsePaging.md +docs/VaultAccountsTagAttachmentOperationsRequest.md +docs/VaultAccountsTagAttachmentOperationsResponse.md docs/VaultAccountsTagAttachmentsRequest.md docs/VaultActionStatus.md docs/VaultAsset.md @@ -803,6 +902,7 @@ docs/WalletAssetAdditionalInfo.md docs/Web3ConnectionsApi.md docs/Webhook.md docs/WebhookEvent.md +docs/WebhookMetric.md docs/WebhookPaginatedResponse.md docs/WebhooksApi.md docs/WebhooksV2Api.md @@ -898,6 +998,7 @@ src/main/java/com/fireblocks/sdk/model/Account.java src/main/java/com/fireblocks/sdk/model/AccountAccess.java src/main/java/com/fireblocks/sdk/model/AccountBase.java src/main/java/com/fireblocks/sdk/model/AccountBasedAccessProvider.java +src/main/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetails.java src/main/java/com/fireblocks/sdk/model/AccountConfig.java src/main/java/com/fireblocks/sdk/model/AccountHolderDetails.java src/main/java/com/fireblocks/sdk/model/AccountIdentifier.java @@ -905,6 +1006,9 @@ src/main/java/com/fireblocks/sdk/model/AccountProviderID.java src/main/java/com/fireblocks/sdk/model/AccountReference.java src/main/java/com/fireblocks/sdk/model/AccountType.java src/main/java/com/fireblocks/sdk/model/AccountType2.java +src/main/java/com/fireblocks/sdk/model/AchAccountType.java +src/main/java/com/fireblocks/sdk/model/AchAddress.java +src/main/java/com/fireblocks/sdk/model/AchDestination.java src/main/java/com/fireblocks/sdk/model/AchPaymentInfo.java src/main/java/com/fireblocks/sdk/model/AdapterProcessingResult.java src/main/java/com/fireblocks/sdk/model/AddAbiRequestDto.java @@ -919,16 +1023,25 @@ src/main/java/com/fireblocks/sdk/model/AdditionalInfo.java src/main/java/com/fireblocks/sdk/model/AdditionalInfoRequest.java src/main/java/com/fireblocks/sdk/model/AdditionalInfoRequestAdditionalInfo.java src/main/java/com/fireblocks/sdk/model/AddressNotAvailableError.java +src/main/java/com/fireblocks/sdk/model/AlertExposureTypeEnum.java +src/main/java/com/fireblocks/sdk/model/AlertLevelEnum.java +src/main/java/com/fireblocks/sdk/model/AmlAlert.java +src/main/java/com/fireblocks/sdk/model/AmlMatchedRule.java src/main/java/com/fireblocks/sdk/model/AmlRegistrationResult.java src/main/java/com/fireblocks/sdk/model/AmlRegistrationResultFullPayload.java +src/main/java/com/fireblocks/sdk/model/AmlResult.java src/main/java/com/fireblocks/sdk/model/AmlScreeningResult.java +src/main/java/com/fireblocks/sdk/model/AmlStatusEnum.java src/main/java/com/fireblocks/sdk/model/AmlVerdictManualRequest.java src/main/java/com/fireblocks/sdk/model/AmlVerdictManualResponse.java src/main/java/com/fireblocks/sdk/model/AmountAndChainDescriptor.java +src/main/java/com/fireblocks/sdk/model/AmountConfig.java +src/main/java/com/fireblocks/sdk/model/AmountConfigCurrency.java src/main/java/com/fireblocks/sdk/model/AmountInfo.java src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfig.java -src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfigRange.java src/main/java/com/fireblocks/sdk/model/AmountRange.java +src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax.java +src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax2.java src/main/java/com/fireblocks/sdk/model/ApiKey.java src/main/java/com/fireblocks/sdk/model/ApiKeysPaginatedResponse.java src/main/java/com/fireblocks/sdk/model/ApproversConfig.java @@ -1102,6 +1215,7 @@ src/main/java/com/fireblocks/sdk/model/CreateWalletRequest.java src/main/java/com/fireblocks/sdk/model/CreateWebhookRequest.java src/main/java/com/fireblocks/sdk/model/CreateWorkflowExecutionRequestParamsInner.java src/main/java/com/fireblocks/sdk/model/CustomRoutingDest.java +src/main/java/com/fireblocks/sdk/model/DAppAddressConfig.java src/main/java/com/fireblocks/sdk/model/DVPSettlement.java src/main/java/com/fireblocks/sdk/model/DefaultNetworkRoutingDest.java src/main/java/com/fireblocks/sdk/model/Delegation.java @@ -1122,6 +1236,7 @@ src/main/java/com/fireblocks/sdk/model/DestinationTransferPeerPath.java src/main/java/com/fireblocks/sdk/model/DestinationTransferPeerPathResponse.java src/main/java/com/fireblocks/sdk/model/DirectAccess.java src/main/java/com/fireblocks/sdk/model/DirectAccessProvider.java +src/main/java/com/fireblocks/sdk/model/DirectAccessProviderDetails.java src/main/java/com/fireblocks/sdk/model/DisbursementAmountInstruction.java src/main/java/com/fireblocks/sdk/model/DisbursementConfigOperation.java src/main/java/com/fireblocks/sdk/model/DisbursementInstruction.java @@ -1198,10 +1313,12 @@ src/main/java/com/fireblocks/sdk/model/FeeBreakdownOneOf1.java src/main/java/com/fireblocks/sdk/model/FeeInfo.java src/main/java/com/fireblocks/sdk/model/FeeLevel.java src/main/java/com/fireblocks/sdk/model/FeePayerInfo.java +src/main/java/com/fireblocks/sdk/model/FeePropertiesDetails.java src/main/java/com/fireblocks/sdk/model/FetchAbiRequestDto.java src/main/java/com/fireblocks/sdk/model/FiatAccount.java src/main/java/com/fireblocks/sdk/model/FiatAccountType.java src/main/java/com/fireblocks/sdk/model/FiatAsset.java +src/main/java/com/fireblocks/sdk/model/FiatDestination.java src/main/java/com/fireblocks/sdk/model/FiatTransfer.java src/main/java/com/fireblocks/sdk/model/FixedFee.java src/main/java/com/fireblocks/sdk/model/FreezeTransactionResponse.java @@ -1236,6 +1353,8 @@ src/main/java/com/fireblocks/sdk/model/GetValidationKeyResponseDto.java src/main/java/com/fireblocks/sdk/model/GetWhitelistIpAddressesResponse.java src/main/java/com/fireblocks/sdk/model/GetWorkspaceStatusResponse.java src/main/java/com/fireblocks/sdk/model/HttpContractDoesNotExistError.java +src/main/java/com/fireblocks/sdk/model/IbanAddress.java +src/main/java/com/fireblocks/sdk/model/IbanDestination.java src/main/java/com/fireblocks/sdk/model/IbanPaymentInfo.java src/main/java/com/fireblocks/sdk/model/Identification.java src/main/java/com/fireblocks/sdk/model/IdlType.java @@ -1283,17 +1402,23 @@ src/main/java/com/fireblocks/sdk/model/LegacyPublishResult.java src/main/java/com/fireblocks/sdk/model/LegacySrcOrDestAttributesInner.java src/main/java/com/fireblocks/sdk/model/LimitExecutionRequestDetails.java src/main/java/com/fireblocks/sdk/model/LimitExecutionResponseDetails.java +src/main/java/com/fireblocks/sdk/model/LimitTypeDetails.java src/main/java/com/fireblocks/sdk/model/ListAssetsResponse.java src/main/java/com/fireblocks/sdk/model/ListBlockchainsResponse.java src/main/java/com/fireblocks/sdk/model/ListOwnedCollectionsResponse.java src/main/java/com/fireblocks/sdk/model/ListOwnedTokensResponse.java +src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddress.java +src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestination.java src/main/java/com/fireblocks/sdk/model/Manifest.java src/main/java/com/fireblocks/sdk/model/MarketExecutionRequestDetails.java src/main/java/com/fireblocks/sdk/model/MarketExecutionResponseDetails.java src/main/java/com/fireblocks/sdk/model/MarketRequoteRequestDetails.java +src/main/java/com/fireblocks/sdk/model/MarketTypeDetails.java src/main/java/com/fireblocks/sdk/model/MediaEntityResponse.java src/main/java/com/fireblocks/sdk/model/MergeStakeAccountsRequest.java src/main/java/com/fireblocks/sdk/model/MergeStakeAccountsResponse.java +src/main/java/com/fireblocks/sdk/model/MobileMoneyAddress.java +src/main/java/com/fireblocks/sdk/model/MobileMoneyDestination.java src/main/java/com/fireblocks/sdk/model/ModifySigningKeyAgentIdDto.java src/main/java/com/fireblocks/sdk/model/ModifySigningKeyDto.java src/main/java/com/fireblocks/sdk/model/ModifyValidationKeyDto.java @@ -1324,6 +1449,7 @@ src/main/java/com/fireblocks/sdk/model/OneTimeAddressAccount.java src/main/java/com/fireblocks/sdk/model/OneTimeAddressReference.java src/main/java/com/fireblocks/sdk/model/OperationExecutionFailure.java src/main/java/com/fireblocks/sdk/model/OrderDetails.java +src/main/java/com/fireblocks/sdk/model/OrderSide.java src/main/java/com/fireblocks/sdk/model/OrderStatus.java src/main/java/com/fireblocks/sdk/model/OrderSummary.java src/main/java/com/fireblocks/sdk/model/PaginatedAddressResponse.java @@ -1345,6 +1471,7 @@ src/main/java/com/fireblocks/sdk/model/PaymentAccount.java src/main/java/com/fireblocks/sdk/model/PaymentAccountResponse.java src/main/java/com/fireblocks/sdk/model/PaymentAccountType.java src/main/java/com/fireblocks/sdk/model/PaymentInstructions.java +src/main/java/com/fireblocks/sdk/model/PaymentInstructionsDetails.java src/main/java/com/fireblocks/sdk/model/PayoutInitMethod.java src/main/java/com/fireblocks/sdk/model/PayoutInstruction.java src/main/java/com/fireblocks/sdk/model/PayoutInstructionResponse.java @@ -1356,11 +1483,14 @@ src/main/java/com/fireblocks/sdk/model/PeerAdapterInfo.java src/main/java/com/fireblocks/sdk/model/PeerType.java src/main/java/com/fireblocks/sdk/model/PersonalIdentification.java src/main/java/com/fireblocks/sdk/model/PersonalIdentificationFullName.java +src/main/java/com/fireblocks/sdk/model/PixAddress.java +src/main/java/com/fireblocks/sdk/model/PixDestination.java src/main/java/com/fireblocks/sdk/model/PixPaymentInfo.java src/main/java/com/fireblocks/sdk/model/PlatformAccount.java src/main/java/com/fireblocks/sdk/model/Players.java src/main/java/com/fireblocks/sdk/model/PolicyAndValidationResponse.java src/main/java/com/fireblocks/sdk/model/PolicyCheckResult.java +src/main/java/com/fireblocks/sdk/model/PolicyCurrency.java src/main/java/com/fireblocks/sdk/model/PolicyMetadata.java src/main/java/com/fireblocks/sdk/model/PolicyOperator.java src/main/java/com/fireblocks/sdk/model/PolicyResponse.java @@ -1368,8 +1498,11 @@ src/main/java/com/fireblocks/sdk/model/PolicyRule.java src/main/java/com/fireblocks/sdk/model/PolicyRuleCheckResult.java src/main/java/com/fireblocks/sdk/model/PolicyRuleError.java src/main/java/com/fireblocks/sdk/model/PolicyStatus.java +src/main/java/com/fireblocks/sdk/model/PolicyTag.java src/main/java/com/fireblocks/sdk/model/PolicyType.java src/main/java/com/fireblocks/sdk/model/PolicyValidation.java +src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum.java +src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2.java src/main/java/com/fireblocks/sdk/model/PostOrderSettlement.java src/main/java/com/fireblocks/sdk/model/PostalAddress.java src/main/java/com/fireblocks/sdk/model/PreScreening.java @@ -1384,11 +1517,13 @@ src/main/java/com/fireblocks/sdk/model/PublishResult.java src/main/java/com/fireblocks/sdk/model/Quote.java src/main/java/com/fireblocks/sdk/model/QuoteExecutionRequestDetails.java src/main/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetails.java +src/main/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetails.java src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetails.java -src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.java src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetails.java -src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.java +src/main/java/com/fireblocks/sdk/model/QuotePropertiesDetails.java src/main/java/com/fireblocks/sdk/model/QuotesResponse.java +src/main/java/com/fireblocks/sdk/model/ReQuoteDetails.java +src/main/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuote.java src/main/java/com/fireblocks/sdk/model/ReadAbiFunction.java src/main/java/com/fireblocks/sdk/model/ReadCallFunctionDto.java src/main/java/com/fireblocks/sdk/model/ReadCallFunctionDtoAbiFunction.java @@ -1417,8 +1552,14 @@ src/main/java/com/fireblocks/sdk/model/RespondToConnectionRequest.java src/main/java/com/fireblocks/sdk/model/RetryRequoteRequestDetails.java src/main/java/com/fireblocks/sdk/model/RewardInfo.java src/main/java/com/fireblocks/sdk/model/RewardsInfo.java +src/main/java/com/fireblocks/sdk/model/SEPAAddress.java +src/main/java/com/fireblocks/sdk/model/SEPADestination.java src/main/java/com/fireblocks/sdk/model/SOLAccount.java src/main/java/com/fireblocks/sdk/model/SOLAccountWithValue.java +src/main/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnum.java +src/main/java/com/fireblocks/sdk/model/ScreeningAmlAlert.java +src/main/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRule.java +src/main/java/com/fireblocks/sdk/model/ScreeningAmlResult.java src/main/java/com/fireblocks/sdk/model/ScreeningConfigurationsRequest.java src/main/java/com/fireblocks/sdk/model/ScreeningMetadataConfig.java src/main/java/com/fireblocks/sdk/model/ScreeningOperationExecution.java @@ -1427,9 +1568,20 @@ src/main/java/com/fireblocks/sdk/model/ScreeningOperationFailure.java src/main/java/com/fireblocks/sdk/model/ScreeningOperationType.java src/main/java/com/fireblocks/sdk/model/ScreeningPolicyResponse.java src/main/java/com/fireblocks/sdk/model/ScreeningProviderRulesConfigurationResponse.java +src/main/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnum.java +src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkAmount.java +src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecision.java +src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRule.java +src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRule.java +src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRule.java +src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBase.java +src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRule.java +src/main/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRule.java +src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleResult.java src/main/java/com/fireblocks/sdk/model/ScreeningUpdateConfigurations.java src/main/java/com/fireblocks/sdk/model/ScreeningValidationFailure.java src/main/java/com/fireblocks/sdk/model/ScreeningVerdict.java +src/main/java/com/fireblocks/sdk/model/ScreeningVerdictEnum.java src/main/java/com/fireblocks/sdk/model/ScreeningVerdictMatchedRule.java src/main/java/com/fireblocks/sdk/model/SearchNetworkIdsResponse.java src/main/java/com/fireblocks/sdk/model/SepaPaymentInfo.java @@ -1495,12 +1647,15 @@ src/main/java/com/fireblocks/sdk/model/SolanaConfig.java src/main/java/com/fireblocks/sdk/model/SolanaInstruction.java src/main/java/com/fireblocks/sdk/model/SolanaInstructionWithValue.java src/main/java/com/fireblocks/sdk/model/SolanaSimpleCreateParams.java +src/main/java/com/fireblocks/sdk/model/SourceConfig.java src/main/java/com/fireblocks/sdk/model/SourceTransferPeerPath.java src/main/java/com/fireblocks/sdk/model/SourceTransferPeerPathResponse.java src/main/java/com/fireblocks/sdk/model/SpamOwnershipResponse.java src/main/java/com/fireblocks/sdk/model/SpamTokenResponse.java +src/main/java/com/fireblocks/sdk/model/SpeiAddress.java src/main/java/com/fireblocks/sdk/model/SpeiAdvancedPaymentInfo.java src/main/java/com/fireblocks/sdk/model/SpeiBasicPaymentInfo.java +src/main/java/com/fireblocks/sdk/model/SpeiDestination.java src/main/java/com/fireblocks/sdk/model/SplitRequest.java src/main/java/com/fireblocks/sdk/model/SplitResponse.java src/main/java/com/fireblocks/sdk/model/StakeRequest.java @@ -1508,8 +1663,34 @@ src/main/java/com/fireblocks/sdk/model/StakeResponse.java src/main/java/com/fireblocks/sdk/model/StakingProvider.java src/main/java/com/fireblocks/sdk/model/Status.java src/main/java/com/fireblocks/sdk/model/StellarRippleCreateParamsDto.java +src/main/java/com/fireblocks/sdk/model/SwiftAddress.java +src/main/java/com/fireblocks/sdk/model/SwiftDestination.java src/main/java/com/fireblocks/sdk/model/SystemMessageInfo.java +src/main/java/com/fireblocks/sdk/model/TRLinkAmount.java +src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmAction.java +src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnum.java +src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecision.java +src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmRule.java +src/main/java/com/fireblocks/sdk/model/TRLinkPostScreeningRule.java +src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningAction.java +src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnum.java +src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningRule.java +src/main/java/com/fireblocks/sdk/model/TRLinkProviderResult.java +src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule.java +src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2.java +src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResult.java +src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayload.java +src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatus.java +src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnum.java +src/main/java/com/fireblocks/sdk/model/TRLinkResult.java +src/main/java/com/fireblocks/sdk/model/TRLinkResultFullPayload.java +src/main/java/com/fireblocks/sdk/model/TRLinkRuleBase.java +src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatus.java +src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnum.java +src/main/java/com/fireblocks/sdk/model/TRLinkVerdict.java +src/main/java/com/fireblocks/sdk/model/TRLinkVerdictEnum.java src/main/java/com/fireblocks/sdk/model/Tag.java +src/main/java/com/fireblocks/sdk/model/TagAttachmentOperationAction.java src/main/java/com/fireblocks/sdk/model/TagsPagedResponse.java src/main/java/com/fireblocks/sdk/model/Task.java src/main/java/com/fireblocks/sdk/model/TemplatesPaginatedResponse.java @@ -1536,8 +1717,10 @@ src/main/java/com/fireblocks/sdk/model/TradingErrorResponse.java src/main/java/com/fireblocks/sdk/model/TradingErrorResponseError.java src/main/java/com/fireblocks/sdk/model/TradingProvider.java src/main/java/com/fireblocks/sdk/model/Transaction.java +src/main/java/com/fireblocks/sdk/model/TransactionDirection.java src/main/java/com/fireblocks/sdk/model/TransactionFee.java src/main/java/com/fireblocks/sdk/model/TransactionOperation.java +src/main/java/com/fireblocks/sdk/model/TransactionOperationEnum.java src/main/java/com/fireblocks/sdk/model/TransactionReceiptResponse.java src/main/java/com/fireblocks/sdk/model/TransactionRequest.java src/main/java/com/fireblocks/sdk/model/TransactionRequestAmount.java @@ -1564,18 +1747,23 @@ src/main/java/com/fireblocks/sdk/model/TransferOperationPreviewOutput.java src/main/java/com/fireblocks/sdk/model/TransferOperationType.java src/main/java/com/fireblocks/sdk/model/TransferPeerPathSubType.java src/main/java/com/fireblocks/sdk/model/TransferPeerPathType.java +src/main/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnum.java +src/main/java/com/fireblocks/sdk/model/TransferPeerTypeEnum.java src/main/java/com/fireblocks/sdk/model/TransferRail.java src/main/java/com/fireblocks/sdk/model/TransferReceipt.java src/main/java/com/fireblocks/sdk/model/TransferValidationFailure.java +src/main/java/com/fireblocks/sdk/model/TravelRuleActionEnum.java src/main/java/com/fireblocks/sdk/model/TravelRuleAddress.java src/main/java/com/fireblocks/sdk/model/TravelRuleCreateTransactionRequest.java src/main/java/com/fireblocks/sdk/model/TravelRuleDateAndPlaceOfBirth.java +src/main/java/com/fireblocks/sdk/model/TravelRuleDirectionEnum.java src/main/java/com/fireblocks/sdk/model/TravelRuleGeographicAddress.java src/main/java/com/fireblocks/sdk/model/TravelRuleGetAllVASPsResponse.java src/main/java/com/fireblocks/sdk/model/TravelRuleIssuer.java src/main/java/com/fireblocks/sdk/model/TravelRuleIssuers.java src/main/java/com/fireblocks/sdk/model/TravelRuleLegalPerson.java src/main/java/com/fireblocks/sdk/model/TravelRuleLegalPersonNameIdentifier.java +src/main/java/com/fireblocks/sdk/model/TravelRuleMatchedRule.java src/main/java/com/fireblocks/sdk/model/TravelRuleNationalIdentification.java src/main/java/com/fireblocks/sdk/model/TravelRuleNaturalNameIdentifier.java src/main/java/com/fireblocks/sdk/model/TravelRuleNaturalPerson.java @@ -1584,6 +1772,9 @@ src/main/java/com/fireblocks/sdk/model/TravelRuleOwnershipProof.java src/main/java/com/fireblocks/sdk/model/TravelRulePerson.java src/main/java/com/fireblocks/sdk/model/TravelRulePiiIVMS.java src/main/java/com/fireblocks/sdk/model/TravelRulePolicyRuleResponse.java +src/main/java/com/fireblocks/sdk/model/TravelRulePrescreeningRule.java +src/main/java/com/fireblocks/sdk/model/TravelRuleResult.java +src/main/java/com/fireblocks/sdk/model/TravelRuleStatusEnum.java src/main/java/com/fireblocks/sdk/model/TravelRuleTransactionBlockchainInfo.java src/main/java/com/fireblocks/sdk/model/TravelRuleUpdateVASPDetails.java src/main/java/com/fireblocks/sdk/model/TravelRuleVASP.java @@ -1601,7 +1792,10 @@ src/main/java/com/fireblocks/sdk/model/TravelRuleValidatePiiIVMS.java src/main/java/com/fireblocks/sdk/model/TravelRuleValidateTransactionRequest.java src/main/java/com/fireblocks/sdk/model/TravelRuleValidateTransactionResponse.java src/main/java/com/fireblocks/sdk/model/TravelRuleVaspForVault.java +src/main/java/com/fireblocks/sdk/model/TravelRuleVerdictEnum.java src/main/java/com/fireblocks/sdk/model/TxLog.java +src/main/java/com/fireblocks/sdk/model/USWireAddress.java +src/main/java/com/fireblocks/sdk/model/USWireDestination.java src/main/java/com/fireblocks/sdk/model/UnfreezeTransactionResponse.java src/main/java/com/fireblocks/sdk/model/UnmanagedWallet.java src/main/java/com/fireblocks/sdk/model/UnspentInput.java @@ -1631,8 +1825,13 @@ src/main/java/com/fireblocks/sdk/model/ValidatedTransactionsForRescan.java src/main/java/com/fireblocks/sdk/model/ValidationKeyDto.java src/main/java/com/fireblocks/sdk/model/Validator.java src/main/java/com/fireblocks/sdk/model/VaultAccount.java +src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperation.java +src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperation.java +src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperation.java src/main/java/com/fireblocks/sdk/model/VaultAccountsPagedResponse.java src/main/java/com/fireblocks/sdk/model/VaultAccountsPagedResponsePaging.java +src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequest.java +src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponse.java src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentsRequest.java src/main/java/com/fireblocks/sdk/model/VaultActionStatus.java src/main/java/com/fireblocks/sdk/model/VaultAsset.java @@ -1644,6 +1843,7 @@ src/main/java/com/fireblocks/sdk/model/WalletAsset.java src/main/java/com/fireblocks/sdk/model/WalletAssetAdditionalInfo.java src/main/java/com/fireblocks/sdk/model/Webhook.java src/main/java/com/fireblocks/sdk/model/WebhookEvent.java +src/main/java/com/fireblocks/sdk/model/WebhookMetric.java src/main/java/com/fireblocks/sdk/model/WebhookPaginatedResponse.java src/main/java/com/fireblocks/sdk/model/WithdrawRequest.java src/main/java/com/fireblocks/sdk/model/WorkflowConfigStatus.java @@ -1711,6 +1911,7 @@ src/test/java/com/fireblocks/sdk/model/AbiFunctionTest.java src/test/java/com/fireblocks/sdk/model/AccessTypeTest.java src/test/java/com/fireblocks/sdk/model/AccountAccessTest.java src/test/java/com/fireblocks/sdk/model/AccountBaseTest.java +src/test/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetailsTest.java src/test/java/com/fireblocks/sdk/model/AccountBasedAccessProviderTest.java src/test/java/com/fireblocks/sdk/model/AccountConfigTest.java src/test/java/com/fireblocks/sdk/model/AccountHolderDetailsTest.java @@ -1720,6 +1921,9 @@ src/test/java/com/fireblocks/sdk/model/AccountReferenceTest.java src/test/java/com/fireblocks/sdk/model/AccountTest.java src/test/java/com/fireblocks/sdk/model/AccountType2Test.java src/test/java/com/fireblocks/sdk/model/AccountTypeTest.java +src/test/java/com/fireblocks/sdk/model/AchAccountTypeTest.java +src/test/java/com/fireblocks/sdk/model/AchAddressTest.java +src/test/java/com/fireblocks/sdk/model/AchDestinationTest.java src/test/java/com/fireblocks/sdk/model/AchPaymentInfoTest.java src/test/java/com/fireblocks/sdk/model/AdapterProcessingResultTest.java src/test/java/com/fireblocks/sdk/model/AddAbiRequestDtoTest.java @@ -1734,15 +1938,24 @@ src/test/java/com/fireblocks/sdk/model/AdditionalInfoRequestAdditionalInfoTest.j src/test/java/com/fireblocks/sdk/model/AdditionalInfoRequestTest.java src/test/java/com/fireblocks/sdk/model/AdditionalInfoTest.java src/test/java/com/fireblocks/sdk/model/AddressNotAvailableErrorTest.java +src/test/java/com/fireblocks/sdk/model/AlertExposureTypeEnumTest.java +src/test/java/com/fireblocks/sdk/model/AlertLevelEnumTest.java +src/test/java/com/fireblocks/sdk/model/AmlAlertTest.java +src/test/java/com/fireblocks/sdk/model/AmlMatchedRuleTest.java src/test/java/com/fireblocks/sdk/model/AmlRegistrationResultFullPayloadTest.java src/test/java/com/fireblocks/sdk/model/AmlRegistrationResultTest.java +src/test/java/com/fireblocks/sdk/model/AmlResultTest.java src/test/java/com/fireblocks/sdk/model/AmlScreeningResultTest.java +src/test/java/com/fireblocks/sdk/model/AmlStatusEnumTest.java src/test/java/com/fireblocks/sdk/model/AmlVerdictManualRequestTest.java src/test/java/com/fireblocks/sdk/model/AmlVerdictManualResponseTest.java src/test/java/com/fireblocks/sdk/model/AmountAndChainDescriptorTest.java +src/test/java/com/fireblocks/sdk/model/AmountConfigCurrencyTest.java +src/test/java/com/fireblocks/sdk/model/AmountConfigTest.java src/test/java/com/fireblocks/sdk/model/AmountInfoTest.java -src/test/java/com/fireblocks/sdk/model/AmountOverTimeConfigRangeTest.java src/test/java/com/fireblocks/sdk/model/AmountOverTimeConfigTest.java +src/test/java/com/fireblocks/sdk/model/AmountRangeMinMax2Test.java +src/test/java/com/fireblocks/sdk/model/AmountRangeMinMaxTest.java src/test/java/com/fireblocks/sdk/model/AmountRangeTest.java src/test/java/com/fireblocks/sdk/model/ApiKeyTest.java src/test/java/com/fireblocks/sdk/model/ApiKeysPaginatedResponseTest.java @@ -1917,6 +2130,7 @@ src/test/java/com/fireblocks/sdk/model/CreateWalletRequestTest.java src/test/java/com/fireblocks/sdk/model/CreateWebhookRequestTest.java src/test/java/com/fireblocks/sdk/model/CreateWorkflowExecutionRequestParamsInnerTest.java src/test/java/com/fireblocks/sdk/model/CustomRoutingDestTest.java +src/test/java/com/fireblocks/sdk/model/DAppAddressConfigTest.java src/test/java/com/fireblocks/sdk/model/DVPSettlementTest.java src/test/java/com/fireblocks/sdk/model/DefaultNetworkRoutingDestTest.java src/test/java/com/fireblocks/sdk/model/DelegationSummaryTest.java @@ -1935,6 +2149,7 @@ src/test/java/com/fireblocks/sdk/model/DestinationConfigTest.java src/test/java/com/fireblocks/sdk/model/DestinationTest.java src/test/java/com/fireblocks/sdk/model/DestinationTransferPeerPathResponseTest.java src/test/java/com/fireblocks/sdk/model/DestinationTransferPeerPathTest.java +src/test/java/com/fireblocks/sdk/model/DirectAccessProviderDetailsTest.java src/test/java/com/fireblocks/sdk/model/DirectAccessProviderTest.java src/test/java/com/fireblocks/sdk/model/DirectAccessTest.java src/test/java/com/fireblocks/sdk/model/DisbursementAmountInstructionTest.java @@ -2012,11 +2227,13 @@ src/test/java/com/fireblocks/sdk/model/FeeBreakdownTest.java src/test/java/com/fireblocks/sdk/model/FeeInfoTest.java src/test/java/com/fireblocks/sdk/model/FeeLevelTest.java src/test/java/com/fireblocks/sdk/model/FeePayerInfoTest.java +src/test/java/com/fireblocks/sdk/model/FeePropertiesDetailsTest.java src/test/java/com/fireblocks/sdk/model/FeeTest.java src/test/java/com/fireblocks/sdk/model/FetchAbiRequestDtoTest.java src/test/java/com/fireblocks/sdk/model/FiatAccountTest.java src/test/java/com/fireblocks/sdk/model/FiatAccountTypeTest.java src/test/java/com/fireblocks/sdk/model/FiatAssetTest.java +src/test/java/com/fireblocks/sdk/model/FiatDestinationTest.java src/test/java/com/fireblocks/sdk/model/FiatTransferTest.java src/test/java/com/fireblocks/sdk/model/FixedFeeTest.java src/test/java/com/fireblocks/sdk/model/FreezeTransactionResponseTest.java @@ -2051,6 +2268,8 @@ src/test/java/com/fireblocks/sdk/model/GetValidationKeyResponseDtoTest.java src/test/java/com/fireblocks/sdk/model/GetWhitelistIpAddressesResponseTest.java src/test/java/com/fireblocks/sdk/model/GetWorkspaceStatusResponseTest.java src/test/java/com/fireblocks/sdk/model/HttpContractDoesNotExistErrorTest.java +src/test/java/com/fireblocks/sdk/model/IbanAddressTest.java +src/test/java/com/fireblocks/sdk/model/IbanDestinationTest.java src/test/java/com/fireblocks/sdk/model/IbanPaymentInfoTest.java src/test/java/com/fireblocks/sdk/model/IdentificationTest.java src/test/java/com/fireblocks/sdk/model/IdlTypeTest.java @@ -2098,17 +2317,23 @@ src/test/java/com/fireblocks/sdk/model/LegacyPublishResultTest.java src/test/java/com/fireblocks/sdk/model/LegacySrcOrDestAttributesInnerTest.java src/test/java/com/fireblocks/sdk/model/LimitExecutionRequestDetailsTest.java src/test/java/com/fireblocks/sdk/model/LimitExecutionResponseDetailsTest.java +src/test/java/com/fireblocks/sdk/model/LimitTypeDetailsTest.java src/test/java/com/fireblocks/sdk/model/ListAssetsResponseTest.java src/test/java/com/fireblocks/sdk/model/ListBlockchainsResponseTest.java src/test/java/com/fireblocks/sdk/model/ListOwnedCollectionsResponseTest.java src/test/java/com/fireblocks/sdk/model/ListOwnedTokensResponseTest.java +src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddressTest.java +src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestinationTest.java src/test/java/com/fireblocks/sdk/model/ManifestTest.java src/test/java/com/fireblocks/sdk/model/MarketExecutionRequestDetailsTest.java src/test/java/com/fireblocks/sdk/model/MarketExecutionResponseDetailsTest.java src/test/java/com/fireblocks/sdk/model/MarketRequoteRequestDetailsTest.java +src/test/java/com/fireblocks/sdk/model/MarketTypeDetailsTest.java src/test/java/com/fireblocks/sdk/model/MediaEntityResponseTest.java src/test/java/com/fireblocks/sdk/model/MergeStakeAccountsRequestTest.java src/test/java/com/fireblocks/sdk/model/MergeStakeAccountsResponseTest.java +src/test/java/com/fireblocks/sdk/model/MobileMoneyAddressTest.java +src/test/java/com/fireblocks/sdk/model/MobileMoneyDestinationTest.java src/test/java/com/fireblocks/sdk/model/ModifySigningKeyAgentIdDtoTest.java src/test/java/com/fireblocks/sdk/model/ModifySigningKeyDtoTest.java src/test/java/com/fireblocks/sdk/model/ModifyValidationKeyDtoTest.java @@ -2139,6 +2364,7 @@ src/test/java/com/fireblocks/sdk/model/OneTimeAddressReferenceTest.java src/test/java/com/fireblocks/sdk/model/OneTimeAddressTest.java src/test/java/com/fireblocks/sdk/model/OperationExecutionFailureTest.java src/test/java/com/fireblocks/sdk/model/OrderDetailsTest.java +src/test/java/com/fireblocks/sdk/model/OrderSideTest.java src/test/java/com/fireblocks/sdk/model/OrderStatusTest.java src/test/java/com/fireblocks/sdk/model/OrderSummaryTest.java src/test/java/com/fireblocks/sdk/model/PaginatedAddressResponsePagingTest.java @@ -2159,6 +2385,7 @@ src/test/java/com/fireblocks/sdk/model/PayeeAccountTypeTest.java src/test/java/com/fireblocks/sdk/model/PaymentAccountResponseTest.java src/test/java/com/fireblocks/sdk/model/PaymentAccountTest.java src/test/java/com/fireblocks/sdk/model/PaymentAccountTypeTest.java +src/test/java/com/fireblocks/sdk/model/PaymentInstructionsDetailsTest.java src/test/java/com/fireblocks/sdk/model/PaymentInstructionsTest.java src/test/java/com/fireblocks/sdk/model/PayoutInitMethodTest.java src/test/java/com/fireblocks/sdk/model/PayoutInstructionResponseTest.java @@ -2171,11 +2398,14 @@ src/test/java/com/fireblocks/sdk/model/PeerAdapterInfoTest.java src/test/java/com/fireblocks/sdk/model/PeerTypeTest.java src/test/java/com/fireblocks/sdk/model/PersonalIdentificationFullNameTest.java src/test/java/com/fireblocks/sdk/model/PersonalIdentificationTest.java +src/test/java/com/fireblocks/sdk/model/PixAddressTest.java +src/test/java/com/fireblocks/sdk/model/PixDestinationTest.java src/test/java/com/fireblocks/sdk/model/PixPaymentInfoTest.java src/test/java/com/fireblocks/sdk/model/PlatformAccountTest.java src/test/java/com/fireblocks/sdk/model/PlayersTest.java src/test/java/com/fireblocks/sdk/model/PolicyAndValidationResponseTest.java src/test/java/com/fireblocks/sdk/model/PolicyCheckResultTest.java +src/test/java/com/fireblocks/sdk/model/PolicyCurrencyTest.java src/test/java/com/fireblocks/sdk/model/PolicyMetadataTest.java src/test/java/com/fireblocks/sdk/model/PolicyOperatorTest.java src/test/java/com/fireblocks/sdk/model/PolicyResponseTest.java @@ -2183,8 +2413,11 @@ src/test/java/com/fireblocks/sdk/model/PolicyRuleCheckResultTest.java src/test/java/com/fireblocks/sdk/model/PolicyRuleErrorTest.java src/test/java/com/fireblocks/sdk/model/PolicyRuleTest.java src/test/java/com/fireblocks/sdk/model/PolicyStatusTest.java +src/test/java/com/fireblocks/sdk/model/PolicyTagTest.java src/test/java/com/fireblocks/sdk/model/PolicyTypeTest.java src/test/java/com/fireblocks/sdk/model/PolicyValidationTest.java +src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2Test.java +src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnumTest.java src/test/java/com/fireblocks/sdk/model/PostOrderSettlementTest.java src/test/java/com/fireblocks/sdk/model/PostalAddressTest.java src/test/java/com/fireblocks/sdk/model/PreScreeningTest.java @@ -2198,12 +2431,14 @@ src/test/java/com/fireblocks/sdk/model/PublishDraftRequestTest.java src/test/java/com/fireblocks/sdk/model/PublishResultTest.java src/test/java/com/fireblocks/sdk/model/QuoteExecutionRequestDetailsTest.java src/test/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetailsTest.java -src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteTest.java +src/test/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetailsTest.java src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsTest.java -src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteTest.java src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsTest.java +src/test/java/com/fireblocks/sdk/model/QuotePropertiesDetailsTest.java src/test/java/com/fireblocks/sdk/model/QuoteTest.java src/test/java/com/fireblocks/sdk/model/QuotesResponseTest.java +src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuoteTest.java +src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsTest.java src/test/java/com/fireblocks/sdk/model/ReadAbiFunctionTest.java src/test/java/com/fireblocks/sdk/model/ReadCallFunctionDtoAbiFunctionTest.java src/test/java/com/fireblocks/sdk/model/ReadCallFunctionDtoTest.java @@ -2232,8 +2467,14 @@ src/test/java/com/fireblocks/sdk/model/RespondToConnectionRequestTest.java src/test/java/com/fireblocks/sdk/model/RetryRequoteRequestDetailsTest.java src/test/java/com/fireblocks/sdk/model/RewardInfoTest.java src/test/java/com/fireblocks/sdk/model/RewardsInfoTest.java +src/test/java/com/fireblocks/sdk/model/SEPAAddressTest.java +src/test/java/com/fireblocks/sdk/model/SEPADestinationTest.java src/test/java/com/fireblocks/sdk/model/SOLAccountTest.java src/test/java/com/fireblocks/sdk/model/SOLAccountWithValueTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnumTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningAmlAlertTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRuleTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningAmlResultTest.java src/test/java/com/fireblocks/sdk/model/ScreeningConfigurationsRequestTest.java src/test/java/com/fireblocks/sdk/model/ScreeningMetadataConfigTest.java src/test/java/com/fireblocks/sdk/model/ScreeningOperationExecutionOutputTest.java @@ -2242,8 +2483,19 @@ src/test/java/com/fireblocks/sdk/model/ScreeningOperationFailureTest.java src/test/java/com/fireblocks/sdk/model/ScreeningOperationTypeTest.java src/test/java/com/fireblocks/sdk/model/ScreeningPolicyResponseTest.java src/test/java/com/fireblocks/sdk/model/ScreeningProviderRulesConfigurationResponseTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnumTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkAmountTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecisionTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRuleTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRuleTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRuleTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBaseTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRuleTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRuleTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleResultTest.java src/test/java/com/fireblocks/sdk/model/ScreeningUpdateConfigurationsTest.java src/test/java/com/fireblocks/sdk/model/ScreeningValidationFailureTest.java +src/test/java/com/fireblocks/sdk/model/ScreeningVerdictEnumTest.java src/test/java/com/fireblocks/sdk/model/ScreeningVerdictMatchedRuleTest.java src/test/java/com/fireblocks/sdk/model/ScreeningVerdictTest.java src/test/java/com/fireblocks/sdk/model/SearchNetworkIdsResponseTest.java @@ -2310,12 +2562,15 @@ src/test/java/com/fireblocks/sdk/model/SolanaConfigTest.java src/test/java/com/fireblocks/sdk/model/SolanaInstructionTest.java src/test/java/com/fireblocks/sdk/model/SolanaInstructionWithValueTest.java src/test/java/com/fireblocks/sdk/model/SolanaSimpleCreateParamsTest.java +src/test/java/com/fireblocks/sdk/model/SourceConfigTest.java src/test/java/com/fireblocks/sdk/model/SourceTransferPeerPathResponseTest.java src/test/java/com/fireblocks/sdk/model/SourceTransferPeerPathTest.java src/test/java/com/fireblocks/sdk/model/SpamOwnershipResponseTest.java src/test/java/com/fireblocks/sdk/model/SpamTokenResponseTest.java +src/test/java/com/fireblocks/sdk/model/SpeiAddressTest.java src/test/java/com/fireblocks/sdk/model/SpeiAdvancedPaymentInfoTest.java src/test/java/com/fireblocks/sdk/model/SpeiBasicPaymentInfoTest.java +src/test/java/com/fireblocks/sdk/model/SpeiDestinationTest.java src/test/java/com/fireblocks/sdk/model/SplitRequestTest.java src/test/java/com/fireblocks/sdk/model/SplitResponseTest.java src/test/java/com/fireblocks/sdk/model/StakeRequestTest.java @@ -2323,7 +2578,33 @@ src/test/java/com/fireblocks/sdk/model/StakeResponseTest.java src/test/java/com/fireblocks/sdk/model/StakingProviderTest.java src/test/java/com/fireblocks/sdk/model/StatusTest.java src/test/java/com/fireblocks/sdk/model/StellarRippleCreateParamsDtoTest.java +src/test/java/com/fireblocks/sdk/model/SwiftAddressTest.java +src/test/java/com/fireblocks/sdk/model/SwiftDestinationTest.java src/test/java/com/fireblocks/sdk/model/SystemMessageInfoTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkAmountTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnumTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecisionTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmRuleTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkPostScreeningRuleTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnumTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningRuleTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2Test.java +src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRuleTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayloadTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnumTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkResultFullPayloadTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkResultTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkRuleBaseTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnumTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkVerdictEnumTest.java +src/test/java/com/fireblocks/sdk/model/TRLinkVerdictTest.java +src/test/java/com/fireblocks/sdk/model/TagAttachmentOperationActionTest.java src/test/java/com/fireblocks/sdk/model/TagTest.java src/test/java/com/fireblocks/sdk/model/TagsPagedResponseTest.java src/test/java/com/fireblocks/sdk/model/TaskTest.java @@ -2350,7 +2631,9 @@ src/test/java/com/fireblocks/sdk/model/TradingAccountTypeTest.java src/test/java/com/fireblocks/sdk/model/TradingErrorResponseErrorTest.java src/test/java/com/fireblocks/sdk/model/TradingErrorResponseTest.java src/test/java/com/fireblocks/sdk/model/TradingProviderTest.java +src/test/java/com/fireblocks/sdk/model/TransactionDirectionTest.java src/test/java/com/fireblocks/sdk/model/TransactionFeeTest.java +src/test/java/com/fireblocks/sdk/model/TransactionOperationEnumTest.java src/test/java/com/fireblocks/sdk/model/TransactionOperationTest.java src/test/java/com/fireblocks/sdk/model/TransactionReceiptResponseTest.java src/test/java/com/fireblocks/sdk/model/TransactionRequestAmountTest.java @@ -2379,18 +2662,23 @@ src/test/java/com/fireblocks/sdk/model/TransferOperationPreviewTest.java src/test/java/com/fireblocks/sdk/model/TransferOperationTypeTest.java src/test/java/com/fireblocks/sdk/model/TransferPeerPathSubTypeTest.java src/test/java/com/fireblocks/sdk/model/TransferPeerPathTypeTest.java +src/test/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnumTest.java +src/test/java/com/fireblocks/sdk/model/TransferPeerTypeEnumTest.java src/test/java/com/fireblocks/sdk/model/TransferRailTest.java src/test/java/com/fireblocks/sdk/model/TransferReceiptTest.java src/test/java/com/fireblocks/sdk/model/TransferValidationFailureTest.java +src/test/java/com/fireblocks/sdk/model/TravelRuleActionEnumTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleAddressTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleCreateTransactionRequestTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleDateAndPlaceOfBirthTest.java +src/test/java/com/fireblocks/sdk/model/TravelRuleDirectionEnumTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleGeographicAddressTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleGetAllVASPsResponseTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleIssuerTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleIssuersTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleLegalPersonNameIdentifierTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleLegalPersonTest.java +src/test/java/com/fireblocks/sdk/model/TravelRuleMatchedRuleTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleNationalIdentificationTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleNaturalNameIdentifierTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleNaturalPersonNameIdentifierTest.java @@ -2399,6 +2687,9 @@ src/test/java/com/fireblocks/sdk/model/TravelRuleOwnershipProofTest.java src/test/java/com/fireblocks/sdk/model/TravelRulePersonTest.java src/test/java/com/fireblocks/sdk/model/TravelRulePiiIVMSTest.java src/test/java/com/fireblocks/sdk/model/TravelRulePolicyRuleResponseTest.java +src/test/java/com/fireblocks/sdk/model/TravelRulePrescreeningRuleTest.java +src/test/java/com/fireblocks/sdk/model/TravelRuleResultTest.java +src/test/java/com/fireblocks/sdk/model/TravelRuleStatusEnumTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleTransactionBlockchainInfoTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleUpdateVASPDetailsTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleVASPTest.java @@ -2416,7 +2707,10 @@ src/test/java/com/fireblocks/sdk/model/TravelRuleValidatePiiIVMSTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleValidateTransactionRequestTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleValidateTransactionResponseTest.java src/test/java/com/fireblocks/sdk/model/TravelRuleVaspForVaultTest.java +src/test/java/com/fireblocks/sdk/model/TravelRuleVerdictEnumTest.java src/test/java/com/fireblocks/sdk/model/TxLogTest.java +src/test/java/com/fireblocks/sdk/model/USWireAddressTest.java +src/test/java/com/fireblocks/sdk/model/USWireDestinationTest.java src/test/java/com/fireblocks/sdk/model/UnfreezeTransactionResponseTest.java src/test/java/com/fireblocks/sdk/model/UnmanagedWalletTest.java src/test/java/com/fireblocks/sdk/model/UnspentInputTest.java @@ -2445,9 +2739,14 @@ src/test/java/com/fireblocks/sdk/model/ValidateLayerZeroChannelResponseTest.java src/test/java/com/fireblocks/sdk/model/ValidatedTransactionsForRescanTest.java src/test/java/com/fireblocks/sdk/model/ValidationKeyDtoTest.java src/test/java/com/fireblocks/sdk/model/ValidatorTest.java +src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperationTest.java +src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperationTest.java +src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperationTest.java src/test/java/com/fireblocks/sdk/model/VaultAccountTest.java src/test/java/com/fireblocks/sdk/model/VaultAccountsPagedResponsePagingTest.java src/test/java/com/fireblocks/sdk/model/VaultAccountsPagedResponseTest.java +src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequestTest.java +src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponseTest.java src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentsRequestTest.java src/test/java/com/fireblocks/sdk/model/VaultActionStatusTest.java src/test/java/com/fireblocks/sdk/model/VaultAssetTest.java @@ -2458,6 +2757,7 @@ src/test/java/com/fireblocks/sdk/model/VersionTest.java src/test/java/com/fireblocks/sdk/model/WalletAssetAdditionalInfoTest.java src/test/java/com/fireblocks/sdk/model/WalletAssetTest.java src/test/java/com/fireblocks/sdk/model/WebhookEventTest.java +src/test/java/com/fireblocks/sdk/model/WebhookMetricTest.java src/test/java/com/fireblocks/sdk/model/WebhookPaginatedResponseTest.java src/test/java/com/fireblocks/sdk/model/WebhookTest.java src/test/java/com/fireblocks/sdk/model/WithdrawRequestTest.java diff --git a/README.md b/README.md index d0ac4926..22c51183 100644 --- a/README.md +++ b/README.md @@ -32,7 +32,7 @@ Add this dependency to your project's POM: com.fireblocks.sdk fireblocks-sdk - 12.1.3 + 0.0.0 compile ``` @@ -42,7 +42,7 @@ Add this dependency to your project's POM: Add this dependency to your project's build file: ```groovy -compile "com.fireblocks.sdk:fireblocks-sdk:12.1.3" +compile "com.fireblocks.sdk:fireblocks-sdk:0.0.0" ``` ### Others @@ -55,7 +55,7 @@ mvn clean package Then manually install the following JARs: -- `target/fireblocks-sdk-12.1.3.jar` +- `target/fireblocks-sdk-0.0.0.jar` - `target/lib/*.jar` @@ -409,14 +409,15 @@ Class | Method | HTTP request | Description *UserGroupsBetaApi* | [**updateUserGroup**](docs/UserGroupsBetaApi.md#updateUserGroup) | **PUT** /management/user_groups/{groupId} | Update user group *UsersApi* | [**getUsers**](docs/UsersApi.md#getUsers) | **GET** /users | List users *VaultsApi* | [**activateAssetForVaultAccount**](docs/VaultsApi.md#activateAssetForVaultAccount) | **POST** /vault/accounts/{vaultAccountId}/{assetId}/activate | Activate a wallet in a vault account -*VaultsApi* | [**attachTagsToVaultAccounts**](docs/VaultsApi.md#attachTagsToVaultAccounts) | **POST** /vault/accounts/attached_tags/attach | Attach tags to a vault accounts +*VaultsApi* | [**attachOrDetachTagsFromVaultAccounts**](docs/VaultsApi.md#attachOrDetachTagsFromVaultAccounts) | **POST** /vault/accounts/attached_tags | Attach or detach tags from a vault accounts +*VaultsApi* | [**attachTagsToVaultAccounts**](docs/VaultsApi.md#attachTagsToVaultAccounts) | **POST** /vault/accounts/attached_tags/attach | Attach tags to a vault accounts (deprecated) *VaultsApi* | [**createLegacyAddress**](docs/VaultsApi.md#createLegacyAddress) | **POST** /vault/accounts/{vaultAccountId}/{assetId}/addresses/{addressId}/create_legacy | Convert a segwit address to legacy format *VaultsApi* | [**createMultipleAccounts**](docs/VaultsApi.md#createMultipleAccounts) | **POST** /vault/accounts/bulk | Bulk creation of new vault accounts *VaultsApi* | [**createMultipleDepositAddresses**](docs/VaultsApi.md#createMultipleDepositAddresses) | **POST** /vault/accounts/addresses/bulk | Bulk creation of new deposit addresses *VaultsApi* | [**createVaultAccount**](docs/VaultsApi.md#createVaultAccount) | **POST** /vault/accounts | Create a new vault account *VaultsApi* | [**createVaultAccountAsset**](docs/VaultsApi.md#createVaultAccountAsset) | **POST** /vault/accounts/{vaultAccountId}/{assetId} | Create a new wallet *VaultsApi* | [**createVaultAccountAssetAddress**](docs/VaultsApi.md#createVaultAccountAssetAddress) | **POST** /vault/accounts/{vaultAccountId}/{assetId}/addresses | Create new asset deposit address -*VaultsApi* | [**detachTagsFromVaultAccounts**](docs/VaultsApi.md#detachTagsFromVaultAccounts) | **POST** /vault/accounts/attached_tags/detach | Detach tags from a vault accounts +*VaultsApi* | [**detachTagsFromVaultAccounts**](docs/VaultsApi.md#detachTagsFromVaultAccounts) | **POST** /vault/accounts/attached_tags/detach | Detach tags from a vault accounts (deprecated) *VaultsApi* | [**getAssetWallets**](docs/VaultsApi.md#getAssetWallets) | **GET** /vault/asset_wallets | List asset wallets (Paginated) *VaultsApi* | [**getCreateMultipleDepositAddressesJobStatus**](docs/VaultsApi.md#getCreateMultipleDepositAddressesJobStatus) | **GET** /vault/accounts/addresses/bulk/{jobId} | Get job status of bulk creation of new deposit addresses *VaultsApi* | [**getCreateMultipleVaultAccountsJobStatus**](docs/VaultsApi.md#getCreateMultipleVaultAccountsJobStatus) | **GET** /vault/accounts/bulk/{jobId} | Get job status of bulk creation of new vault accounts @@ -446,6 +447,7 @@ Class | Method | HTTP request | Description *WebhooksApi* | [**resendWebhooks**](docs/WebhooksApi.md#resendWebhooks) | **POST** /webhooks/resend | Resend failed webhooks *WebhooksV2Api* | [**createWebhook**](docs/WebhooksV2Api.md#createWebhook) | **POST** /webhooks | Create new webhook *WebhooksV2Api* | [**deleteWebhook**](docs/WebhooksV2Api.md#deleteWebhook) | **DELETE** /webhooks/{webhookId} | Delete webhook +*WebhooksV2Api* | [**getMetrics**](docs/WebhooksV2Api.md#getMetrics) | **GET** /webhooks/{webhookId}/metrics/{metricName} | Get webhook metrics *WebhooksV2Api* | [**getNotification**](docs/WebhooksV2Api.md#getNotification) | **GET** /webhooks/{webhookId}/notifications/{notificationId} | Get notification by id *WebhooksV2Api* | [**getNotificationAttempts**](docs/WebhooksV2Api.md#getNotificationAttempts) | **GET** /webhooks/{webhookId}/notifications/{notificationId}/attempts | Get notification attempts *WebhooksV2Api* | [**getNotifications**](docs/WebhooksV2Api.md#getNotifications) | **GET** /webhooks/{webhookId}/notifications | Get all notifications by webhook id @@ -470,6 +472,7 @@ Class | Method | HTTP request | Description - [AccountAccess](docs/AccountAccess.md) - [AccountBase](docs/AccountBase.md) - [AccountBasedAccessProvider](docs/AccountBasedAccessProvider.md) + - [AccountBasedAccessProviderDetails](docs/AccountBasedAccessProviderDetails.md) - [AccountConfig](docs/AccountConfig.md) - [AccountHolderDetails](docs/AccountHolderDetails.md) - [AccountIdentifier](docs/AccountIdentifier.md) @@ -477,6 +480,9 @@ Class | Method | HTTP request | Description - [AccountReference](docs/AccountReference.md) - [AccountType](docs/AccountType.md) - [AccountType2](docs/AccountType2.md) + - [AchAccountType](docs/AchAccountType.md) + - [AchAddress](docs/AchAddress.md) + - [AchDestination](docs/AchDestination.md) - [AchPaymentInfo](docs/AchPaymentInfo.md) - [AdapterProcessingResult](docs/AdapterProcessingResult.md) - [AddAbiRequestDto](docs/AddAbiRequestDto.md) @@ -491,16 +497,25 @@ Class | Method | HTTP request | Description - [AdditionalInfoRequest](docs/AdditionalInfoRequest.md) - [AdditionalInfoRequestAdditionalInfo](docs/AdditionalInfoRequestAdditionalInfo.md) - [AddressNotAvailableError](docs/AddressNotAvailableError.md) + - [AlertExposureTypeEnum](docs/AlertExposureTypeEnum.md) + - [AlertLevelEnum](docs/AlertLevelEnum.md) + - [AmlAlert](docs/AmlAlert.md) + - [AmlMatchedRule](docs/AmlMatchedRule.md) - [AmlRegistrationResult](docs/AmlRegistrationResult.md) - [AmlRegistrationResultFullPayload](docs/AmlRegistrationResultFullPayload.md) + - [AmlResult](docs/AmlResult.md) - [AmlScreeningResult](docs/AmlScreeningResult.md) + - [AmlStatusEnum](docs/AmlStatusEnum.md) - [AmlVerdictManualRequest](docs/AmlVerdictManualRequest.md) - [AmlVerdictManualResponse](docs/AmlVerdictManualResponse.md) - [AmountAndChainDescriptor](docs/AmountAndChainDescriptor.md) + - [AmountConfig](docs/AmountConfig.md) + - [AmountConfigCurrency](docs/AmountConfigCurrency.md) - [AmountInfo](docs/AmountInfo.md) - [AmountOverTimeConfig](docs/AmountOverTimeConfig.md) - - [AmountOverTimeConfigRange](docs/AmountOverTimeConfigRange.md) - [AmountRange](docs/AmountRange.md) + - [AmountRangeMinMax](docs/AmountRangeMinMax.md) + - [AmountRangeMinMax2](docs/AmountRangeMinMax2.md) - [ApiKey](docs/ApiKey.md) - [ApiKeysPaginatedResponse](docs/ApiKeysPaginatedResponse.md) - [ApproversConfig](docs/ApproversConfig.md) @@ -674,6 +689,7 @@ Class | Method | HTTP request | Description - [CreateWebhookRequest](docs/CreateWebhookRequest.md) - [CreateWorkflowExecutionRequestParamsInner](docs/CreateWorkflowExecutionRequestParamsInner.md) - [CustomRoutingDest](docs/CustomRoutingDest.md) + - [DAppAddressConfig](docs/DAppAddressConfig.md) - [DVPSettlement](docs/DVPSettlement.md) - [DefaultNetworkRoutingDest](docs/DefaultNetworkRoutingDest.md) - [Delegation](docs/Delegation.md) @@ -694,6 +710,7 @@ Class | Method | HTTP request | Description - [DestinationTransferPeerPathResponse](docs/DestinationTransferPeerPathResponse.md) - [DirectAccess](docs/DirectAccess.md) - [DirectAccessProvider](docs/DirectAccessProvider.md) + - [DirectAccessProviderDetails](docs/DirectAccessProviderDetails.md) - [DisbursementAmountInstruction](docs/DisbursementAmountInstruction.md) - [DisbursementConfigOperation](docs/DisbursementConfigOperation.md) - [DisbursementInstruction](docs/DisbursementInstruction.md) @@ -770,10 +787,12 @@ Class | Method | HTTP request | Description - [FeeInfo](docs/FeeInfo.md) - [FeeLevel](docs/FeeLevel.md) - [FeePayerInfo](docs/FeePayerInfo.md) + - [FeePropertiesDetails](docs/FeePropertiesDetails.md) - [FetchAbiRequestDto](docs/FetchAbiRequestDto.md) - [FiatAccount](docs/FiatAccount.md) - [FiatAccountType](docs/FiatAccountType.md) - [FiatAsset](docs/FiatAsset.md) + - [FiatDestination](docs/FiatDestination.md) - [FiatTransfer](docs/FiatTransfer.md) - [FixedFee](docs/FixedFee.md) - [FreezeTransactionResponse](docs/FreezeTransactionResponse.md) @@ -808,6 +827,8 @@ Class | Method | HTTP request | Description - [GetWhitelistIpAddressesResponse](docs/GetWhitelistIpAddressesResponse.md) - [GetWorkspaceStatusResponse](docs/GetWorkspaceStatusResponse.md) - [HttpContractDoesNotExistError](docs/HttpContractDoesNotExistError.md) + - [IbanAddress](docs/IbanAddress.md) + - [IbanDestination](docs/IbanDestination.md) - [IbanPaymentInfo](docs/IbanPaymentInfo.md) - [Identification](docs/Identification.md) - [IdlType](docs/IdlType.md) @@ -855,17 +876,23 @@ Class | Method | HTTP request | Description - [LegacySrcOrDestAttributesInner](docs/LegacySrcOrDestAttributesInner.md) - [LimitExecutionRequestDetails](docs/LimitExecutionRequestDetails.md) - [LimitExecutionResponseDetails](docs/LimitExecutionResponseDetails.md) + - [LimitTypeDetails](docs/LimitTypeDetails.md) - [ListAssetsResponse](docs/ListAssetsResponse.md) - [ListBlockchainsResponse](docs/ListBlockchainsResponse.md) - [ListOwnedCollectionsResponse](docs/ListOwnedCollectionsResponse.md) - [ListOwnedTokensResponse](docs/ListOwnedTokensResponse.md) + - [LocalBankTransferAfricaAddress](docs/LocalBankTransferAfricaAddress.md) + - [LocalBankTransferAfricaDestination](docs/LocalBankTransferAfricaDestination.md) - [Manifest](docs/Manifest.md) - [MarketExecutionRequestDetails](docs/MarketExecutionRequestDetails.md) - [MarketExecutionResponseDetails](docs/MarketExecutionResponseDetails.md) - [MarketRequoteRequestDetails](docs/MarketRequoteRequestDetails.md) + - [MarketTypeDetails](docs/MarketTypeDetails.md) - [MediaEntityResponse](docs/MediaEntityResponse.md) - [MergeStakeAccountsRequest](docs/MergeStakeAccountsRequest.md) - [MergeStakeAccountsResponse](docs/MergeStakeAccountsResponse.md) + - [MobileMoneyAddress](docs/MobileMoneyAddress.md) + - [MobileMoneyDestination](docs/MobileMoneyDestination.md) - [ModifySigningKeyAgentIdDto](docs/ModifySigningKeyAgentIdDto.md) - [ModifySigningKeyDto](docs/ModifySigningKeyDto.md) - [ModifyValidationKeyDto](docs/ModifyValidationKeyDto.md) @@ -896,6 +923,7 @@ Class | Method | HTTP request | Description - [OneTimeAddressReference](docs/OneTimeAddressReference.md) - [OperationExecutionFailure](docs/OperationExecutionFailure.md) - [OrderDetails](docs/OrderDetails.md) + - [OrderSide](docs/OrderSide.md) - [OrderStatus](docs/OrderStatus.md) - [OrderSummary](docs/OrderSummary.md) - [PaginatedAddressResponse](docs/PaginatedAddressResponse.md) @@ -917,6 +945,7 @@ Class | Method | HTTP request | Description - [PaymentAccountResponse](docs/PaymentAccountResponse.md) - [PaymentAccountType](docs/PaymentAccountType.md) - [PaymentInstructions](docs/PaymentInstructions.md) + - [PaymentInstructionsDetails](docs/PaymentInstructionsDetails.md) - [PayoutInitMethod](docs/PayoutInitMethod.md) - [PayoutInstruction](docs/PayoutInstruction.md) - [PayoutInstructionResponse](docs/PayoutInstructionResponse.md) @@ -928,11 +957,14 @@ Class | Method | HTTP request | Description - [PeerType](docs/PeerType.md) - [PersonalIdentification](docs/PersonalIdentification.md) - [PersonalIdentificationFullName](docs/PersonalIdentificationFullName.md) + - [PixAddress](docs/PixAddress.md) + - [PixDestination](docs/PixDestination.md) - [PixPaymentInfo](docs/PixPaymentInfo.md) - [PlatformAccount](docs/PlatformAccount.md) - [Players](docs/Players.md) - [PolicyAndValidationResponse](docs/PolicyAndValidationResponse.md) - [PolicyCheckResult](docs/PolicyCheckResult.md) + - [PolicyCurrency](docs/PolicyCurrency.md) - [PolicyMetadata](docs/PolicyMetadata.md) - [PolicyOperator](docs/PolicyOperator.md) - [PolicyResponse](docs/PolicyResponse.md) @@ -940,8 +972,11 @@ Class | Method | HTTP request | Description - [PolicyRuleCheckResult](docs/PolicyRuleCheckResult.md) - [PolicyRuleError](docs/PolicyRuleError.md) - [PolicyStatus](docs/PolicyStatus.md) + - [PolicyTag](docs/PolicyTag.md) - [PolicyType](docs/PolicyType.md) - [PolicyValidation](docs/PolicyValidation.md) + - [PolicyVerdictActionEnum](docs/PolicyVerdictActionEnum.md) + - [PolicyVerdictActionEnum2](docs/PolicyVerdictActionEnum2.md) - [PostOrderSettlement](docs/PostOrderSettlement.md) - [PostalAddress](docs/PostalAddress.md) - [PreScreening](docs/PreScreening.md) @@ -956,11 +991,13 @@ Class | Method | HTTP request | Description - [Quote](docs/Quote.md) - [QuoteExecutionRequestDetails](docs/QuoteExecutionRequestDetails.md) - [QuoteExecutionResponseDetails](docs/QuoteExecutionResponseDetails.md) + - [QuoteExecutionTypeDetails](docs/QuoteExecutionTypeDetails.md) - [QuoteExecutionWithRequoteRequestDetails](docs/QuoteExecutionWithRequoteRequestDetails.md) - - [QuoteExecutionWithRequoteRequestDetailsAllOfReQuote](docs/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.md) - [QuoteExecutionWithRequoteResponseDetails](docs/QuoteExecutionWithRequoteResponseDetails.md) - - [QuoteExecutionWithRequoteResponseDetailsAllOfReQuote](docs/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.md) + - [QuotePropertiesDetails](docs/QuotePropertiesDetails.md) - [QuotesResponse](docs/QuotesResponse.md) + - [ReQuoteDetails](docs/ReQuoteDetails.md) + - [ReQuoteDetailsReQuote](docs/ReQuoteDetailsReQuote.md) - [ReadAbiFunction](docs/ReadAbiFunction.md) - [ReadCallFunctionDto](docs/ReadCallFunctionDto.md) - [ReadCallFunctionDtoAbiFunction](docs/ReadCallFunctionDtoAbiFunction.md) @@ -989,8 +1026,14 @@ Class | Method | HTTP request | Description - [RetryRequoteRequestDetails](docs/RetryRequoteRequestDetails.md) - [RewardInfo](docs/RewardInfo.md) - [RewardsInfo](docs/RewardsInfo.md) + - [SEPAAddress](docs/SEPAAddress.md) + - [SEPADestination](docs/SEPADestination.md) - [SOLAccount](docs/SOLAccount.md) - [SOLAccountWithValue](docs/SOLAccountWithValue.md) + - [ScreeningAlertExposureTypeEnum](docs/ScreeningAlertExposureTypeEnum.md) + - [ScreeningAmlAlert](docs/ScreeningAmlAlert.md) + - [ScreeningAmlMatchedRule](docs/ScreeningAmlMatchedRule.md) + - [ScreeningAmlResult](docs/ScreeningAmlResult.md) - [ScreeningConfigurationsRequest](docs/ScreeningConfigurationsRequest.md) - [ScreeningMetadataConfig](docs/ScreeningMetadataConfig.md) - [ScreeningOperationExecution](docs/ScreeningOperationExecution.md) @@ -999,9 +1042,20 @@ Class | Method | HTTP request | Description - [ScreeningOperationType](docs/ScreeningOperationType.md) - [ScreeningPolicyResponse](docs/ScreeningPolicyResponse.md) - [ScreeningProviderRulesConfigurationResponse](docs/ScreeningProviderRulesConfigurationResponse.md) + - [ScreeningRiskLevelEnum](docs/ScreeningRiskLevelEnum.md) + - [ScreeningTRLinkAmount](docs/ScreeningTRLinkAmount.md) + - [ScreeningTRLinkMissingTrmDecision](docs/ScreeningTRLinkMissingTrmDecision.md) + - [ScreeningTRLinkMissingTrmRule](docs/ScreeningTRLinkMissingTrmRule.md) + - [ScreeningTRLinkPostScreeningRule](docs/ScreeningTRLinkPostScreeningRule.md) + - [ScreeningTRLinkPrescreeningRule](docs/ScreeningTRLinkPrescreeningRule.md) + - [ScreeningTRLinkRuleBase](docs/ScreeningTRLinkRuleBase.md) + - [ScreeningTravelRuleMatchedRule](docs/ScreeningTravelRuleMatchedRule.md) + - [ScreeningTravelRulePrescreeningRule](docs/ScreeningTravelRulePrescreeningRule.md) + - [ScreeningTravelRuleResult](docs/ScreeningTravelRuleResult.md) - [ScreeningUpdateConfigurations](docs/ScreeningUpdateConfigurations.md) - [ScreeningValidationFailure](docs/ScreeningValidationFailure.md) - [ScreeningVerdict](docs/ScreeningVerdict.md) + - [ScreeningVerdictEnum](docs/ScreeningVerdictEnum.md) - [ScreeningVerdictMatchedRule](docs/ScreeningVerdictMatchedRule.md) - [SearchNetworkIdsResponse](docs/SearchNetworkIdsResponse.md) - [SepaPaymentInfo](docs/SepaPaymentInfo.md) @@ -1067,12 +1121,15 @@ Class | Method | HTTP request | Description - [SolanaInstruction](docs/SolanaInstruction.md) - [SolanaInstructionWithValue](docs/SolanaInstructionWithValue.md) - [SolanaSimpleCreateParams](docs/SolanaSimpleCreateParams.md) + - [SourceConfig](docs/SourceConfig.md) - [SourceTransferPeerPath](docs/SourceTransferPeerPath.md) - [SourceTransferPeerPathResponse](docs/SourceTransferPeerPathResponse.md) - [SpamOwnershipResponse](docs/SpamOwnershipResponse.md) - [SpamTokenResponse](docs/SpamTokenResponse.md) + - [SpeiAddress](docs/SpeiAddress.md) - [SpeiAdvancedPaymentInfo](docs/SpeiAdvancedPaymentInfo.md) - [SpeiBasicPaymentInfo](docs/SpeiBasicPaymentInfo.md) + - [SpeiDestination](docs/SpeiDestination.md) - [SplitRequest](docs/SplitRequest.md) - [SplitResponse](docs/SplitResponse.md) - [StakeRequest](docs/StakeRequest.md) @@ -1080,8 +1137,34 @@ Class | Method | HTTP request | Description - [StakingProvider](docs/StakingProvider.md) - [Status](docs/Status.md) - [StellarRippleCreateParamsDto](docs/StellarRippleCreateParamsDto.md) + - [SwiftAddress](docs/SwiftAddress.md) + - [SwiftDestination](docs/SwiftDestination.md) - [SystemMessageInfo](docs/SystemMessageInfo.md) + - [TRLinkAmount](docs/TRLinkAmount.md) + - [TRLinkMissingTrmAction](docs/TRLinkMissingTrmAction.md) + - [TRLinkMissingTrmActionEnum](docs/TRLinkMissingTrmActionEnum.md) + - [TRLinkMissingTrmDecision](docs/TRLinkMissingTrmDecision.md) + - [TRLinkMissingTrmRule](docs/TRLinkMissingTrmRule.md) + - [TRLinkPostScreeningRule](docs/TRLinkPostScreeningRule.md) + - [TRLinkPreScreeningAction](docs/TRLinkPreScreeningAction.md) + - [TRLinkPreScreeningActionEnum](docs/TRLinkPreScreeningActionEnum.md) + - [TRLinkPreScreeningRule](docs/TRLinkPreScreeningRule.md) + - [TRLinkProviderResult](docs/TRLinkProviderResult.md) + - [TRLinkProviderResultWithRule](docs/TRLinkProviderResultWithRule.md) + - [TRLinkProviderResultWithRule2](docs/TRLinkProviderResultWithRule2.md) + - [TRLinkRegistrationResult](docs/TRLinkRegistrationResult.md) + - [TRLinkRegistrationResultFullPayload](docs/TRLinkRegistrationResultFullPayload.md) + - [TRLinkRegistrationStatus](docs/TRLinkRegistrationStatus.md) + - [TRLinkRegistrationStatusEnum](docs/TRLinkRegistrationStatusEnum.md) + - [TRLinkResult](docs/TRLinkResult.md) + - [TRLinkResultFullPayload](docs/TRLinkResultFullPayload.md) + - [TRLinkRuleBase](docs/TRLinkRuleBase.md) + - [TRLinkTrmScreeningStatus](docs/TRLinkTrmScreeningStatus.md) + - [TRLinkTrmScreeningStatusEnum](docs/TRLinkTrmScreeningStatusEnum.md) + - [TRLinkVerdict](docs/TRLinkVerdict.md) + - [TRLinkVerdictEnum](docs/TRLinkVerdictEnum.md) - [Tag](docs/Tag.md) + - [TagAttachmentOperationAction](docs/TagAttachmentOperationAction.md) - [TagsPagedResponse](docs/TagsPagedResponse.md) - [Task](docs/Task.md) - [TemplatesPaginatedResponse](docs/TemplatesPaginatedResponse.md) @@ -1108,8 +1191,10 @@ Class | Method | HTTP request | Description - [TradingErrorResponseError](docs/TradingErrorResponseError.md) - [TradingProvider](docs/TradingProvider.md) - [Transaction](docs/Transaction.md) + - [TransactionDirection](docs/TransactionDirection.md) - [TransactionFee](docs/TransactionFee.md) - [TransactionOperation](docs/TransactionOperation.md) + - [TransactionOperationEnum](docs/TransactionOperationEnum.md) - [TransactionReceiptResponse](docs/TransactionReceiptResponse.md) - [TransactionRequest](docs/TransactionRequest.md) - [TransactionRequestAmount](docs/TransactionRequestAmount.md) @@ -1136,18 +1221,23 @@ Class | Method | HTTP request | Description - [TransferOperationType](docs/TransferOperationType.md) - [TransferPeerPathSubType](docs/TransferPeerPathSubType.md) - [TransferPeerPathType](docs/TransferPeerPathType.md) + - [TransferPeerSubTypeEnum](docs/TransferPeerSubTypeEnum.md) + - [TransferPeerTypeEnum](docs/TransferPeerTypeEnum.md) - [TransferRail](docs/TransferRail.md) - [TransferReceipt](docs/TransferReceipt.md) - [TransferValidationFailure](docs/TransferValidationFailure.md) + - [TravelRuleActionEnum](docs/TravelRuleActionEnum.md) - [TravelRuleAddress](docs/TravelRuleAddress.md) - [TravelRuleCreateTransactionRequest](docs/TravelRuleCreateTransactionRequest.md) - [TravelRuleDateAndPlaceOfBirth](docs/TravelRuleDateAndPlaceOfBirth.md) + - [TravelRuleDirectionEnum](docs/TravelRuleDirectionEnum.md) - [TravelRuleGeographicAddress](docs/TravelRuleGeographicAddress.md) - [TravelRuleGetAllVASPsResponse](docs/TravelRuleGetAllVASPsResponse.md) - [TravelRuleIssuer](docs/TravelRuleIssuer.md) - [TravelRuleIssuers](docs/TravelRuleIssuers.md) - [TravelRuleLegalPerson](docs/TravelRuleLegalPerson.md) - [TravelRuleLegalPersonNameIdentifier](docs/TravelRuleLegalPersonNameIdentifier.md) + - [TravelRuleMatchedRule](docs/TravelRuleMatchedRule.md) - [TravelRuleNationalIdentification](docs/TravelRuleNationalIdentification.md) - [TravelRuleNaturalNameIdentifier](docs/TravelRuleNaturalNameIdentifier.md) - [TravelRuleNaturalPerson](docs/TravelRuleNaturalPerson.md) @@ -1156,6 +1246,9 @@ Class | Method | HTTP request | Description - [TravelRulePerson](docs/TravelRulePerson.md) - [TravelRulePiiIVMS](docs/TravelRulePiiIVMS.md) - [TravelRulePolicyRuleResponse](docs/TravelRulePolicyRuleResponse.md) + - [TravelRulePrescreeningRule](docs/TravelRulePrescreeningRule.md) + - [TravelRuleResult](docs/TravelRuleResult.md) + - [TravelRuleStatusEnum](docs/TravelRuleStatusEnum.md) - [TravelRuleTransactionBlockchainInfo](docs/TravelRuleTransactionBlockchainInfo.md) - [TravelRuleUpdateVASPDetails](docs/TravelRuleUpdateVASPDetails.md) - [TravelRuleVASP](docs/TravelRuleVASP.md) @@ -1173,7 +1266,10 @@ Class | Method | HTTP request | Description - [TravelRuleValidateTransactionRequest](docs/TravelRuleValidateTransactionRequest.md) - [TravelRuleValidateTransactionResponse](docs/TravelRuleValidateTransactionResponse.md) - [TravelRuleVaspForVault](docs/TravelRuleVaspForVault.md) + - [TravelRuleVerdictEnum](docs/TravelRuleVerdictEnum.md) - [TxLog](docs/TxLog.md) + - [USWireAddress](docs/USWireAddress.md) + - [USWireDestination](docs/USWireDestination.md) - [UnfreezeTransactionResponse](docs/UnfreezeTransactionResponse.md) - [UnmanagedWallet](docs/UnmanagedWallet.md) - [UnspentInput](docs/UnspentInput.md) @@ -1203,8 +1299,13 @@ Class | Method | HTTP request | Description - [ValidationKeyDto](docs/ValidationKeyDto.md) - [Validator](docs/Validator.md) - [VaultAccount](docs/VaultAccount.md) + - [VaultAccountTagAttachmentOperation](docs/VaultAccountTagAttachmentOperation.md) + - [VaultAccountTagAttachmentPendingOperation](docs/VaultAccountTagAttachmentPendingOperation.md) + - [VaultAccountTagAttachmentRejectedOperation](docs/VaultAccountTagAttachmentRejectedOperation.md) - [VaultAccountsPagedResponse](docs/VaultAccountsPagedResponse.md) - [VaultAccountsPagedResponsePaging](docs/VaultAccountsPagedResponsePaging.md) + - [VaultAccountsTagAttachmentOperationsRequest](docs/VaultAccountsTagAttachmentOperationsRequest.md) + - [VaultAccountsTagAttachmentOperationsResponse](docs/VaultAccountsTagAttachmentOperationsResponse.md) - [VaultAccountsTagAttachmentsRequest](docs/VaultAccountsTagAttachmentsRequest.md) - [VaultActionStatus](docs/VaultActionStatus.md) - [VaultAsset](docs/VaultAsset.md) @@ -1216,6 +1317,7 @@ Class | Method | HTTP request | Description - [WalletAssetAdditionalInfo](docs/WalletAssetAdditionalInfo.md) - [Webhook](docs/Webhook.md) - [WebhookEvent](docs/WebhookEvent.md) + - [WebhookMetric](docs/WebhookMetric.md) - [WebhookPaginatedResponse](docs/WebhookPaginatedResponse.md) - [WithdrawRequest](docs/WithdrawRequest.md) - [WorkflowConfigStatus](docs/WorkflowConfigStatus.md) diff --git a/api/openapi.yaml b/api/openapi.yaml index 6ce6a051..4c8edf89 100644 --- a/api/openapi.yaml +++ b/api/openapi.yaml @@ -2052,9 +2052,98 @@ paths: x-content-type: application/json x-accepts: - application/json + /vault/accounts/attached_tags: + post: + description: Attach or detach one or more tags from the requested vault accounts. + operationId: attachOrDetachTagsFromVaultAccounts + parameters: + - description: "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." + explode: false + in: header + name: Idempotency-Key + required: false + schema: + type: string + style: simple + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/VaultAccountsTagAttachmentOperationsRequest" + required: true + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/VaultAccountsTagAttachmentOperationsResponse" + description: Tags were attached/detached successfully + headers: + X-Request-ID: + $ref: "#/components/headers/X-Request-ID" + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorSchema" + description: | + - Invalid request parameters. + - Same tag ID is provided in both tagIdsToAttach and tagIdsToDetach. + - Vault accounts are archived. + headers: + X-Request-ID: + $ref: "#/components/headers/X-Request-ID" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/ErrorSchema" + description: | + - Tags with the requested ID not found. + - Vault accounts with the requested ID not found. + headers: + X-Request-ID: + $ref: "#/components/headers/X-Request-ID" + summary: Attach or detach tags from a vault accounts + tags: + - Vaults + x-rate-limit-category: write + x-readme: + code-samples: + - language: typescript + code: "const response: Promise>\ + \ = fireblocks.vaults.attachOrDetachTagsFromVaultAccounts(vaultsApiAttachOrDetachTagsFromVaultAccountsRequest);" + name: Fireblocks SDK TypeScript example + - language: java + code: "CompletableFuture>\ + \ response = fireblocks.vaults().attachOrDetachTagsFromVaultAccounts(vaultAccountsTagAttachmentOperationsRequest,\ + \ idempotencyKey);" + name: Fireblocks SDK Java example + - language: python + code: "response = fireblocks.vaults.attach_or_detach_tags_from_vault_accounts(vault_accounts_tag_attachment_operations_request,\ + \ idempotency_key);" + name: Fireblocks SDK Python example + x-codeSamples: + - lang: TypeScript + source: "const response: Promise>\ + \ = fireblocks.vaults.attachOrDetachTagsFromVaultAccounts(vaultsApiAttachOrDetachTagsFromVaultAccountsRequest);" + - lang: Java + source: "CompletableFuture>\ + \ response = fireblocks.vaults().attachOrDetachTagsFromVaultAccounts(vaultAccountsTagAttachmentOperationsRequest,\ + \ idempotencyKey);" + - lang: Python + source: "response = fireblocks.vaults.attach_or_detach_tags_from_vault_accounts(vault_accounts_tag_attachment_operations_request,\ + \ idempotency_key);" + x-content-type: application/json + x-accepts: + - application/json /vault/accounts/attached_tags/attach: post: - description: Attach one or more tags to the requested vault accounts. + description: Attach one or more tags to the requested vault accounts. This endpoint + is deprecated. Please use /vault/accounts/attached_tags instead. operationId: attachTagsToVaultAccounts parameters: - description: "A unique identifier for the request. If the request is sent\ @@ -2077,7 +2166,7 @@ paths: responses: "204": description: Tags were attached successfully - summary: Attach tags to a vault accounts + summary: Attach tags to a vault accounts (deprecated) tags: - Vaults x-rate-limit-category: write @@ -2108,7 +2197,8 @@ paths: - application/json /vault/accounts/attached_tags/detach: post: - description: Detach one or more tags from the requested vault account. + description: Detach one or more tags from the requested vault account. This + endpoint is deprecated. Please use /vault/accounts/attached_tags instead. operationId: detachTagsFromVaultAccounts parameters: - description: "A unique identifier for the request. If the request is sent\ @@ -2131,7 +2221,7 @@ paths: responses: "204": description: Tags were detached successfully - summary: Detach tags from a vault accounts + summary: Detach tags from a vault accounts (deprecated) tags: - Vaults x-rate-limit-category: write @@ -8880,6 +8970,7 @@ paths: - TRON - NEAR - Solana + - Sui operationId: registerNewAsset parameters: - description: "A unique identifier for the request. If the request is sent\ @@ -9465,6 +9556,24 @@ paths: description: Lists the transaction history for your workspace. operationId: getTransactions parameters: + - description: Cursor returned in next-page header that can be used to fetch + the next page of results + explode: true + in: query + name: next + required: false + schema: + type: string + style: form + - description: Cursor returned in prev-page header that can be used to fetch + the previous page of results + explode: true + in: query + name: prev + required: false + schema: + type: string + style: form - description: Unix timestamp in milliseconds. Returns only transactions created before the specified date explode: true @@ -9653,14 +9762,14 @@ paths: name: Fireblocks SDK TypeScript example - language: java code: "CompletableFuture>> response\ - \ = fireblocks.transactions().getTransactions(before, after, status, orderBy,\ - \ sort, limit, sourceType, sourceId, destType, destId, assets, txHash,\ - \ sourceWalletId, destWalletId);" + \ = fireblocks.transactions().getTransactions(next, prev, before, after,\ + \ status, orderBy, sort, limit, sourceType, sourceId, destType, destId,\ + \ assets, txHash, sourceWalletId, destWalletId);" name: Fireblocks SDK Java example - language: python - code: "response = fireblocks.transactions.get_transactions(before, after,\ - \ status, order_by, sort, limit, source_type, source_id, dest_type, dest_id,\ - \ assets, tx_hash, source_wallet_id, dest_wallet_id);" + code: "response = fireblocks.transactions.get_transactions(next, prev, before,\ + \ after, status, order_by, sort, limit, source_type, source_id, dest_type,\ + \ dest_id, assets, tx_hash, source_wallet_id, dest_wallet_id);" name: Fireblocks SDK Python example x-codeSamples: - lang: TypeScript @@ -9668,13 +9777,13 @@ paths: \ = fireblocks.transactions.getTransactions(transactionsApiGetTransactionsRequest);" - lang: Java source: "CompletableFuture>> response\ - \ = fireblocks.transactions().getTransactions(before, after, status, orderBy,\ - \ sort, limit, sourceType, sourceId, destType, destId, assets, txHash, sourceWalletId,\ - \ destWalletId);" + \ = fireblocks.transactions().getTransactions(next, prev, before, after,\ + \ status, orderBy, sort, limit, sourceType, sourceId, destType, destId,\ + \ assets, txHash, sourceWalletId, destWalletId);" - lang: Python - source: "response = fireblocks.transactions.get_transactions(before, after,\ - \ status, order_by, sort, limit, source_type, source_id, dest_type, dest_id,\ - \ assets, tx_hash, source_wallet_id, dest_wallet_id);" + source: "response = fireblocks.transactions.get_transactions(next, prev, before,\ + \ after, status, order_by, sort, limit, source_type, source_id, dest_type,\ + \ dest_id, assets, tx_hash, source_wallet_id, dest_wallet_id);" x-accepts: - application/json post: @@ -12692,6 +12801,70 @@ paths: x-content-type: application/json x-accepts: - application/json + /webhooks/{webhookId}/metrics/{metricName}: + get: + description: | + Get webhook metrics by webhook id and metric name + operationId: getMetrics + parameters: + - explode: false + in: path + name: webhookId + required: true + schema: + example: 44fcead0-7053-4831-a53a-df7fb90d440f + format: uuid + type: string + style: simple + - description: Name of the metric to retrieve + explode: false + in: path + name: metricName + required: true + schema: + enum: + - LAST_ACTIVE_HOUR_ERROR_RATE + example: LAST_ACTIVE_HOUR_ERROR_RATE + type: string + style: simple + responses: + "200": + content: + application/json: + schema: + $ref: "#/components/schemas/WebhookMetric" + description: Webhook metrics + headers: + X-Request-ID: + $ref: "#/components/headers/X-Request-ID" + default: + $ref: "#/components/responses/Error" + summary: Get webhook metrics + tags: + - Webhooks V2 + x-rate-limit-category: read + x-readme: + code-samples: + - language: typescript + code: "const response: Promise> = fireblocks.webhooksV2.getMetrics(webhooksV2ApiGetMetricsRequest);" + name: Fireblocks SDK TypeScript example + - language: java + code: "CompletableFuture> response = fireblocks.webhooksV2().getMetrics(webhookId,\ + \ metricName);" + name: Fireblocks SDK Java example + - language: python + code: "response = fireblocks.webhooks_v2.get_metrics(webhook_id, metric_name);" + name: Fireblocks SDK Python example + x-codeSamples: + - lang: TypeScript + source: "const response: Promise> = fireblocks.webhooksV2.getMetrics(webhooksV2ApiGetMetricsRequest);" + - lang: Java + source: "CompletableFuture> response = fireblocks.webhooksV2().getMetrics(webhookId,\ + \ metricName);" + - lang: Python + source: "response = fireblocks.webhooks_v2.get_metrics(webhook_id, metric_name);" + x-accepts: + - application/json /webhooks/{webhookId}/notifications: get: description: | @@ -24749,9 +24922,12 @@ components: type: object Tag: example: + isProtected: true + color: color description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP + updatedAt: "1719859200" properties: id: description: The unique identifier of the tag @@ -24766,6 +24942,18 @@ components: description: Description for the tag example: Tag for VIP customers type: string + isProtected: + description: Whether the tag is protected + type: boolean + color: + description: The color of the tag in hex format + type: string + example: null + updatedAt: + description: The date and time the tag was last updated + example: "1719859200" + format: numeric + type: string required: - id - label @@ -24815,12 +25003,18 @@ components: customerRefId: customerRefId autoFuel: true tags: - - description: Tag for VIP customers + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP - - description: Tag for VIP customers + updatedAt: "1719859200" + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP + updatedAt: "1719859200" properties: id: type: string @@ -24937,12 +25131,18 @@ components: customerRefId: customerRefId autoFuel: true tags: - - description: Tag for VIP customers + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP - - description: Tag for VIP customers + updatedAt: "1719859200" + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP + updatedAt: "1719859200" - assets: - totalStakedCPU: totalStakedCPU blockHash: blockHash @@ -24986,12 +25186,18 @@ components: customerRefId: customerRefId autoFuel: true tags: - - description: Tag for VIP customers + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP - - description: Tag for VIP customers + updatedAt: "1719859200" + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP + updatedAt: "1719859200" nextUrl: nextUrl properties: accounts: @@ -25483,6 +25689,188 @@ components: - count - vaultAccountId type: object + VaultAccountsTagAttachmentOperationsRequest: + example: + tagIdsToAttach: + - df4c0987-30da-4976-8dcf-bc2dd41ae331 + - a1b2c3d4-e5f6-7890-abcd-ef1234567890 + tagIdsToDetach: + - df4c0987-30da-4976-8dcf-bc2dd41ae331 + - a1b2c3d4-e5f6-7890-abcd-ef1234567890 + vaultAccountIds: + - "0" + - "1" + properties: + vaultAccountIds: + description: The IDs of the vault accounts to attach tags to + example: + - "0" + - "1" + items: + format: numeric + type: string + maxItems: 100 + minItems: 1 + type: array + tagIdsToAttach: + description: The IDs of the tags to attach + example: + - df4c0987-30da-4976-8dcf-bc2dd41ae331 + - a1b2c3d4-e5f6-7890-abcd-ef1234567890 + items: + format: uuid + type: string + maxItems: 20 + minItems: 1 + type: array + tagIdsToDetach: + description: The IDs of the tags to detach + example: + - df4c0987-30da-4976-8dcf-bc2dd41ae331 + - a1b2c3d4-e5f6-7890-abcd-ef1234567890 + items: + format: uuid + type: string + maxItems: 20 + minItems: 1 + type: array + required: + - vaultAccountIds + type: object + TagAttachmentOperationAction: + enum: + - ATTACH + - DETACH + type: string + VaultAccountTagAttachmentOperation: + example: + tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: ATTACH + properties: + vaultAccountId: + description: The ID of the vault account + example: "1" + format: numeric + type: string + tagId: + description: Tag ID + example: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + format: uuid + type: string + action: + $ref: "#/components/schemas/TagAttachmentOperationAction" + required: + - action + - tagId + - vaultAccountId + type: object + VaultAccountTagAttachmentPendingOperation: + example: + approvalRequestId: "12345" + tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: null + properties: + vaultAccountId: + description: The ID of the vault account + example: "1" + format: numeric + type: string + tagId: + description: Tag ID + example: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + format: uuid + type: string + action: + $ref: "#/components/schemas/TagAttachmentOperationAction" + approvalRequestId: + description: Pending approval request ID + example: "12345" + type: string + required: + - action + - approvalRequestId + - tagId + - vaultAccountId + type: object + VaultAccountTagAttachmentRejectedOperation: + example: + reason: CAPACITY_EXCEEDED + tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: null + properties: + vaultAccountId: + description: The ID of the vault account + example: "1" + format: numeric + type: string + tagId: + description: Tag ID + example: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + format: uuid + type: string + action: + $ref: "#/components/schemas/TagAttachmentOperationAction" + reason: + description: Reason for rejection + enum: + - CAPACITY_EXCEEDED + - ATTACHMENT_ALREADY_EXISTS + - ATTACHMENT_DOES_NOT_EXIST + - PENDING_REQUEST_EXISTS + type: string + required: + - action + - reason + - tagId + - vaultAccountId + type: object + VaultAccountsTagAttachmentOperationsResponse: + example: + appliedOperations: + - tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: ATTACH + - tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: ATTACH + pendingOperations: + - approvalRequestId: "12345" + tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: null + - approvalRequestId: "12345" + tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: null + rejectedOperations: + - reason: CAPACITY_EXCEEDED + tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: null + - reason: CAPACITY_EXCEEDED + tagId: f0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11 + vaultAccountId: "1" + action: null + properties: + appliedOperations: + description: The operations that were applied + items: + $ref: "#/components/schemas/VaultAccountTagAttachmentOperation" + type: array + pendingOperations: + description: The operations that are pending + items: + $ref: "#/components/schemas/VaultAccountTagAttachmentPendingOperation" + type: array + rejectedOperations: + description: The operations that were rejected + items: + $ref: "#/components/schemas/VaultAccountTagAttachmentRejectedOperation" + type: array + type: object VaultAccountsTagAttachmentsRequest: example: tagIds: @@ -29185,6 +29573,7 @@ components: - TRON (TRX): token contract address - NEAR: token address - Solana: token's mint account address + - Sui: token's type example: 0xe7A9as1oa38bc4da0248s179E30aa94CcF453991 type: string symbol: @@ -30104,58 +30493,677 @@ components: rewardInfo: $ref: "#/components/schemas/RewardInfo" type: object - ComplianceScreeningResult: + AmlStatusEnum: + description: AML screening status + enum: + - COMPLETED + - PENDING + - BYPASSED + - FAILED + - FROZEN + example: COMPLETED + type: string + ScreeningVerdictEnum: + description: | + The final verdict of the screening (unified for AML, Travel Rule, and TRLink). + Different providers may return different verdict values: + - AML: PASS, FAIL, ALERT + - Travel Rule: PASS, FAIL, TRAVEL_RULE_REQUIRED + - TRLink: PASS, REJECT, WARN + enum: + - PASS + - FAIL + - ALERT + - REJECT + - WARN + - TRAVEL_RULE_REQUIRED + - ACCEPT + - REVIEW + example: PASS + type: string + ScreeningRiskLevelEnum: + description: | + Risk level assessment for screening results. + Possible values vary by provider and context. + enum: + - VERY_HIGH + - SEVERE + - HIGH + - MEDIUM + - LOW + - UNKNOWN + example: LOW + type: string + AlertLevelEnum: + description: Alert level severity + enum: + - SEVERE + - HIGH + - MEDIUM + - LOW + example: HIGH + type: string + AlertExposureTypeEnum: + description: Alert exposure type (AlertExposureType enum) + enum: + - DIRECT + - INDIRECT + example: DIRECT + type: string + AmlAlert: + description: AML alert information example: - provider: CHAINALYSIS - payload: "{}" + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + properties: + alertLevel: + $ref: "#/components/schemas/AlertLevelEnum" + alertName: + description: Name or type of the alert + example: Sanctions Match + type: string + category: + description: Alert category + example: SANCTIONED_ENTITY + type: string + service: + description: Service that generated the alert + example: CHAINALYSIS + type: string + externalId: + description: External identifier for the alert + example: alert_12345 + type: string + alertAmount: + description: Amount associated with the alert + example: 1000.5 + type: number + exposureType: + $ref: "#/components/schemas/AlertExposureTypeEnum" + policyAction: + description: Recommended action based on policy + example: BLOCK + type: string + categoryId: + description: Category identifier + example: 101 + type: number + required: + - alertAmount + - alertLevel + - exposureType + - externalId + type: object + PolicyVerdictActionEnum: + description: Policy verdict action + enum: + - ALLOW + - BLOCK + - 2-TIER + - SCREEN + - ACCEPT + - REJECT + - ALERT + - WAIT + - FREEZE + - CANCEL + example: ALLOW + type: string + AmlMatchedRule: + description: AML matched rule information + example: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + properties: + ruleId: + description: Identifier of the matched rule + example: rule_001 + type: string + ruleName: + description: Name of the matched rule + example: High Risk Sanctions Check + type: string + action: + $ref: "#/components/schemas/PolicyVerdictActionEnum" + type: object + AmlResult: + description: | + Detailed AML screening result information. + Contains alerts, risk scores, and other AML-specific data from provider-specific responses. + example: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + properties: + alerts: + description: List of AML alerts triggered during screening + items: + $ref: "#/components/schemas/AmlAlert" + type: array + providerResponse: + additionalProperties: true + description: | + Complete response from the AML provider. This is a dynamic object that varies + significantly between different AML providers (Chainalysis, Elliptic, etc.). + Each provider has their own proprietary response format and schema. + + Examples of provider-specific structures: + - Chainalysis: Contains cluster info, risk scores, sanctions data + - Elliptic: Includes risk assessment, entity types, compliance flags + + The structure is provider-dependent and cannot be standardized as each + vendor implements their own proprietary data models and response formats. + type: object + matchedRule: + $ref: "#/components/schemas/AmlMatchedRule" + matchedAlert: + $ref: "#/components/schemas/AmlAlert" + type: object + TravelRuleDirectionEnum: + description: Travel rule direction + enum: + - INBOUND + - OUTBOUND + example: OUTBOUND + type: string + TravelRuleVerdictEnum: + description: The final verdict of the travel rule screening + enum: + - ACCEPT + - REJECT + - ALERT + - REVIEW + example: ACCEPT + type: string + TravelRuleStatusEnum: + description: Travel rule status + enum: + - COMPLETED + - PENDING + - BYPASSED + - FAILED + - FROZEN + example: COMPLETED + type: string + TravelRuleMatchedRule: + description: The travel rule configuration that was matched + example: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + properties: + direction: + $ref: "#/components/schemas/TravelRuleDirectionEnum" + status: + $ref: "#/components/schemas/TravelRuleStatusEnum" + amountUSD: + description: Amount in USD + example: 1000.5 + type: number + amount: + description: Amount in base currency + example: 0.025 + type: number + asset: + description: Asset identifier + example: BTC + type: string + action: + $ref: "#/components/schemas/TravelRuleVerdictEnum" + type: object + TravelRuleResult: + description: | + Detailed Travel Rule screening result containing provider-specific data. + Contains Travel Rule specific information like verified status, rule type, and actions. + example: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + properties: + direction: + $ref: "#/components/schemas/TravelRuleDirectionEnum" + isVerified: + description: Whether the travel rule information was verified + example: true + type: boolean + action: + $ref: "#/components/schemas/TravelRuleVerdictEnum" + providerResponse: + additionalProperties: true + description: | + Complete response from the travel rule provider. This is a dynamic object that varies + significantly between different travel rule providers (NOTABENE etc.). + Each provider has their own proprietary response format and schema. + + Examples of provider-specific structures: + - NOTABENE: Contains VASP information, PII data, protocol-specific fields + + The structure is provider-dependent and cannot be standardized as each + vendor implements their own proprietary data models and response formats. + type: object + matchedRule: + $ref: "#/components/schemas/TravelRuleMatchedRule" + type: object + TransferPeerTypeEnum: + description: Transfer peer type (source or destination) + enum: + - VAULT_ACCOUNT + - EXCHANGE_ACCOUNT + - INTERNAL_WALLET + - EXTERNAL_WALLET + - CONTRACT + - NETWORK_CONNECTION + - FIAT_ACCOUNT + - COMPOUND + - GAS_STATION + - ONE_TIME_ADDRESS + - UNKNOWN + - END_USER_WALLET + - PROGRAM_CALL + - MULTI_DESTINATION + example: VAULT_ACCOUNT + type: string + TransferPeerSubTypeEnum: + description: Transfer peer sub-type for prescreening rules + enum: + - EXTERNAL + - INTERNAL + - CONTRACT + - EXCHANGETEST + example: INTERNAL + type: string + TransactionOperationEnum: + description: Transaction operation type + enum: + - TRANSFER + - BURN + - CONTRACT_CALL + - MINT + - RAW + - TYPED_MESSAGE + - ENABLE_ASSET + - STAKE + - UNSTAKE + - WITHDRAW + - REDEEM_FROM_COMPOUND + - SUPPLY_TO_COMPOUND + - PROGRAM_CALL + - APPROVE + example: TRANSFER + type: string + TravelRuleActionEnum: + description: Travel rule action + enum: + - SCREEN + - BYPASS + - BLOCK + example: SCREEN + type: string + TravelRulePrescreeningRule: + description: | + Matched prescreening rule details. + Prescreening rules are evaluated before the main screening to determine + if screening is necessary or should be bypassed. + example: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + properties: + bypassReason: + description: Reason for bypass if prescreening rule triggered a bypass + example: MANUAL + type: string + sourceType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + sourceSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + destType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + destSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + transferPeerType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + transferPeerSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + destAddress: + description: Destination address + example: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + type: string + sourceId: + description: Source ID + example: "0" + type: string + destId: + description: Destination ID + example: ext_address_001 + type: string + asset: + description: Asset identifier + example: ETH + type: string + baseAsset: + description: Base asset + example: ETH + type: string + amount: + description: Amount + example: 0.5 + type: number + amountUSD: + description: Amount in USD + example: 1000 + type: number + networkProtocol: + description: Network protocol + example: ETH + type: string + operation: + $ref: "#/components/schemas/TransactionOperationEnum" + action: + $ref: "#/components/schemas/TravelRuleActionEnum" + type: object + ComplianceScreeningResult: + description: | + The result of the AML/Travel Rule screening. + This unified schema contains all fields that may be returned for both AML and Travel Rule screening results. + Not all fields will be present in every response - the actual fields depend on the screening type and provider. + example: + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE + payload: "{}" + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED properties: provider: - description: Screening provider - enum: - - CHAINALYSIS - - ELLIPTIC - - CHAINALYSIS_V2 - - ELLIPTIC_HOLISTIC - - NONE + description: | + The AML/Travel Rule provider name. + For AML: ELLIPTIC, CHAINALYSIS, SCORECHAIN, MERKLE_SCIENCE, etc. + For Travel Rule: NOTABENE, SYGNA, or any TRLink provider name + example: NOTABENE type: string payload: description: | - The payload of the screening result. + The raw payload of the screening result from the provider. The payload is a JSON object that contains the screening result. - The payload is different for each screening provider. + The payload structure is different for each screening provider. + This field contains the complete, unmodified response from the screening service. type: object - bypassReason: - description: Reason AML screening was bypassed - enum: - - MANUAL - - UNSUPPORTED_ASSET - - BYPASSED_FAILURE - - UNSUPPORTED_ROUTE - - PASSED_BY_POLICY - - TIMED_OUT - - BAD_CREDENTIALS - - CONFIGURATION_ERROR - - DROPPED_BY_BLOCKCHAIN - - PROCESS_DISMISSED - type: string + timestamp: + description: Unix timestamp in milliseconds when the screening result was + generated + example: 1753459111824 + format: date-time + type: number screeningStatus: + description: Current status of the screening process enum: - COMPLETED - PENDING - BYPASSED - FAILED - FROZEN + example: COMPLETED type: string - timestamp: - format: date-time + bypassReason: + description: | + Reason for bypassing the screening, if applicable. + For AML: SANCTIONS_SCREENING_BYPASS, SANCTIONS_RECIPIENT_BYPASS, etc. + For Travel Rule: BELOW_THRESHOLD, NO_TRM_AVAILABLE, etc. + example: BELOW_THRESHOLD + type: string + status: + $ref: "#/components/schemas/AmlStatusEnum" + prevStatus: + $ref: "#/components/schemas/AmlStatusEnum" + prevBypassReason: + description: Previous bypass reason before the current bypass reason change + example: BELOW_THRESHOLD + type: string + verdict: + $ref: "#/components/schemas/ScreeningVerdictEnum" + risk: + $ref: "#/components/schemas/ScreeningRiskLevelEnum" + extendedRisk: + $ref: "#/components/schemas/ScreeningRiskLevelEnum" + externalId: + description: External identifier for the screening (provider-specific) + example: aml_screening_12345 + type: string + customerRefId: + description: Customer-provided reference identifier for tracking + example: customer_ref_789 + type: string + refId: + description: Internal reference identifier + example: ref_12345 + type: string + category: + description: | + Risk category classification. + Examples: EXCHANGE, GAMBLING, MIXER, DARKNET_SERVICE, SANCTIONED_ENTITY + example: EXCHANGE + type: string + categoryId: + description: Numeric identifier for the risk category + example: 5 type: number + destAddress: + description: The destination blockchain address associated with the screening + example: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + type: string + destTag: + description: "Destination tag or memo (for chains that support it like XRP,\ + \ XLM)" + example: memo_12345 + type: string + destRecordId: + description: The destination record identifier used by the screening provider + example: record_001 + type: string + addressResolutionSignature: + description: Cryptographic signature for address resolution verification + example: 0x1234567890abcdef + type: string + amlResult: + $ref: "#/components/schemas/AmlResult" + result: + $ref: "#/components/schemas/TravelRuleResult" + detailsMessage: + description: Additional human-readable details or message about the screening + result + example: Travel rule screening completed successfully + type: string + matchedAlert: + description: | + Information about the AML alert that was matched, if any. + Contains details about the specific alert that triggered during screening. + type: object + matchedRule: + description: | + The matched rule information for this screening result. + Contains details about which screening rule was applied and matched. + type: object + matchedPrescreeningRule: + $ref: "#/components/schemas/TravelRulePrescreeningRule" + matchedNoTrmScreeningRule: + description: | + Matched no-TRM (Travel Rule Message) screening rule details. + Used when TRLink screening detects a missing TRM scenario. + type: object + customerIntegrationId: + description: Customer integration identifier used by Travel Rule providers + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerShortName: + description: Customer short name registered with Travel Rule providers + example: ACME Corp + type: string + travelRuleMessageId: + description: Travel rule message identifier for linking and tracking across + providers + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string type: object ComplianceResultStatusesEnum: - description: Status of compliance result screening. + description: Status of compliance result screening enum: + - Unknown + - Stalled - Started - NetworkConnectionAddressResolve - ScreeningPrepare @@ -30165,10 +31173,26 @@ components: - AMLInBackground - TRPreconditionChecks - TRStarted + - TRLinkStarted + - TRLinkDestinationStarted + - TRLinkDestinationPrescreenPolicy + - TRLinkDestinationNoTRMPolicy + - TRLinkDestinationScreen + - TRLinkDestinationPostscreenPolicy + - TRLinkDestinationCompleted + - TRLinkCompleted - TRCompleted - TRFailed - Completed + - RegistrationStarted + - RegistrationWaitForFirstConfirmation + - AMLRegistrationStarted + - AMLRegistrationCompleted + - TRUpdateStarted + - TRUpdateCompleted + - UpdateCompleted - IncomingStarted + - IncomingByorkSL - IncomingScreeningPrepare - IncomingWaitForFirstConfirmation - AMLIncomingStarted @@ -30179,13 +31203,20 @@ components: - TRIncomingCompleted - TRIncomingFailed - IncomingCompleted - - UpdateCompleted + - AddressAmlInitiated + - AddressAmlAddressResolve + - AddressAmlPrepare + - AddressAmlProcessing + - AddressAmlSucceeded + - AddressAmlFailed + - AddressAmlCompleted + example: Completed type: string AmlRegistrationResult: example: provider: provider success: true - timestamp: 5.637376656633329 + timestamp: 5.962133916683182 properties: provider: type: string @@ -30194,37 +31225,1182 @@ components: timestamp: type: number type: object - ComplianceResults: - description: The result of the Compliance AML/Travel Rule screening. + TRLinkRegistrationStatus: + description: TRLink registration status + enum: + - STARTING + - PRESCREENED + - COMPLETED + - FAILED + - VOID + example: COMPLETED + type: string + TRLinkProviderResult: + description: Provider-specific response data wrapper example: - aml: - provider: CHAINALYSIS - payload: "{}" - bypassReason: MANUAL - screeningStatus: COMPLETED - timestamp: 5.962133916683182 - amlRegistration: + providerResponse: "{}" + properties: + providerResponse: + description: Raw provider response + type: object + type: object + TransactionDirection: + description: Transaction direction + enum: + - INBOUND + - OUTBOUND + example: OUTBOUND + type: string + AmountRangeMinMax: + description: Amount range with minimum and maximum values + example: + min: "100" + max: "10000" + properties: + min: + description: Minimum amount + example: "100" + type: string + max: + description: Maximum amount + example: "10000" + type: string + type: object + TRLinkAmount: + description: "TRLink amount definition with range and currency, compatible with\ + \ TAP format from Policy Engine V2" + example: + range: + min: "100" + max: "10000" + currency: USD + properties: + range: + $ref: "#/components/schemas/AmountRangeMinMax" + currency: + description: Currency type + enum: + - USD + - NATIVE + example: USD + type: string + type: object + TRLinkRuleBase: + description: Base interface for TRLink policy rules + properties: + customerId: + description: Reference to TrlinkCustomer.id + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + direction: + $ref: "#/components/schemas/TransactionDirection" + sourceType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + sourceSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + sourceAddress: + description: Source address + example: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + type: string + destType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + destSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + destAddress: + description: Destination address + example: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + type: string + sourceId: + description: Source ID + example: "1" + type: string + destId: + description: Destination ID + example: "1" + type: string + asset: + description: Asset symbol + example: BTC + type: string + baseAsset: + description: Base asset symbol + example: USD + type: string + amount: + $ref: "#/components/schemas/TRLinkAmount" + networkProtocol: + description: Network protocol + example: BITCOIN + type: string + operation: + $ref: "#/components/schemas/TransactionOperationEnum" + description: + description: Rule description + type: string + isDefault: + default: false + description: Whether this is a default rule + type: boolean + type: object + TRLinkPreScreeningAction: + description: TRLink pre-screening action + enum: + - SCREEN + - PASS + example: SCREEN + type: string + TRLinkPreScreeningRule: + allOf: + - $ref: "#/components/schemas/TRLinkRuleBase" + - properties: + action: + $ref: "#/components/schemas/TRLinkPreScreeningAction" + required: + - action + type: object + description: TRLink pre-screening rule definition + example: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + type: object + TRLinkRegistrationResult: + description: TRLink registration result containing status and metadata + example: + result: + providerResponse: "{}" + matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + customerShortName: ACME Corp + provider: SUMSUB + success: true + destRecordId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + status: COMPLETED + timestamp: 1640995200000 + properties: + status: + $ref: "#/components/schemas/TRLinkRegistrationStatus" + provider: + description: The TRLink provider name + example: SUMSUB + type: string + success: + description: Whether the registration was successful + example: true + type: boolean + timestamp: + description: Unix timestamp of the registration + example: 1640995200000 + type: number + destRecordId: + description: Destination record identifier + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + travelRuleMessageId: + description: Travel rule message identifier for linking + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerIntegrationId: + description: Customer integration identifier + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerShortName: + description: Customer short name + example: ACME Corp + type: string + result: + $ref: "#/components/schemas/TRLinkProviderResult" + matchedPrescreeningRule: + $ref: "#/components/schemas/TRLinkPreScreeningRule" + required: + - status + - timestamp + type: object + TRLinkVerdict: + description: TRLink verdict after screening + enum: + - ACCEPT + - ALERT + - REJECT + - WAIT + example: ACCEPT + type: string + TRLinkTrmScreeningStatus: + description: TRLink TRM screening status + enum: + - PENDING + - ACCEPTED + - REJECTED + - FAILED + example: ACCEPTED + type: string + TRLinkPostScreeningRule: + allOf: + - $ref: "#/components/schemas/TRLinkRuleBase" + - properties: + providerIdent: + description: Provider identifier + example: sumsub + type: string + trmStatus: + $ref: "#/components/schemas/TRLinkTrmScreeningStatus" + validBefore: + description: Unix timestamp when rule expires + example: 1672531200000 + type: number + validAfter: + description: Unix timestamp when rule becomes valid + example: 1640995200000 + type: number + action: + $ref: "#/components/schemas/TRLinkVerdict" + required: + - action + type: object + description: TRLink post-screening rule definition + example: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + type: object + TRLinkProviderResultWithRule: + description: Provider response and matched rule wrapper for TRLink screening + results + example: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + properties: + providerResponse: + description: Raw provider response + type: object + matchedRule: + $ref: "#/components/schemas/TRLinkPostScreeningRule" + type: object + TRLinkMissingTrmAction: + description: TRLink missing TRM action + enum: + - WAIT + - REJECT + - ACCEPT + - INITIATE_TRM + example: WAIT + type: string + TRLinkMissingTrmRule: + allOf: + - $ref: "#/components/schemas/TRLinkRuleBase" + - properties: + validBefore: + description: Unix timestamp when rule expires + example: 1672531200000 + type: number + validAfter: + description: Unix timestamp when rule becomes valid + example: 1640995200000 + type: number + action: + $ref: "#/components/schemas/TRLinkMissingTrmAction" + required: + - action + type: object + description: TRLink missing TRM rule definition + type: object + TRLinkMissingTrmDecision: + allOf: + - $ref: "#/components/schemas/TRLinkMissingTrmRule" + - properties: + source: + description: TRLink missing TRM source + example: policy + type: string + timestamp: + description: Timestamp of the decision + format: date-time + type: string + reason: + description: Reason for the decision + example: Missing travel rule message + type: string + required: + - source + type: object + description: Interface for reporting missing TRM screening decisions in ITRLinkResult + example: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2000-01-23T04:56:07.000+00:00 + type: object + TRLinkResult: + description: TRLink screening result + example: + matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2000-01-23T04:56:07.000+00:00 + timestamp: 1640995200000 + status: COMPLETED + properties: + provider: + description: The TRLink provider name + example: SUMSUB + type: string + timestamp: + description: Unix timestamp of the screening result + example: 1640995200000 + type: number + status: + description: Status of the TRLink screening + enum: + - COMPLETED + - PENDING + - BYPASSED + - FAILED + - FROZEN + type: string + verdict: + $ref: "#/components/schemas/TRLinkVerdict" + destAddress: + description: The destination address associated with the TRLink screening + example: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + type: string + destTag: + description: Destination tag for the screening + example: memo_12345 + type: string + bypassReason: + description: Reason for bypassing the TRLink screening + example: MANUAL + type: string + detailsMessage: + description: Additional details message about the screening result + example: Screening completed successfully + type: string + customerIntegrationId: + description: Customer integration identifier + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerShortName: + description: Customer short name + example: ACME Corp + type: string + travelRuleMessageId: + description: Travel rule message identifier for linking + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + result: + $ref: "#/components/schemas/TRLinkProviderResultWithRule" + matchedPrescreeningRule: + $ref: "#/components/schemas/TRLinkPreScreeningRule" + matchedNoTrmScreeningRule: + $ref: "#/components/schemas/TRLinkMissingTrmDecision" + required: + - provider + - status + - timestamp + type: object + ComplianceResults: + description: The result of the Compliance AML/Travel Rule screening. + example: + aml: + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE + payload: "{}" + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE + screeningStatus: COMPLETED + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED + amlRegistration: provider: provider success: true - timestamp: 5.637376656633329 + timestamp: 5.962133916683182 + trlinkRegistration: + result: + providerResponse: "{}" + matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + customerShortName: ACME Corp + provider: SUMSUB + success: true + destRecordId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + status: COMPLETED + timestamp: 1640995200000 + trlinkDestinations: + - matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2000-01-23T04:56:07.000+00:00 + timestamp: 1640995200000 + status: COMPLETED + - matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2000-01-23T04:56:07.000+00:00 + timestamp: 1640995200000 + status: COMPLETED amlList: - - provider: CHAINALYSIS + - prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: MANUAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 - - provider: CHAINALYSIS + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED + - prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: MANUAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED tr: - provider: CHAINALYSIS + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: MANUAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 - status: Started + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED + status: Completed properties: aml: $ref: "#/components/schemas/ComplianceScreeningResult" @@ -30239,6 +32415,13 @@ components: $ref: "#/components/schemas/ComplianceResultStatusesEnum" amlRegistration: $ref: "#/components/schemas/AmlRegistrationResult" + trlinkRegistration: + $ref: "#/components/schemas/TRLinkRegistrationResult" + trlinkDestinations: + description: The list of TRLink destination screening results. + items: + $ref: "#/components/schemas/TRLinkResult" + type: array type: object ExtraParameters: description: | @@ -30256,13 +32439,13 @@ components: description: A list of signed messages returned for raw signing. example: derivationPath: - - 2.3021358869347655 - - 2.3021358869347655 + - 5.637376656633329 + - 5.637376656633329 signature: r: r s: s fullSig: fullSig - v: 7.061401241503109 + v: 2.3021358869347655 publicKey: publicKey content: content algorithm: MPC_ECDSA_SECP256K1 @@ -30340,13 +32523,13 @@ components: users: key: PENDING_AUTHORIZATION logic: AND - amountUSD: 1.2315135367772556 + amountUSD: 7.386281948385884 destinationAddress: destinationAddress signedBy: - signedBy - signedBy - networkFee: 6.84685269835264 - fee: 1.4894159098541704 + networkFee: 1.4894159098541704 + fee: 1.0246457001441578 feeCurrency: feeCurrency source: walletId: 046b6c7f-0b8a-43b9-b35d-6489e6daee91 @@ -30376,7 +32559,7 @@ components: blockInfo: blockHash: blockHash blockHeight: blockHeight - serviceFee: 1.0246457001441578 + serviceFee: 1.2315135367772556 dappUrl: https://app.uniswap.org addressType: "" destinations: @@ -30426,28 +32609,28 @@ components: type: null signedMessages: - derivationPath: - - 2.3021358869347655 - - 2.3021358869347655 + - 5.637376656633329 + - 5.637376656633329 signature: r: r s: s fullSig: fullSig - v: 7.061401241503109 + v: 2.3021358869347655 publicKey: publicKey content: content algorithm: MPC_ECDSA_SECP256K1 - derivationPath: - - 2.3021358869347655 - - 2.3021358869347655 + - 5.637376656633329 + - 5.637376656633329 signature: r: r s: s fullSig: fullSig - v: 7.061401241503109 + v: 2.3021358869347655 publicKey: publicKey content: content algorithm: MPC_ECDSA_SECP256K1 - index: 3.616076749251911 + index: 9.301444243932576 amountInfo: amount: amount amountUSD: amountUSD @@ -30460,7 +32643,7 @@ components: treatAsGrossAmount: true paidRent: "0.00203928" rejectedBy: rejectedBy - numOfConfirmations: 9.301444243932576 + numOfConfirmations: 7.061401241503109 exchangeTxId: exchangeTxId rewardInfo: destRewards: destRewards @@ -30468,7 +32651,7 @@ components: amlScreeningResult: provider: provider payload: "{}" - requestedAmount: 2.027123023002322 + requestedAmount: 3.616076749251911 status: status note: note blockchainInfo: @@ -30543,41 +32726,614 @@ components: isDropped: true blockchainIndex: 1.1.1 assetId: assetId - amount: 4.145608029883936 + amount: 2.027123023002322 sourceAddress: sourceAddress - netAmount: 7.386281948385884 + netAmount: 4.145608029883936 systemMessages: type: WARN message: Slow transaction processing. Outgoing transactions might be stuck. complianceResults: aml: - provider: CHAINALYSIS + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: MANUAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED amlRegistration: provider: provider success: true - timestamp: 5.637376656633329 + timestamp: 5.962133916683182 + trlinkRegistration: + result: + providerResponse: "{}" + matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + customerShortName: ACME Corp + provider: SUMSUB + success: true + destRecordId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + status: COMPLETED + timestamp: 1640995200000 + trlinkDestinations: + - matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2000-01-23T04:56:07.000+00:00 + timestamp: 1640995200000 + status: COMPLETED + - matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: description + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: description + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2000-01-23T04:56:07.000+00:00 + timestamp: 1640995200000 + status: COMPLETED amlList: - - provider: CHAINALYSIS + - prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: MANUAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 - - provider: CHAINALYSIS + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED + - prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: MANUAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED tr: - provider: CHAINALYSIS + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: MANUAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: ext_address_001 + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 5.962133916683182 - status: Started + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED + status: Completed createdBy: createdBy feePayerInfo: feePayerAccountId: "123" @@ -39428,6 +42184,17 @@ components: example: false type: boolean type: object + WebhookMetric: + example: + value: "55" + properties: + value: + description: The value of the metric + example: "55" + type: string + required: + - value + type: object NotificationStatus: description: The status of the Notification enum: @@ -44348,24 +47115,26 @@ components: - id - name type: object + AccountBasedAccessProviderDetails: + properties: + manifest: + $ref: "#/components/schemas/Manifest" + connected: + description: Whether the provider is currently connected + type: boolean + accounts: + items: + $ref: "#/components/schemas/AccountBase" + type: array + required: + - accountBased + - connected + - manifest + type: object AccountBasedAccessProvider: allOf: - $ref: "#/components/schemas/BaseProvider" - - properties: - manifest: - $ref: "#/components/schemas/Manifest" - connected: - description: Whether the provider is currently connected - type: boolean - accounts: - items: - $ref: "#/components/schemas/AccountBase" - type: array - required: - - accountBased - - connected - - manifest - type: object + - $ref: "#/components/schemas/AccountBasedAccessProviderDetails" example: id: prov_9a2c4e8f7b1d3a6e name: Premium Trading Co @@ -44382,23 +47151,25 @@ components: - id: acc_5f8e2d9c1a7b4e36 name: Trading Account 1 description: Primary trading account + DirectAccessProviderDetails: + properties: + approved: + description: Whether the provider was approved for use + type: boolean + hasTermsOfService: + description: Whether the provider has terms of service + type: boolean + termsOfServiceUrl: + description: URL to the terms of service document + type: string + required: + - accountBased + - hasTermsOfService + type: object DirectAccessProvider: allOf: - $ref: "#/components/schemas/BaseProvider" - - properties: - approved: - description: Whether the provider was approved for use - type: boolean - hasTermsOfService: - description: Whether the provider has terms of service - type: boolean - termsOfServiceUrl: - description: URL to the terms of service document - type: string - required: - - accountBased - - hasTermsOfService - type: object + - $ref: "#/components/schemas/DirectAccessProviderDetails" example: id: prov_2f8e1d9b4c7a5e3f name: DirectTrade Solutions @@ -44760,73 +47531,74 @@ components: - CONTRACT_CALL - EXECUTE - SETTLEMENT + - DELIVERY example: EXECUTE type: string + FeePropertiesDetails: + properties: + feeType: + description: | + The type of fee, such as ORDER, NETWORK, or SPREAD. ORDER - Fee for executing the order. NETWORK - Fee for network transactions. SPREAD - Fee for the difference between buy and sell prices. + enum: + - ORDER + - NETWORK + - SPREAD + type: string + assetId: + description: The asset identifier for the fee. + type: string + amountType: + description: "The type of amount for the fee, either FIXED or BPS (basis\ + \ points)." + enum: + - FIXED + - BPS + type: string + required: + - amountType + - assetId + - feeType + type: object FixedFee: - allOf: - - properties: - amountType: - enum: - - FIXED - type: string - amount: - description: The fixed amount of the fee - example: "0.01" - pattern: ^\d+(\.\d+)?$ - type: string - required: - - amount - - amountType - type: object example: amountType: FIXED amount: "0.01" + properties: + amountType: + enum: + - FIXED + type: string + amount: + description: The fixed amount of the fee + example: "0.01" + pattern: ^\d+(\.\d+)?$ + type: string + required: + - amount + - amountType + type: object BpsFee: - allOf: - - properties: - amountType: - enum: - - BPS - type: string - amount: - description: "Fee in basis points (1 = 0.01%, 10000 = 100%)" - example: 50 - maximum: 10000 - minimum: 0 - type: number - required: - - amount - - amountType - type: object example: amountType: BPS amount: 50 + properties: + amountType: + enum: + - BPS + type: string + amount: + description: "Fee in basis points (1 = 0.01%, 10000 = 100%)" + example: 50 + maximum: 10000 + minimum: 0 + type: number + required: + - amount + - amountType + type: object Fee: allOf: - - properties: - feeType: - description: | - The type of fee, such as ORDER, NETWORK, or SPREAD. ORDER - Fee for executing the order. NETWORK - Fee for network transactions. SPREAD - Fee for the difference between buy and sell prices. - enum: - - ORDER - - NETWORK - - SPREAD - type: string - assetId: - description: The asset identifier for the fee. - type: string - amountType: - description: "The type of amount for the fee, either FIXED or BPS (basis\ - \ points)." - enum: - - FIXED - - BPS - type: string - required: - - amountType - - assetId - - feeType - type: object + - $ref: "#/components/schemas/FeePropertiesDetails" - discriminator: mapping: FIXED: "#/components/schemas/FixedFee" @@ -44851,6 +47623,53 @@ components: required: - type type: object + QuotePropertiesDetails: + properties: + via: + $ref: "#/components/schemas/AccessType" + id: + type: string + type: + enum: + - COMMITTED + - INDICATIVE + type: string + quoteAssetId: + type: string + baseAssetId: + type: string + baseAmount: + type: string + quoteAmount: + type: string + priceImpact: + type: number + quoteMinAmount: + type: string + executionSteps: + items: + $ref: "#/components/schemas/ExecutionStepDetails" + type: array + generalFees: + items: + $ref: "#/components/schemas/Fee" + type: array + side: + description: Side of the order + enum: + - BUY + - SELL + type: string + required: + - baseAmount + - baseAssetId + - id + - quoteAmount + - quoteAssetId + - side + - type + - via + type: object CommittedQuoteType: example: type: COMMITTED @@ -44883,52 +47702,7 @@ components: type: object Quote: allOf: - - properties: - via: - $ref: "#/components/schemas/AccessType" - id: - type: string - type: - enum: - - COMMITTED - - INDICATIVE - type: string - quoteAssetId: - type: string - baseAssetId: - type: string - baseAmount: - type: string - quoteAmount: - type: string - priceImpact: - type: number - quoteMinAmount: - type: string - executionSteps: - items: - $ref: "#/components/schemas/ExecutionStepDetails" - type: array - generalFees: - items: - $ref: "#/components/schemas/Fee" - type: array - side: - description: Side of the order - enum: - - BUY - - SELL - type: string - required: - - baseAmount - - baseAssetId - - id - - quoteAmount - - quoteAssetId - - side - - type - - via - type: object + - $ref: "#/components/schemas/QuotePropertiesDetails" - discriminator: mapping: COMMITTED: "#/components/schemas/CommittedQuoteType" @@ -44974,6 +47748,7 @@ components: OrderStatus: enum: - CREATED + - AWAITING_PAYMENT - PENDING_USER_ACTION - PROCESSING - CANCELED @@ -45080,6 +47855,23 @@ components: - FOK example: FOK type: string + LimitTypeDetails: + properties: + type: + description: Order type for limit orders + enum: + - LIMIT + type: string + timeInForce: + $ref: "#/components/schemas/TimeInForce" + limitPrice: + description: Price for limit orders + type: string + required: + - limitPrice + - timeInForce + - type + type: object ExecutionRequestBaseDetails: example: side: BUY @@ -45117,22 +47909,7 @@ components: type: object LimitExecutionRequestDetails: allOf: - - properties: - type: - description: Order type for limit orders - enum: - - LIMIT - type: string - timeInForce: - $ref: "#/components/schemas/TimeInForce" - limitPrice: - description: Price for limit orders - type: string - required: - - limitPrice - - timeInForce - - type - type: object + - $ref: "#/components/schemas/LimitTypeDetails" - $ref: "#/components/schemas/ExecutionRequestBaseDetails" example: type: LIMIT @@ -45142,17 +47919,19 @@ components: quoteAssetId: BTC side: BUY baseAmount: "1000.00" + MarketTypeDetails: + properties: + type: + description: Order type for market orders + enum: + - MARKET + type: string + required: + - type + type: object MarketExecutionRequestDetails: allOf: - - properties: - type: - description: Order type for market orders - enum: - - MARKET - type: string - required: - - type - type: object + - $ref: "#/components/schemas/MarketTypeDetails" - $ref: "#/components/schemas/ExecutionRequestBaseDetails" example: type: MARKET @@ -45209,7 +47988,6 @@ components: minimum: 1 type: number slippageBps: - default: 1 description: Slippage tolerance in basis points (bps) for quote orders - 1 is 0.01% and 10000 is 100% maximum: 10000 @@ -45219,13 +47997,15 @@ components: - count - type type: object + ReQuoteDetails: + properties: + reQuote: + $ref: "#/components/schemas/ReQuoteDetails_reQuote" + type: object QuoteExecutionWithRequoteRequestDetails: allOf: - $ref: "#/components/schemas/QuoteExecutionRequestDetails" - - properties: - reQuote: - $ref: "#/components/schemas/QuoteExecutionWithRequoteRequestDetails_allOf_reQuote" - type: object + - $ref: "#/components/schemas/ReQuoteDetails" example: type: QUOTE quoteId: quote_8f2e4d1a9c5b7e3f @@ -45626,22 +48406,7 @@ components: type: object LimitExecutionResponseDetails: allOf: - - properties: - type: - description: Order type for limit orders - enum: - - LIMIT - type: string - timeInForce: - $ref: "#/components/schemas/TimeInForce" - limitPrice: - description: Price for limit orders - type: string - required: - - limitPrice - - timeInForce - - type - type: object + - $ref: "#/components/schemas/LimitTypeDetails" - $ref: "#/components/schemas/ExecutionResponseBaseDetails" example: type: LIMIT @@ -45655,15 +48420,7 @@ components: quoteAssetRail: BLOCKCHAIN MarketExecutionResponseDetails: allOf: - - properties: - type: - description: Order type for market orders - enum: - - MARKET - type: string - required: - - type - type: object + - $ref: "#/components/schemas/MarketTypeDetails" - $ref: "#/components/schemas/ExecutionResponseBaseDetails" example: type: MARKET @@ -45673,25 +48430,27 @@ components: baseAssetRail: BLOCKCHAIN quoteAssetId: BTC quoteAssetRail: BLOCKCHAIN + QuoteExecutionTypeDetails: + properties: + type: + description: Order type for quote orders + enum: + - QUOTE + type: string + quoteId: + description: Quote ID for quote orders + type: string + quoteAmount: + description: Quote amount for quote orders + type: string + required: + - quoteAmount + - quoteId + - type + type: object QuoteExecutionResponseDetails: allOf: - - properties: - type: - description: Order type for quote orders - enum: - - QUOTE - type: string - quoteId: - description: Quote ID for quote orders - type: string - quoteAmount: - description: Quote amount for quote orders - type: string - required: - - quoteAmount - - quoteId - - type - type: object + - $ref: "#/components/schemas/QuoteExecutionTypeDetails" - $ref: "#/components/schemas/ExecutionResponseBaseDetails" example: type: QUOTE @@ -45706,10 +48465,7 @@ components: QuoteExecutionWithRequoteResponseDetails: allOf: - $ref: "#/components/schemas/QuoteExecutionResponseDetails" - - properties: - reQuote: - $ref: "#/components/schemas/QuoteExecutionWithRequoteResponseDetails_allOf_reQuote" - type: object + - $ref: "#/components/schemas/ReQuoteDetails" example: type: QUOTE quoteId: quote_8f2e4d1a9c5b7e3f @@ -45762,41 +48518,563 @@ components: required: - name type: object - PaymentInstructions: + Iban: + example: GB82WEST12345698765432 + pattern: "^[A-Z]{2}\\d{2}[a-zA-Z0-9]{1,30}$" + type: string + IbanAddress: + example: + accountHolder: + name: Maria Gonzalez + city: Madrid + country: ES + subdivision: MD + address: "Calle Gran Via 123, 2°B" + postalCode: "28013" + iban: ES9121000418450200051332 + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + iban: + example: GB82WEST12345698765432 + pattern: "^[A-Z]{2}\\d{2}[a-zA-Z0-9]{1,30}$" + type: string + required: + - accountHolder + - iban + type: object + IbanDestination: example: type: IBAN address: accountHolder: - name: John Smith - city: London - country: GB - subdivision: ENG - address: 123 King's Road - postalCode: SW3 4LX - iban: GB82WEST12345698765432 - referenceId: PAY_INST_abc123def456 + name: Maria Gonzalez + city: Madrid + country: ES + subdivision: MD + address: "Calle Gran Via 123, 2°B" + postalCode: "28013" + iban: ES9121000418450200051332 properties: type: enum: - IBAN + type: string + address: + $ref: "#/components/schemas/IbanAddress" + required: + - address + - type + type: object + SwiftCode: + example: CHASUS33XXX + pattern: "^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$" + type: string + SwiftAddress: + example: + accountHolder: + name: Emma Watson + city: London + country: GB + subdivision: ENG + address: "25 Bank Street, Canary Wharf" + postalCode: E14 5JP + swiftCode: CHASUS33XXX + routingNumber: "026009593" + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + swiftCode: + example: CHASUS33XXX + pattern: "^[A-Z]{6}[A-Z0-9]{2}([A-Z0-9]{3})?$" + type: string + routingNumber: + description: Routing number identifying the bank account. + type: string + required: + - accountHolder + - routingNumber + - swiftCode + type: object + SwiftDestination: + example: + type: SWIFT + address: + accountHolder: + name: Pierre Dupont + city: Paris + country: FR + subdivision: IDF + address: 25 Avenue des Champs-Élysées + postalCode: "75008" + swiftCode: BNPAFRPPXXX + routingNumber: "20041" + properties: + type: + enum: - SWIFT + type: string + address: + $ref: "#/components/schemas/SwiftAddress" + required: + - address + - type + type: object + AchAccountType: + description: Type of the bank account. + enum: + - CHECKING + - SAVINGS + example: CHECKING + type: string + AchAddress: + example: + accountHolder: + name: Sarah Johnson + city: Austin + country: US + subdivision: TX + address: 456 Oak Avenue + postalCode: "78701" + bankName: Chase Bank + bankAccountNumber: "1234567890123" + routingNumber: "021000021" + accountType: CHECKING + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + bankName: + description: Name of the bank. + type: string + bankAccountNumber: + description: The bank account number for the ACH transfer. + pattern: "^\\d{4,17}$" + type: string + routingNumber: + description: Routing number identifying the bank account. + pattern: "^\\d{9}$" + type: string + accountType: + $ref: "#/components/schemas/AchAccountType" + required: + - accountHolder + - accountType + - bankAccountNumber + - routingNumber + type: object + AchDestination: + example: + type: ACH + address: + accountHolder: + name: Sarah Johnson + city: Austin + country: US + subdivision: TX + address: 456 Oak Avenue + postalCode: "78701" + bankName: Chase Bank + bankAccountNumber: "1234567890123" + routingNumber: "021000021" + accountType: CHECKING + properties: + type: + enum: - ACH + type: string + address: + $ref: "#/components/schemas/AchAddress" + required: + - address + - type + type: object + USWireAddress: + example: + accountHolder: + name: Michael Thompson + city: Chicago + country: US + subdivision: IL + address: "200 West Jackson Blvd, Suite 1500" + postalCode: "60606" + bankName: JPMorgan Chase Bank + bankAccountNumber: "987654321012345" + routingNumber: "021000021" + bankAddress: "270 Park Avenue, New York, NY 10017" + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + bankName: + description: Name of the bank. + type: string + bankAccountNumber: + description: The bank account number for the wire transfer. + type: string + routingNumber: + description: Routing number identifying the bank account. + type: string + bankAddress: + description: Address of the bank. + type: string + required: + - accountHolder + - bankAccountNumber + - routingNumber + type: object + USWireDestination: + example: + type: US_WIRE + address: + accountHolder: + name: John Smith + city: New York + country: US + subdivision: NY + address: 123 Wall Street + postalCode: "10005" + bankName: Chase Bank + bankAccountNumber: "123456789012" + routingNumber: "021000021" + bankAddress: "270 Park Avenue, New York, NY 10017" + properties: + type: + enum: - US_WIRE + type: string + address: + $ref: "#/components/schemas/USWireAddress" + required: + - address + - type + type: object + SpeiAddress: + example: + accountHolder: + name: Carlos Martinez Lopez + city: Mexico City + country: MX + subdivision: CDMX + address: Avenida Reforma 123 + postalCode: "06600" + bankName: BBVA México + bankAccountNumber: "012180001234567890" + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + bankName: + description: Name of the bank. + type: string + bankAccountNumber: + description: The bank account number for the SPEI transfer. + type: string + required: + - accountHolder + - bankAccountNumber + type: object + SpeiDestination: + example: + type: SPEI + address: + accountHolder: + name: Carlos Martinez Lopez + city: Mexico City + country: MX + subdivision: CDMX + address: Avenida Reforma 123 + postalCode: "06600" + bankName: BBVA México + bankAccountNumber: "012180001234567890" + properties: + type: + enum: - SPEI + type: string + address: + $ref: "#/components/schemas/SpeiAddress" + required: + - address + - type + type: object + SEPAAddress: + example: + accountHolder: + name: Pierre Dubois + city: Paris + country: FR + subdivision: "11" + address: 15 Rue de la Paix + postalCode: "75001" + iban: FR1420041010050500013M02606 + bic: PSSTFRPPPAR + bankName: La Banque Postale + bankBranch: Paris Central + bankAddress: "1 Boulevard de Vaugirard, 75015 Paris" + purposeCode: TRAD + taxId: FR12345678901 + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + iban: + example: GB82WEST12345698765432 + pattern: "^[A-Z]{2}\\d{2}[a-zA-Z0-9]{1,30}$" + type: string + bic: + description: Bank Identifier Code (SWIFT/BIC) + type: string + bankName: + type: string + bankBranch: + type: string + bankAddress: + type: string + purposeCode: + description: ISO purpose code for the transfer + type: string + taxId: + description: Beneficiary tax identification number + type: string + required: + - accountHolder + - iban + type: object + SEPADestination: + example: + type: SEPA + address: + accountHolder: + name: Hans Mueller + city: Berlin + country: DE + subdivision: BE + address: Unter den Linden 15 + postalCode: "10117" + iban: DE89370400440532013000 + bic: COBADEFFXXX + bankName: Commerzbank AG + properties: + type: + enum: - SEPA + type: string + address: + $ref: "#/components/schemas/SEPAAddress" + required: + - address + - type + type: object + PixAddress: + example: + accountHolder: + name: Maria Silva Santos + city: São Paulo + country: BR + subdivision: SP + address: "Rua das Flores, 123" + postalCode: 01234-567 + pixKey: "11987654321" + keyType: phone + bankName: Banco do Brasil + bankCode: "001" + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + pixKey: + type: string + keyType: + enum: + - cpf + - cnpj + - email + - phone + - random + type: string + bankName: + type: string + bankCode: + type: string + required: + - accountHolder + - keyType + - pixKey + type: object + PixDestination: + example: + type: PIX + address: + accountHolder: + name: Maria Silva Santos + city: São Paulo + country: BR + subdivision: SP + address: "Rua das Flores, 123" + postalCode: 01234-567 + pixKey: "11987654321" + keyType: phone + bankName: Banco do Brasil + bankCode: "001" + properties: + type: + enum: - PIX + type: string + address: + $ref: "#/components/schemas/PixAddress" + required: + - address + - type + type: object + LocalBankAfricaAccountNumber: + example: "1234567890123" + pattern: "^\\d{4,17}$" + type: string + LocalBankTransferAfricaAddress: + example: + accountHolder: + name: Adaora Okafor + city: Lagos + country: NG + subdivision: LA + address: 15 Victoria Island Road + postalCode: "101001" + accountNumber: "1234567890123" + bankName: First Bank of Nigeria + bankCode: "011" + properties: + accountHolder: + $ref: "#/components/schemas/AccountHolderDetails" + accountNumber: + example: "1234567890123" + pattern: "^\\d{4,17}$" + type: string + bankName: + description: Name of the bank + type: string + bankCode: + description: Internal bank identifier + type: string + required: + - accountHolder + - accountNumber + - bankCode + - bankName + type: object + LocalBankTransferAfricaDestination: + example: + type: LOCAL_BANK_TRANSFER_AFRICA + address: + accountHolder: + name: Adaora Okafor + city: Lagos + country: NG + subdivision: LA + address: 15 Victoria Island Road + postalCode: "101001" + accountNumber: "1234567890123" + bankName: First Bank of Nigeria + bankCode: "011" + properties: + type: + enum: - LOCAL_BANK_TRANSFER_AFRICA - - MOBILE_MONEY type: string address: + $ref: "#/components/schemas/LocalBankTransferAfricaAddress" + required: + - address + - type + type: object + MobilePhoneNumber: + description: Mobile phone number in E.164 format + example: "+14155551234" + pattern: "^\\+[1-9]\\d{1,14}$" + type: string + MobileMoneyAddress: + example: + accountHolder: + name: Grace Wanjiku Kamau + city: Nairobi + country: KE + subdivision: NRB + address: Westlands Avenue 45 + postalCode: "00100" + mobilePhoneNumber: "+254712345678" + provider: m-pesa + beneficiaryDocumentId: "12345678" + beneficiaryRelationship: self + properties: + accountHolder: $ref: "#/components/schemas/AccountHolderDetails" - referenceId: + mobilePhoneNumber: + description: Mobile phone number in E.164 format + example: "+14155551234" + pattern: "^\\+[1-9]\\d{1,14}$" + type: string + provider: + description: Mobile money provider + enum: + - m-pesa + - airtel + - mtn + - tigo + - orange + type: string + beneficiaryDocumentId: + description: Beneficiary document identification (may be required) + type: string + beneficiaryRelationship: + description: Relationship to beneficiary for AML purposes + type: string + required: + - accountHolder + - mobilePhoneNumber + - provider + type: object + MobileMoneyDestination: + example: + type: MOBILE_MONEY + address: + accountHolder: + name: Grace Wanjiku Kamau + city: Nairobi + country: KE + subdivision: NRB + address: Westlands Avenue 45 + postalCode: "00100" + mobilePhoneNumber: "+254712345678" + provider: m-pesa + beneficiaryDocumentId: "12345678" + beneficiaryRelationship: self + properties: + type: + enum: + - MOBILE_MONEY type: string + address: + $ref: "#/components/schemas/MobileMoneyAddress" required: - address - - referenceId - type type: object + FiatDestination: + oneOf: + - $ref: "#/components/schemas/IbanDestination" + - $ref: "#/components/schemas/SwiftDestination" + - $ref: "#/components/schemas/AchDestination" + - $ref: "#/components/schemas/USWireDestination" + - $ref: "#/components/schemas/SpeiDestination" + - $ref: "#/components/schemas/SEPADestination" + - $ref: "#/components/schemas/PixDestination" + - $ref: "#/components/schemas/LocalBankTransferAfricaDestination" + - $ref: "#/components/schemas/MobileMoneyDestination" + PaymentInstructionsDetails: + properties: + referenceId: + type: string + type: object + PaymentInstructions: + allOf: + - $ref: "#/components/schemas/FiatDestination" + - $ref: "#/components/schemas/PaymentInstructionsDetails" OrderDetails: example: id: order_9f4e2d8b1c6a5e73 @@ -50732,43 +54010,546 @@ components: policy rule on tenant configuration. type: boolean type: object - ComplianceScreeningResultFullPayload: - description: The result of the Travel Rule screening. + ScreeningAlertExposureTypeEnum: + description: Alert exposure type + enum: + - DIRECT + - INDIRECT + example: DIRECT + type: string + ScreeningAmlAlert: + description: AML alert information example: - provider: provider + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + properties: + alertLevel: + $ref: "#/components/schemas/AlertLevelEnum" + alertName: + description: Name or type of the alert + example: Sanctions Match + type: string + category: + description: Alert category + example: SANCTIONED_ENTITY + type: string + service: + description: Service that generated the alert + example: CHAINALYSIS + type: string + externalId: + description: External identifier for the alert + example: alert_12345 + type: string + alertAmount: + description: Amount associated with the alert + example: 1000.5 + type: number + exposureType: + $ref: "#/components/schemas/ScreeningAlertExposureTypeEnum" + policyAction: + description: Recommended action based on policy + example: BLOCK + type: string + categoryId: + description: Category identifier + example: 101 + type: number + required: + - alertAmount + - alertLevel + - exposureType + - externalId + type: object + PolicyVerdictActionEnum-2: + description: Policy verdict action + enum: + - ALLOW + - BLOCK + - SCREEN + - ACCEPT + - REJECT + - ALERT + - WAIT + - FREEZE + - CANCEL + example: ALLOW + type: string + ScreeningAmlMatchedRule: + description: AML matched rule information + example: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + properties: + ruleId: + description: Identifier of the matched rule + example: rule_001 + type: string + ruleName: + description: Name of the matched rule + example: High Risk Sanctions Check + type: string + action: + $ref: "#/components/schemas/PolicyVerdictActionEnum-2" + type: object + ScreeningAmlResult: + description: | + Detailed AML screening result information. + Contains alerts, risk scores, and other AML-specific data from provider-specific responses. + example: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + properties: + alerts: + description: List of AML alerts triggered during screening + items: + $ref: "#/components/schemas/ScreeningAmlAlert" + type: array + providerResponse: + additionalProperties: true + description: | + Complete response from the AML provider. This is a dynamic object that varies + significantly between different AML providers (Chainalysis, Elliptic, etc.). + Each provider has their own proprietary response format and schema. + + Examples of provider-specific structures: + - Chainalysis: Contains cluster info, risk scores, sanctions data + - Elliptic: Includes risk assessment, entity types, compliance flags + + The structure is provider-dependent and cannot be standardized as each + vendor implements their own proprietary data models and response formats. + type: object + matchedRule: + $ref: "#/components/schemas/ScreeningAmlMatchedRule" + matchedAlert: + $ref: "#/components/schemas/ScreeningAmlAlert" + type: object + ScreeningTravelRuleMatchedRule: + description: The travel rule configuration that was matched + example: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + properties: + direction: + $ref: "#/components/schemas/TravelRuleDirectionEnum" + status: + $ref: "#/components/schemas/TravelRuleStatusEnum" + amountUSD: + description: Amount in USD + example: 1000.5 + type: number + amount: + description: Amount in base currency + example: 0.025 + type: number + asset: + description: Asset identifier + example: BTC + type: string + action: + $ref: "#/components/schemas/TravelRuleVerdictEnum" + type: object + ScreeningTravelRuleResult: + description: | + Detailed Travel Rule screening result containing provider-specific data. + Contains Travel Rule specific information like verified status, rule type, and actions. + example: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + properties: + direction: + $ref: "#/components/schemas/TravelRuleDirectionEnum" + isVerified: + description: Whether the travel rule information was verified + example: true + type: boolean + action: + $ref: "#/components/schemas/TravelRuleVerdictEnum" + providerResponse: + additionalProperties: true + description: | + Complete response from the travel rule provider. This is a dynamic object that varies + significantly between different travel rule providers (NOTABENE etc.). + Each provider has their own proprietary response format and schema. + + Examples of provider-specific structures: + - NOTABENE: Contains VASP information, PII data, protocol-specific fields + + The structure is provider-dependent and cannot be standardized as each + vendor implements their own proprietary data models and response formats. + type: object + matchedRule: + $ref: "#/components/schemas/ScreeningTravelRuleMatchedRule" + type: object + ScreeningTravelRulePrescreeningRule: + description: | + Matched prescreening rule details. + Prescreening rules are evaluated before the main screening to determine + if screening is necessary or should be bypassed. + example: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: "2" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + properties: + bypassReason: + description: Reason for bypass if prescreening rule triggered a bypass + example: MANUAL + type: string + sourceType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + sourceSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + destType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + destSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + transferPeerType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + transferPeerSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + destAddress: + description: Destination address + example: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + type: string + sourceId: + description: Source ID + example: "0" + type: string + destId: + description: Destination ID + example: "2" + type: string + asset: + description: Asset identifier + example: ETH + type: string + baseAsset: + description: Base asset + example: ETH + type: string + amount: + description: Amount + example: 0.5 + type: number + amountUSD: + description: Amount in USD + example: 1000 + type: number + networkProtocol: + description: Network protocol + example: ETH + type: string + operation: + $ref: "#/components/schemas/TransactionOperationEnum" + action: + $ref: "#/components/schemas/TravelRuleActionEnum" + type: object + ComplianceScreeningResultFullPayload: + description: | + The result of the AML/Travel Rule screening. + This unified schema contains all fields that may be returned for both AML and Travel Rule screening results. + Not all fields will be present in every response - the actual fields depend on the screening type and provider. + example: + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: bypassReason + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: "2" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 0.8008281904610115 + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED properties: provider: + description: | + The AML/Travel Rule provider name. + For AML: ELLIPTIC, CHAINALYSIS, etc. + For Travel Rule: NOTABENE, SUMSUB, or any TRLink provider name + example: NOTABENE type: string payload: description: | - The payload of the screening result. + The raw payload of the screening result from the provider. The payload is a JSON object that contains the screening result. - The payload is different for each screening provider. + The payload structure is different for each screening provider. + This field contains the complete, unmodified response from the screening service. type: object - bypassReason: - type: string + timestamp: + description: Unix timestamp in milliseconds when the screening result was + generated + example: 1753459111824 + format: date-time + type: number screeningStatus: + description: Current status of the screening process enum: - COMPLETED - PENDING - BYPASSED - FAILED - FROZEN + example: COMPLETED type: string - timestamp: - format: date-time + bypassReason: + description: | + Reason for bypassing the screening, if applicable. + For AML: SANCTIONS_SCREENING_BYPASS, SANCTIONS_RECIPIENT_BYPASS, etc. + For Travel Rule: BELOW_THRESHOLD, NO_TRM_AVAILABLE, etc. + example: BELOW_THRESHOLD + type: string + status: + $ref: "#/components/schemas/AmlStatusEnum" + prevStatus: + $ref: "#/components/schemas/AmlStatusEnum" + prevBypassReason: + description: Previous bypass reason before the current bypass reason change + example: BELOW_THRESHOLD + type: string + verdict: + $ref: "#/components/schemas/ScreeningVerdictEnum" + risk: + $ref: "#/components/schemas/ScreeningRiskLevelEnum" + extendedRisk: + $ref: "#/components/schemas/ScreeningRiskLevelEnum" + externalId: + description: External identifier for the screening (provider-specific) + example: aml_screening_12345 + type: string + customerRefId: + description: Customer-provided reference identifier for tracking + example: customer_ref_789 + type: string + refId: + description: Internal reference identifier + example: ref_12345 + type: string + category: + description: | + Risk category classification. + Examples: EXCHANGE, GAMBLING, MIXER, DARKNET_SERVICE, SANCTIONED_ENTITY + example: EXCHANGE + type: string + categoryId: + description: Numeric identifier for the risk category + example: 5 type: number + destAddress: + description: The destination blockchain address associated with the screening + example: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + type: string + destTag: + description: "Destination tag or memo (for chains that support it like XRP,\ + \ XLM)" + example: memo_12345 + type: string + destRecordId: + description: The destination record identifier used by the screening provider + example: record_001 + type: string + addressResolutionSignature: + description: Cryptographic signature for address resolution verification + example: 0x1234567890abcdef + type: string + amlResult: + $ref: "#/components/schemas/ScreeningAmlResult" + result: + $ref: "#/components/schemas/ScreeningTravelRuleResult" + detailsMessage: + description: Additional human-readable details or message about the screening + result + example: Travel rule screening completed successfully + type: string + matchedAlert: + description: | + Information about the AML alert that was matched, if any. + Contains details about the specific alert that triggered during screening. + type: object + matchedRule: + description: | + The matched rule information for this screening result. + Contains details about which screening rule was applied and matched. + type: object + matchedPrescreeningRule: + $ref: "#/components/schemas/ScreeningTravelRulePrescreeningRule" + matchedNoTrmScreeningRule: + description: | + Matched no-TRM (Travel Rule Message) screening rule details. + Used when TRLink screening detects a missing TRM scenario. + type: object + customerIntegrationId: + description: Customer integration identifier used by Travel Rule providers + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerShortName: + description: Customer short name registered with Travel Rule providers + example: ACME Corp + type: string + travelRuleMessageId: + description: Travel rule message identifier for linking and tracking across + providers + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string type: object AmlRegistrationResultFullPayload: description: The results of the AML address registration. example: provider: provider success: true - timestamp: 6.027456183070403 + timestamp: 0.8008281904610115 properties: provider: type: string @@ -50777,37 +54558,1153 @@ components: timestamp: type: number type: object + TRLinkRegistrationStatusEnum: + description: TRLink registration status + enum: + - STARTING + - PRESCREENED + - COMPLETED + - FAILED + - VOID + example: COMPLETED + type: string + ScreeningTRLinkAmount: + description: "TRLink amount definition with range and currency, compatible with\ + \ TAP format from Policy Engine V2" + example: + range: + min: "100" + max: "10000" + currency: USD + properties: + range: + $ref: "#/components/schemas/AmountRangeMinMax" + currency: + description: Currency type + enum: + - USD + - NATIVE + example: USD + type: string + type: object + ScreeningTRLinkRuleBase: + description: Base interface for TRLink policy rules + properties: + customerId: + description: Reference to TrlinkCustomer.id + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + direction: + $ref: "#/components/schemas/TravelRuleDirectionEnum" + sourceType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + sourceSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + sourceAddress: + description: Source address + example: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + type: string + destType: + $ref: "#/components/schemas/TransferPeerTypeEnum" + destSubType: + $ref: "#/components/schemas/TransferPeerSubTypeEnum" + destAddress: + description: Destination address + example: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + type: string + sourceId: + description: Source ID + example: "1" + type: string + destId: + description: Destination ID + example: "1" + type: string + asset: + description: Asset symbol + example: BTC + type: string + baseAsset: + description: Base asset symbol + example: USD + type: string + amount: + $ref: "#/components/schemas/ScreeningTRLinkAmount" + networkProtocol: + description: Network protocol + example: BITCOIN + type: string + operation: + $ref: "#/components/schemas/TransactionOperationEnum" + description: + description: Rule description + example: Rule for high-value BTC transfers + type: string + isDefault: + default: false + description: Whether this is a default rule + type: boolean + type: object + TRLinkPreScreeningActionEnum: + description: TRLink pre-screening action + enum: + - SCREEN + - PASS + example: SCREEN + type: string + ScreeningTRLinkPrescreeningRule: + allOf: + - $ref: "#/components/schemas/ScreeningTRLinkRuleBase" + - properties: + action: + $ref: "#/components/schemas/TRLinkPreScreeningActionEnum" + required: + - action + type: object + description: TRLink pre-screening rule definition + example: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + type: object + TRLinkRegistrationResultFullPayload: + description: TRLink registration result containing status and metadata + example: + result: + providerResponse: "{}" + matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + customerShortName: ACME Corp + provider: SUMSUB + success: true + destRecordId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + status: COMPLETED + timestamp: 1640995200000 + properties: + status: + $ref: "#/components/schemas/TRLinkRegistrationStatusEnum" + provider: + description: The TRLink provider name + example: SUMSUB + type: string + success: + description: Whether the registration was successful + example: true + type: boolean + timestamp: + description: Unix timestamp of the registration + example: 1640995200000 + type: number + destRecordId: + description: Destination record identifier + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + travelRuleMessageId: + description: Travel rule message identifier for linking + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerIntegrationId: + description: Customer integration identifier + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerShortName: + description: Customer short name + example: ACME Corp + type: string + result: + $ref: "#/components/schemas/TRLinkProviderResult" + matchedPrescreeningRule: + $ref: "#/components/schemas/ScreeningTRLinkPrescreeningRule" + required: + - status + - timestamp + type: object + TRLinkVerdictEnum: + description: TRLink verdict after screening + enum: + - ACCEPT + - ALERT + - REJECT + - WAIT + example: ACCEPT + type: string + TRLinkTrmScreeningStatusEnum: + description: TRLink TRM screening status + enum: + - PENDING + - ACCEPTED + - REJECTED + - FAILED + example: ACCEPTED + type: string + ScreeningTRLinkPostScreeningRule: + allOf: + - $ref: "#/components/schemas/ScreeningTRLinkRuleBase" + - properties: + providerIdent: + description: Provider identifier + example: sumsub + type: string + trmStatus: + $ref: "#/components/schemas/TRLinkTrmScreeningStatusEnum" + validBefore: + description: Unix timestamp when rule expires + example: 1672531200000 + type: number + validAfter: + description: Unix timestamp when rule becomes valid + example: 1640995200000 + type: number + action: + $ref: "#/components/schemas/TRLinkVerdictEnum" + required: + - action + type: object + description: TRLink post-screening rule definition + example: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + type: object + TRLinkProviderResultWithRule-2: + description: Provider response and matched rule wrapper for TRLink screening + results + example: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + properties: + providerResponse: + description: Raw provider response + type: object + matchedRule: + $ref: "#/components/schemas/ScreeningTRLinkPostScreeningRule" + type: object + TRLinkMissingTrmActionEnum: + description: TRLink missing TRM action + enum: + - WAIT + - REJECT + - ACCEPT + - INITIATE_TRM + example: WAIT + type: string + ScreeningTRLinkMissingTrmRule: + allOf: + - $ref: "#/components/schemas/ScreeningTRLinkRuleBase" + - properties: + validBefore: + description: Unix timestamp when rule expires + example: 1672531200000 + type: number + validAfter: + description: Unix timestamp when rule becomes valid + example: 1640995200000 + type: number + action: + $ref: "#/components/schemas/TRLinkMissingTrmActionEnum" + required: + - action + type: object + description: TRLink missing TRM rule definition + type: object + ScreeningTRLinkMissingTrmDecision: + allOf: + - $ref: "#/components/schemas/ScreeningTRLinkMissingTrmRule" + - properties: + source: + description: TRLink missing TRM source + example: policy + type: string + timestamp: + description: Timestamp of the decision + example: 2023-10-05T14:48:00Z + format: date-time + type: string + reason: + description: Reason for the decision + example: Missing travel rule message + type: string + required: + - source + type: object + description: Interface for reporting missing TRM screening decisions in ITRLinkResult + example: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2023-10-05T14:48:00Z + type: object + TRLinkResultFullPayload: + description: TRLink screening result + example: + matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2023-10-05T14:48:00Z + timestamp: 1640995200000 + status: COMPLETED + properties: + provider: + description: The TRLink provider name + example: SUMSUB + type: string + timestamp: + description: Unix timestamp of the screening result + example: 1640995200000 + type: number + status: + description: Status of the TRLink screening + enum: + - COMPLETED + - PENDING + - BYPASSED + - FAILED + - FROZEN + type: string + verdict: + $ref: "#/components/schemas/TRLinkVerdictEnum" + destAddress: + description: The destination address associated with the TRLink screening + example: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + type: string + destTag: + description: Destination tag for the screening + example: memo_12345 + type: string + bypassReason: + description: Reason for bypassing the TRLink screening + example: MANUAL + type: string + detailsMessage: + description: Additional details message about the screening result + example: Screening completed successfully + type: string + customerIntegrationId: + description: Customer integration identifier + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + customerShortName: + description: Customer short name + example: ACME Corp + type: string + travelRuleMessageId: + description: Travel rule message identifier for linking + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + result: + $ref: "#/components/schemas/TRLinkProviderResultWithRule-2" + matchedPrescreeningRule: + $ref: "#/components/schemas/ScreeningTRLinkPrescreeningRule" + matchedNoTrmScreeningRule: + $ref: "#/components/schemas/ScreeningTRLinkMissingTrmDecision" + required: + - provider + - status + - timestamp + type: object ComplianceResultFullPayload: description: The result of the Compliance AML/Travel Rule screening. example: aml: - provider: provider + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: bypassReason + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: "2" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 0.8008281904610115 + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED amlRegistration: provider: provider success: true - timestamp: 6.027456183070403 + timestamp: 0.8008281904610115 + trlinkRegistration: + result: + providerResponse: "{}" + matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + customerShortName: ACME Corp + provider: SUMSUB + success: true + destRecordId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + status: COMPLETED + timestamp: 1640995200000 + trlinkDestinations: + - matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2023-10-05T14:48:00Z + timestamp: 1640995200000 + status: COMPLETED + - matchedPrescreeningRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: SCREEN + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + networkProtocol: BITCOIN + direction: OUTBOUND + detailsMessage: Screening completed successfully + destTag: memo_12345 + bypassReason: MANUAL + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + sourceId: "1" + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + trmStatus: ACCEPTED + description: Rule for high-value BTC transfers + baseAsset: USD + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + providerIdent: sumsub + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: ACCEPT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + providerResponse: "{}" + customerShortName: ACME Corp + provider: SUMSUB + verdict: ACCEPT + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + matchedNoTrmScreeningRule: + sourceId: "1" + reason: Missing travel rule message + amount: + range: + min: "100" + max: "10000" + currency: USD + sourceAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + description: Rule for high-value BTC transfers + baseAsset: USD + source: policy + destType: VAULT_ACCOUNT + isDefault: false + destId: "1" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa + customerId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + action: WAIT + sourceSubType: INTERNAL + asset: BTC + operation: TRANSFER + validBefore: 1672531200000 + networkProtocol: BITCOIN + validAfter: 1640995200000 + direction: OUTBOUND + timestamp: 2023-10-05T14:48:00Z + timestamp: 1640995200000 + status: COMPLETED amlList: - - provider: provider + - prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: bypassReason + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: "2" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 0.8008281904610115 - - provider: provider + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED + - prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: bypassReason + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: "2" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 0.8008281904610115 + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED tr: - provider: provider + prevBypassReason: BELOW_THRESHOLD + prevStatus: COMPLETED + destTag: memo_12345 + addressResolutionSignature: 0x1234567890abcdef + travelRuleMessageId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + customerIntegrationId: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + result: + matchedRule: + amountUSD: 1000.5 + amount: 0.025 + action: ACCEPT + asset: BTC + direction: OUTBOUND + status: COMPLETED + isVerified: true + action: ACCEPT + providerResponse: + key: "" + direction: OUTBOUND + matchedRule: "{}" + provider: NOTABENE payload: "{}" - bypassReason: bypassReason + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + destRecordId: record_001 + amlResult: + alerts: + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + - policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + matchedRule: + ruleName: High Risk Sanctions Check + action: ALLOW + ruleId: rule_001 + matchedAlert: + policyAction: BLOCK + alertName: Sanctions Match + service: CHAINALYSIS + exposureType: DIRECT + alertLevel: HIGH + externalId: alert_12345 + category: SANCTIONED_ENTITY + categoryId: 101 + alertAmount: 1000.5 + providerResponse: + key: "" + matchedAlert: "{}" + timestamp: 1753459111824 + matchedPrescreeningRule: + sourceId: "0" + amount: 0.5 + amountUSD: 1000 + bypassReason: MANUAL + baseAsset: ETH + destType: VAULT_ACCOUNT + transferPeerSubType: INTERNAL + destId: "2" + sourceType: VAULT_ACCOUNT + destSubType: INTERNAL + destAddress: 0xA2dC2490ED1DcA2D21613508fdb0c82daEAb0715 + transferPeerType: VAULT_ACCOUNT + action: SCREEN + sourceSubType: INTERNAL + asset: ETH + operation: TRANSFER + networkProtocol: ETH + detailsMessage: Travel rule screening completed successfully + externalId: aml_screening_12345 + bypassReason: BELOW_THRESHOLD + extendedRisk: LOW + customerRefId: customer_ref_789 + customerShortName: ACME Corp + verdict: PASS + risk: LOW + refId: ref_12345 + category: EXCHANGE screeningStatus: COMPLETED - timestamp: 0.8008281904610115 - status: Started + matchedNoTrmScreeningRule: "{}" + categoryId: 5 + status: COMPLETED + status: Completed properties: aml: $ref: "#/components/schemas/ComplianceScreeningResultFullPayload" @@ -50822,6 +55719,13 @@ components: $ref: "#/components/schemas/ComplianceResultStatusesEnum" amlRegistration: $ref: "#/components/schemas/AmlRegistrationResultFullPayload" + trlinkRegistration: + $ref: "#/components/schemas/TRLinkRegistrationResultFullPayload" + trlinkDestinations: + description: The list of TRLink destination screening results. + items: + $ref: "#/components/schemas/TRLinkResultFullPayload" + type: array type: object AmlVerdictManualRequest: example: @@ -52653,7 +57557,6 @@ components: description: Operator for selection enum: - INCLUDES - - EXCLUDES example: INCLUDES type: string InitiatorConfig: @@ -52689,8 +57592,6 @@ components: type: array operator: $ref: "#/components/schemas/PolicyOperator" - required: - - operator type: object InitiatorConfigPattern: oneOf: @@ -52786,8 +57687,20 @@ components: required: - type type: object - AccountConfig: - description: Policy source/destination configuration + PolicyTag: + description: Policy tag for matching + example: + id: tag_001 + properties: + id: + description: Tag identifier + example: tag_001 + type: string + required: + - id + type: object + SourceConfig: + description: Source account configuration for policy rules example: ids: - address: 0x123... @@ -52807,32 +57720,49 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 properties: type: - $ref: "#/components/schemas/AccountType-2" + description: Source account types + example: + - VAULT + - UNMANAGED + items: + $ref: "#/components/schemas/AccountType-2" + type: array subType: + description: Source account subtypes items: $ref: "#/components/schemas/AccountIdentifier" type: array ids: + description: Source account identifiers items: $ref: "#/components/schemas/AccountIdentifier" type: array + tags: + description: Tags for source matching + items: + $ref: "#/components/schemas/PolicyTag" + type: array operator: $ref: "#/components/schemas/PolicyOperator" matchFrom: - description: Whether to match from account or source + description: Whether to match from account (relevant only for ORDER policy + type) enum: - ACCOUNT - - SOURCE example: ACCOUNT type: string required: - operator - - type type: object DestinationConfig: description: Destination configuration for policy rules @@ -52843,7 +57773,10 @@ components: addressType: WHITELISTED properties: type: - $ref: "#/components/schemas/AccountType-2" + description: Destination account types + items: + $ref: "#/components/schemas/AccountType-2" + type: array subType: items: $ref: "#/components/schemas/AccountIdentifier" @@ -52852,10 +57785,17 @@ components: items: $ref: "#/components/schemas/AccountIdentifier" type: array + tags: + description: Tags for destination matching + items: + $ref: "#/components/schemas/PolicyTag" + type: array operator: $ref: "#/components/schemas/PolicyOperator" matchFrom: - description: Whether to match from account or source + description: "Whether to match from account or source (relevant only for\ + \ ORDER policy type). If set to ACCOUNT, only matchFrom is allowed and\ + \ other fields are not required." enum: - ACCOUNT - SOURCE @@ -52864,18 +57804,83 @@ components: addressType: description: Type of destination addresses allowed enum: - - ALL - '*' - WHITELISTED - ONE_TIME - - OEC_PARTNER example: WHITELISTED type: string required: - addressType - operator - - type type: object + AccountConfig: + description: Policy account configuration + example: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - VAULT + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + properties: + type: + description: Account types + items: + $ref: "#/components/schemas/AccountType-2" + type: array + subType: + items: + $ref: "#/components/schemas/AccountIdentifier" + type: array + ids: + items: + $ref: "#/components/schemas/AccountIdentifier" + type: array + tags: + description: Tags for account matching + items: + $ref: "#/components/schemas/PolicyTag" + type: array + operator: + $ref: "#/components/schemas/PolicyOperator" + matchFrom: + description: Whether to match from account or source + enum: + - ACCOUNT + - SOURCE + example: ACCOUNT + type: string + required: + - operator + type: object + OrderSide: + description: Order side for trading operations + enum: + - BUY + - SELL + - ANY + example: BUY + type: string ApproversConfig: description: Approvers configuration example: @@ -52913,6 +57918,8 @@ components: items: $ref: "#/components/schemas/ApproversConfig_approvalGroups_inner" type: array + required: + - canInitiatorApprove type: object DesignatedSignersConfig: description: Designated signers configuration @@ -52997,6 +58004,31 @@ components: required: - action type: object + AmountRangeMinMax-2: + description: Amount range with minimum and maximum values + example: + min: "100" + max: "10000" + properties: + min: + description: Minimum amount + example: "100" + type: string + max: + description: Maximum amount + example: "10000" + type: string + required: + - min + type: object + PolicyCurrency: + description: Currency for the amount + enum: + - NATIVE + - USD + - EUR + example: USD + type: string TimePeriodMatchType: description: Type of match for time period application enum: @@ -53042,45 +58074,43 @@ components: currency: USD properties: range: - $ref: "#/components/schemas/AmountOverTimeConfig_range" + $ref: "#/components/schemas/AmountRangeMinMax-2" currency: - description: Currency for the amount - enum: - - NATIVE - - USD - - EUR - example: USD - type: string + $ref: "#/components/schemas/PolicyCurrency" timePeriod: $ref: "#/components/schemas/TimePeriodConfig" required: + - currency - range - timePeriod type: object AmountRange: - description: Amount range configuration + description: Amount range with minimum and maximum values example: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" properties: - min: - description: Minimum amount - example: "100" - type: string - max: - description: Maximum amount - example: "10000" - type: string - currency: - description: Currency for the amount - example: USD - type: string + range: + $ref: "#/components/schemas/AmountRangeMinMax-2" required: - - currency - - max - - min + - range type: object + AmountConfigCurrency: + description: Currency property for amount configuration + properties: + currency: + $ref: "#/components/schemas/PolicyCurrency" + type: object + AmountConfig: + allOf: + - $ref: "#/components/schemas/AmountRange" + - $ref: "#/components/schemas/AmountConfigCurrency" + example: + range: + min: "100" + max: "10000" + currency: USD ContractMethodConfig: description: Contract method configuration example: @@ -53224,8 +58254,50 @@ components: description: Destination address example: 0x456... type: string + type: object + DAppAddressConfig: + description: dApp address configuration for policy rules + example: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + properties: + globalWhitelisted: + description: Globally whitelisted addresses + example: + - rabby.io + - jup.ag + items: + type: string + type: array + tenantWhitelisted: + description: Tenant whitelisted addresses + example: + - uniswap.com + - opensea.io + items: + type: string + type: array + urls: + description: Allowed all address + example: + - '*' + items: + type: string + type: array + operator: + $ref: "#/components/schemas/PolicyOperator" required: - - direction + - globalWhitelisted + - operator + - tenantWhitelisted + - urls type: object DerivationPathConfig: description: Derivation path configuration @@ -53259,37 +58331,6 @@ components: PolicyRule: description: V2 Policy rule which is enforced on transactions example: - amount: - min: "100" - max: "10000" - currency: USD - method: '*' - screeningMetadata: - sourceAddress: 0x123... - provider: CHAINALYSIS - exposureType: DIRECT - destAddress: 0x456... - name: - - name - - name - riskScore: "0.8" - category: - - category - - category - riskRating: MEDIUM - categoryId: - - categoryId - - categoryId - direction: OUTBOUND - status: COMPLETED - derivationPath: - path: - - 44 - - 0 - - 0 - - 0 - - 0 - partial: false initiator: '*' destination: type: @@ -53297,7 +58338,6 @@ components: operator: INCLUDES addressType: WHITELISTED policyEngineVersion: v2 - index: 1 source: ids: - address: 0x123... @@ -53317,9 +58357,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 baseAsset: assetTypes: - FUNGIBLE @@ -53328,6 +58373,63 @@ components: nftTransfer: false operator: INCLUDES type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false + quoteAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + side: BUY + amount: + range: + min: "100" + max: "10000" + currency: USD + method: '*' + screeningMetadata: + sourceAddress: 0x123... + provider: CHAINALYSIS + exposureType: DIRECT + destAddress: 0x456... + name: + - name + - name + riskScore: "0.8" + category: + - category + - category + riskRating: MEDIUM + categoryId: + - categoryId + - categoryId + direction: OUTBOUND + status: COMPLETED + derivationPath: + path: + - 44 + - 0 + - 0 + - 0 + - 0 + partial: false + dAppAddress: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -53339,9 +58441,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -53365,13 +58467,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -53398,16 +58494,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES - quoteAsset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 properties: name: description: Name of the policy rule @@ -53432,17 +58526,19 @@ components: asset: $ref: "#/components/schemas/AssetConfig" source: - $ref: "#/components/schemas/AccountConfig" + $ref: "#/components/schemas/SourceConfig" destination: $ref: "#/components/schemas/DestinationConfig" account: $ref: "#/components/schemas/AccountConfig" + side: + $ref: "#/components/schemas/OrderSide" verdict: $ref: "#/components/schemas/VerdictConfig" amountOverTime: $ref: "#/components/schemas/AmountOverTimeConfig" amount: - $ref: "#/components/schemas/AmountRange" + $ref: "#/components/schemas/AmountConfig" externalDescriptor: description: External descriptor for the rule example: High value transfer policy for institutional clients @@ -53465,6 +58561,8 @@ components: $ref: "#/components/schemas/AmountRange" baseAmount: $ref: "#/components/schemas/AmountRange" + dAppAddress: + $ref: "#/components/schemas/DAppAddressConfig" derivationPath: $ref: "#/components/schemas/DerivationPathConfig" index: @@ -53472,7 +58570,6 @@ components: example: 1 type: number required: - - asset - id - initiator - name @@ -53521,45 +58618,13 @@ components: policyType: TRANSFER editedAt: 2024-01-15T10:30:00Z rules: - - amount: - min: "100" - max: "10000" - currency: USD - method: '*' - screeningMetadata: - sourceAddress: 0x123... - provider: CHAINALYSIS - exposureType: DIRECT - destAddress: 0x456... - name: - - name - - name - riskScore: "0.8" - category: - - category - - category - riskRating: MEDIUM - categoryId: - - categoryId - - categoryId - direction: OUTBOUND - status: COMPLETED - derivationPath: - path: - - 44 - - 0 - - 0 - - 0 - - 0 - partial: false - initiator: '*' + - initiator: '*' destination: type: - EXTERNAL operator: INCLUDES addressType: WHITELISTED policyEngineVersion: v2 - index: 1 source: ids: - address: 0x123... @@ -53579,9 +58644,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 baseAsset: assetTypes: - FUNGIBLE @@ -53590,6 +58660,63 @@ components: nftTransfer: false operator: INCLUDES type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false + quoteAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + side: BUY + amount: + range: + min: "100" + max: "10000" + currency: USD + method: '*' + screeningMetadata: + sourceAddress: 0x123... + provider: CHAINALYSIS + exposureType: DIRECT + destAddress: 0x456... + name: + - name + - name + riskScore: "0.8" + category: + - category + - category + riskRating: MEDIUM + categoryId: + - categoryId + - categoryId + direction: OUTBOUND + status: COMPLETED + derivationPath: + path: + - 44 + - 0 + - 0 + - 0 + - 0 + partial: false + dAppAddress: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -53601,9 +58728,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -53627,13 +58754,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -53660,9 +58781,62 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + - initiator: '*' + destination: + type: + - EXTERNAL + operator: INCLUDES + addressType: WHITELISTED + policyEngineVersion: v2 + source: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + baseAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false quoteAsset: assetTypes: - FUNGIBLE @@ -53670,9 +58844,11 @@ components: - '*' nftTransfer: false operator: INCLUDES - - amount: - min: "100" - max: "10000" + side: BUY + amount: + range: + min: "100" + max: "10000" currency: USD method: '*' screeningMetadata: @@ -53701,44 +58877,17 @@ components: - 0 - 0 partial: false - initiator: '*' - destination: - type: - - EXTERNAL - operator: INCLUDES - addressType: WHITELISTED - policyEngineVersion: v2 - index: 1 - source: - ids: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - subType: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - type: VAULT - matchFrom: ACCOUNT - operator: INCLUDES - baseAsset: - assetTypes: - - FUNGIBLE - - NFT + dAppAddress: + urls: - '*' - nftTransfer: false + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag operator: INCLUDES - type: TRANSFER + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -53750,9 +58899,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -53776,13 +58925,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -53809,16 +58952,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES - quoteAsset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 properties: rules: description: A set of policy rules @@ -54028,9 +59169,66 @@ components: policyType: TRANSFER editedAt: 2024-01-15T10:30:00Z rules: - - amount: - min: "100" - max: "10000" + - initiator: '*' + destination: + type: + - EXTERNAL + operator: INCLUDES + addressType: WHITELISTED + policyEngineVersion: v2 + source: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - UNMANAGED + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + baseAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false + quoteAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + side: BUY + amount: + range: + min: "100" + max: "10000" currency: USD method: '*' screeningMetadata: @@ -54059,44 +59257,17 @@ components: - 0 - 0 partial: false - initiator: '*' - destination: - type: - - EXTERNAL - operator: INCLUDES - addressType: WHITELISTED - policyEngineVersion: v2 - index: 1 - source: - ids: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - subType: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - type: VAULT - matchFrom: ACCOUNT - operator: INCLUDES - baseAsset: - assetTypes: - - FUNGIBLE - - NFT + dAppAddress: + urls: - '*' - nftTransfer: false + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag operator: INCLUDES - type: TRANSFER + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -54108,9 +59279,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -54134,13 +59305,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -54167,9 +59332,62 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + - initiator: '*' + destination: + type: + - EXTERNAL + operator: INCLUDES + addressType: WHITELISTED + policyEngineVersion: v2 + source: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - UNMANAGED + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + baseAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false quoteAsset: assetTypes: - FUNGIBLE @@ -54177,9 +59395,11 @@ components: - '*' nftTransfer: false operator: INCLUDES - - amount: - min: "100" - max: "10000" + side: BUY + amount: + range: + min: "100" + max: "10000" currency: USD method: '*' screeningMetadata: @@ -54208,44 +59428,17 @@ components: - 0 - 0 partial: false - initiator: '*' - destination: - type: - - EXTERNAL - operator: INCLUDES - addressType: WHITELISTED - policyEngineVersion: v2 - index: 1 - source: - ids: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - subType: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - type: VAULT - matchFrom: ACCOUNT - operator: INCLUDES - baseAsset: - assetTypes: - - FUNGIBLE - - NFT + dAppAddress: + urls: - '*' - nftTransfer: false + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag operator: INCLUDES - type: TRANSFER + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -54257,9 +59450,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -54283,13 +59476,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -54316,16 +59503,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES - quoteAsset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 properties: policy: $ref: "#/components/schemas/PolicyResponse" @@ -54346,45 +59531,13 @@ components: policyType: TRANSFER editedAt: 2024-01-15T10:30:00Z rules: - - amount: - min: "100" - max: "10000" - currency: USD - method: '*' - screeningMetadata: - sourceAddress: 0x123... - provider: CHAINALYSIS - exposureType: DIRECT - destAddress: 0x456... - name: - - name - - name - riskScore: "0.8" - category: - - category - - category - riskRating: MEDIUM - categoryId: - - categoryId - - categoryId - direction: OUTBOUND - status: COMPLETED - derivationPath: - path: - - 44 - - 0 - - 0 - - 0 - - 0 - partial: false - initiator: '*' + - initiator: '*' destination: type: - EXTERNAL operator: INCLUDES addressType: WHITELISTED policyEngineVersion: v2 - index: 1 source: ids: - address: 0x123... @@ -54404,9 +59557,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 baseAsset: assetTypes: - FUNGIBLE @@ -54415,6 +59573,63 @@ components: nftTransfer: false operator: INCLUDES type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false + quoteAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + side: BUY + amount: + range: + min: "100" + max: "10000" + currency: USD + method: '*' + screeningMetadata: + sourceAddress: 0x123... + provider: CHAINALYSIS + exposureType: DIRECT + destAddress: 0x456... + name: + - name + - name + riskScore: "0.8" + category: + - category + - category + riskRating: MEDIUM + categoryId: + - categoryId + - categoryId + direction: OUTBOUND + status: COMPLETED + derivationPath: + path: + - 44 + - 0 + - 0 + - 0 + - 0 + partial: false + dAppAddress: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -54426,9 +59641,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -54452,13 +59667,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -54485,9 +59694,62 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + - initiator: '*' + destination: + type: + - EXTERNAL + operator: INCLUDES + addressType: WHITELISTED + policyEngineVersion: v2 + source: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - UNMANAGED + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + baseAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false quoteAsset: assetTypes: - FUNGIBLE @@ -54495,9 +59757,11 @@ components: - '*' nftTransfer: false operator: INCLUDES - - amount: - min: "100" - max: "10000" + side: BUY + amount: + range: + min: "100" + max: "10000" currency: USD method: '*' screeningMetadata: @@ -54526,44 +59790,17 @@ components: - 0 - 0 partial: false - initiator: '*' - destination: - type: - - EXTERNAL - operator: INCLUDES - addressType: WHITELISTED - policyEngineVersion: v2 - index: 1 - source: - ids: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - subType: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - type: VAULT - matchFrom: ACCOUNT - operator: INCLUDES - baseAsset: - assetTypes: - - FUNGIBLE - - NFT + dAppAddress: + urls: - '*' - nftTransfer: false + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag operator: INCLUDES - type: TRANSFER + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -54575,9 +59812,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -54601,13 +59838,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -54634,16 +59865,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES - quoteAsset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 status: status properties: status: @@ -54677,45 +59906,13 @@ components: policyType: TRANSFER editedAt: 2024-01-15T10:30:00Z rules: - - amount: - min: "100" - max: "10000" - currency: USD - method: '*' - screeningMetadata: - sourceAddress: 0x123... - provider: CHAINALYSIS - exposureType: DIRECT - destAddress: 0x456... - name: - - name - - name - riskScore: "0.8" - category: - - category - - category - riskRating: MEDIUM - categoryId: - - categoryId - - categoryId - direction: OUTBOUND - status: COMPLETED - derivationPath: - path: - - 44 - - 0 - - 0 - - 0 - - 0 - partial: false - initiator: '*' + - initiator: '*' destination: type: - EXTERNAL operator: INCLUDES addressType: WHITELISTED policyEngineVersion: v2 - index: 1 source: ids: - address: 0x123... @@ -54735,9 +59932,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 baseAsset: assetTypes: - FUNGIBLE @@ -54746,6 +59948,63 @@ components: nftTransfer: false operator: INCLUDES type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false + quoteAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + side: BUY + amount: + range: + min: "100" + max: "10000" + currency: USD + method: '*' + screeningMetadata: + sourceAddress: 0x123... + provider: CHAINALYSIS + exposureType: DIRECT + destAddress: 0x456... + name: + - name + - name + riskScore: "0.8" + category: + - category + - category + riskRating: MEDIUM + categoryId: + - categoryId + - categoryId + direction: OUTBOUND + status: COMPLETED + derivationPath: + path: + - 44 + - 0 + - 0 + - 0 + - 0 + partial: false + dAppAddress: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -54757,9 +60016,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -54783,13 +60042,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -54816,9 +60069,62 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + - initiator: '*' + destination: + type: + - EXTERNAL + operator: INCLUDES + addressType: WHITELISTED + policyEngineVersion: v2 + source: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - UNMANAGED + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + baseAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false quoteAsset: assetTypes: - FUNGIBLE @@ -54826,9 +60132,11 @@ components: - '*' nftTransfer: false operator: INCLUDES - - amount: - min: "100" - max: "10000" + side: BUY + amount: + range: + min: "100" + max: "10000" currency: USD method: '*' screeningMetadata: @@ -54857,44 +60165,17 @@ components: - 0 - 0 partial: false - initiator: '*' - destination: - type: - - EXTERNAL - operator: INCLUDES - addressType: WHITELISTED - policyEngineVersion: v2 - index: 1 - source: - ids: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - subType: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - type: VAULT - matchFrom: ACCOUNT - operator: INCLUDES - baseAsset: - assetTypes: - - FUNGIBLE - - NFT + dAppAddress: + urls: - '*' - nftTransfer: false + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag operator: INCLUDES - type: TRANSFER + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -54906,9 +60187,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -54932,13 +60213,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -54965,16 +60240,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES - quoteAsset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 status: status validation: checkResult: @@ -55016,45 +60289,13 @@ components: description: Request schema for updating draft with policy types and rules example: rules: - - amount: - min: "100" - max: "10000" - currency: USD - method: '*' - screeningMetadata: - sourceAddress: 0x123... - provider: CHAINALYSIS - exposureType: DIRECT - destAddress: 0x456... - name: - - name - - name - riskScore: "0.8" - category: - - category - - category - riskRating: MEDIUM - categoryId: - - categoryId - - categoryId - direction: OUTBOUND - status: COMPLETED - derivationPath: - path: - - 44 - - 0 - - 0 - - 0 - - 0 - partial: false - initiator: '*' + - initiator: '*' destination: type: - EXTERNAL operator: INCLUDES addressType: WHITELISTED policyEngineVersion: v2 - index: 1 source: ids: - address: 0x123... @@ -55074,9 +60315,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 baseAsset: assetTypes: - FUNGIBLE @@ -55085,6 +60331,63 @@ components: nftTransfer: false operator: INCLUDES type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false + quoteAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + side: BUY + amount: + range: + min: "100" + max: "10000" + currency: USD + method: '*' + screeningMetadata: + sourceAddress: 0x123... + provider: CHAINALYSIS + exposureType: DIRECT + destAddress: 0x456... + name: + - name + - name + riskScore: "0.8" + category: + - category + - category + riskRating: MEDIUM + categoryId: + - categoryId + - categoryId + direction: OUTBOUND + status: COMPLETED + derivationPath: + path: + - 44 + - 0 + - 0 + - 0 + - 0 + partial: false + dAppAddress: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -55096,9 +60399,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -55122,13 +60425,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -55155,9 +60452,62 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + - initiator: '*' + destination: + type: + - EXTERNAL + operator: INCLUDES + addressType: WHITELISTED + policyEngineVersion: v2 + source: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - UNMANAGED + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + baseAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false quoteAsset: assetTypes: - FUNGIBLE @@ -55165,9 +60515,11 @@ components: - '*' nftTransfer: false operator: INCLUDES - - amount: - min: "100" - max: "10000" + side: BUY + amount: + range: + min: "100" + max: "10000" currency: USD method: '*' screeningMetadata: @@ -55196,14 +60548,162 @@ components: - 0 - 0 partial: false - initiator: '*' + dAppAddress: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + index: 1 + amountOverTime: + timePeriod: + seconds: "86400" + initiator: PER_SINGLE_MATCH + destination: PER_SINGLE_MATCH + source: PER_SINGLE_MATCH + range: + min: "100" + max: "10000" + currency: USD + baseAmount: + range: + min: "100" + max: "10000" + externalDescriptor: High value transfer policy for institutional clients + programCall: + allowedSolanaProgramCalls: WHITELISTED + verdict: + designatedSigners: + groups: + - group1 + - group2 + type: SINGLE + users: + - user1 + - user2 + action: ALLOW + approvers: + canInitiatorApprove: false + approvalGroups: + - threshold: 2 + users: + - user1 + - user2 + allowOperatorAsAuthorizer: false + operator: AND + name: High Value Transfer Policy + subType: TRANSFER + asset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + account: + ids: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + subType: + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + - address: 0x123... + subType: INTERNAL + id: account123 + type: VAULT + type: + - VAULT + - VAULT + matchFrom: ACCOUNT + operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 + policyTypes: + - TRANSFER + - TRANSFER + properties: + policyTypes: + items: + $ref: "#/components/schemas/PolicyType" + type: array + rules: + description: Array of policy rules + items: + $ref: "#/components/schemas/PolicyRule" + type: array + required: + - policyTypes + - rules + type: object + PublishDraftRequest: + description: Request schema for publishing draft with policy types and draft + ID + example: + draftId: draft-123 + policyTypes: + - TRANSFER + - TRANSFER + properties: + policyTypes: + items: + $ref: "#/components/schemas/PolicyType" + type: array + draftId: + description: The ID of the draft to publish + example: draft-123 + type: string + required: + - draftId + - policyTypes + type: object + PolicyStatus: + description: | + * SUCCESS - success + * UNVALIDATED - not validated yet + * INVALID_CONFIGURATION - at least one rule is invalid + * PENDING - pending approval + * PENDING_CONSOLE_APPROVAL - pending approval from the console app + * AWAITING_QUORUM - pending quorum approval + * UNHANDLED_ERROR - unhandled error + enum: + - SUCCESS + - UNVALIDATED + - INVALID_CONFIGURATION + - PENDING + - PENDING_CONSOLE_APPROVAL + - AWAITING_QUORUM + - UNHANDLED_ERROR + type: string + PublishResult: + description: Response object of the publish policy operation + example: + metadata: + publishedBy: user456 + editedBy: user123 + publishedAt: 2024-01-15T11:00:00Z + policyType: TRANSFER + editedAt: 2024-01-15T10:30:00Z + rules: + - initiator: '*' destination: type: - EXTERNAL operator: INCLUDES addressType: WHITELISTED policyEngineVersion: v2 - index: 1 source: ids: - address: 0x123... @@ -55223,9 +60723,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 baseAsset: assetTypes: - FUNGIBLE @@ -55234,6 +60739,63 @@ components: nftTransfer: false operator: INCLUDES type: TRANSFER + quoteAmount: + range: + min: "100" + max: "10000" + id: policy_rule_001 + isGlobalPolicy: false + quoteAsset: + assetTypes: + - FUNGIBLE + - NFT + - '*' + nftTransfer: false + operator: INCLUDES + side: BUY + amount: + range: + min: "100" + max: "10000" + currency: USD + method: '*' + screeningMetadata: + sourceAddress: 0x123... + provider: CHAINALYSIS + exposureType: DIRECT + destAddress: 0x456... + name: + - name + - name + riskScore: "0.8" + category: + - category + - category + riskRating: MEDIUM + categoryId: + - categoryId + - categoryId + direction: OUTBOUND + status: COMPLETED + derivationPath: + path: + - 44 + - 0 + - 0 + - 0 + - 0 + partial: false + dAppAddress: + urls: + - '*' + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag + operator: INCLUDES + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -55245,9 +60807,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -55271,13 +60833,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -55304,121 +60860,21 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES - quoteAsset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES - policyTypes: - - TRANSFER - - TRANSFER - properties: - policyTypes: - items: - $ref: "#/components/schemas/PolicyType" - type: array - rules: - description: Array of policy rules - items: - $ref: "#/components/schemas/PolicyRule" - type: array - required: - - policyTypes - - rules - type: object - PublishDraftRequest: - description: Request schema for publishing draft with policy types and draft - ID - example: - draftId: draft-123 - policyTypes: - - TRANSFER - - TRANSFER - properties: - policyTypes: - items: - $ref: "#/components/schemas/PolicyType" - type: array - draftId: - description: The ID of the draft to publish - example: draft-123 - type: string - required: - - draftId - - policyTypes - type: object - PolicyStatus: - description: | - * SUCCESS - success - * UNVALIDATED - not validated yet - * INVALID_CONFIGURATION - at least one rule is invalid - * PENDING - pending approval - * PENDING_CONSOLE_APPROVAL - pending approval from the console app - * AWAITING_QUORUM - pending quorum approval - * UNHANDLED_ERROR - unhandled error - enum: - - SUCCESS - - UNVALIDATED - - INVALID_CONFIGURATION - - PENDING - - PENDING_CONSOLE_APPROVAL - - AWAITING_QUORUM - - UNHANDLED_ERROR - type: string - PublishResult: - description: Response object of the publish policy operation - example: - metadata: - publishedBy: user456 - editedBy: user123 - publishedAt: 2024-01-15T11:00:00Z - policyType: TRANSFER - editedAt: 2024-01-15T10:30:00Z - rules: - - amount: - min: "100" - max: "10000" - currency: USD - method: '*' - screeningMetadata: - sourceAddress: 0x123... - provider: CHAINALYSIS - exposureType: DIRECT - destAddress: 0x456... - name: - - name - - name - riskScore: "0.8" - category: - - category - - category - riskRating: MEDIUM - categoryId: - - categoryId - - categoryId - direction: OUTBOUND - status: COMPLETED - derivationPath: - path: - - 44 - - 0 - - 0 - - 0 - - 0 - partial: false - initiator: '*' + tags: + - id: tag_001 + - id: tag_001 + - initiator: '*' destination: type: - EXTERNAL operator: INCLUDES addressType: WHITELISTED policyEngineVersion: v2 - index: 1 source: ids: - address: 0x123... @@ -55438,9 +60894,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - UNMANAGED matchFrom: ACCOUNT operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 baseAsset: assetTypes: - FUNGIBLE @@ -55449,79 +60910,12 @@ components: nftTransfer: false operator: INCLUDES type: TRANSFER - amountOverTime: - timePeriod: - seconds: "86400" - initiator: PER_SINGLE_MATCH - destination: PER_SINGLE_MATCH - source: PER_SINGLE_MATCH + quoteAmount: range: min: "100" max: "10000" - currency: USD - baseAmount: - min: "100" - max: "10000" - currency: USD - externalDescriptor: High value transfer policy for institutional clients - programCall: - allowedSolanaProgramCalls: WHITELISTED - verdict: - designatedSigners: - groups: - - group1 - - group2 - type: SINGLE - users: - - user1 - - user2 - action: ALLOW - approvers: - canInitiatorApprove: false - approvalGroups: - - threshold: 2 - users: - - user1 - - user2 - allowOperatorAsAuthorizer: false - operator: AND - name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD - subType: TRANSFER id: policy_rule_001 isGlobalPolicy: false - asset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES - account: - ids: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - subType: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - type: VAULT - matchFrom: ACCOUNT - operator: INCLUDES quoteAsset: assetTypes: - FUNGIBLE @@ -55529,9 +60923,11 @@ components: - '*' nftTransfer: false operator: INCLUDES - - amount: - min: "100" - max: "10000" + side: BUY + amount: + range: + min: "100" + max: "10000" currency: USD method: '*' screeningMetadata: @@ -55560,44 +60956,17 @@ components: - 0 - 0 partial: false - initiator: '*' - destination: - type: - - EXTERNAL - operator: INCLUDES - addressType: WHITELISTED - policyEngineVersion: v2 - index: 1 - source: - ids: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - subType: - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - - address: 0x123... - subType: INTERNAL - id: account123 - type: VAULT - type: VAULT - matchFrom: ACCOUNT - operator: INCLUDES - baseAsset: - assetTypes: - - FUNGIBLE - - NFT + dAppAddress: + urls: - '*' - nftTransfer: false + tenantWhitelisted: + - uniswap.com + - opensea.io + globalWhitelisted: + - rabby.io + - jup.ag operator: INCLUDES - type: TRANSFER + index: 1 amountOverTime: timePeriod: seconds: "86400" @@ -55609,9 +60978,9 @@ components: max: "10000" currency: USD baseAmount: - min: "100" - max: "10000" - currency: USD + range: + min: "100" + max: "10000" externalDescriptor: High value transfer policy for institutional clients programCall: allowedSolanaProgramCalls: WHITELISTED @@ -55635,13 +61004,7 @@ components: allowOperatorAsAuthorizer: false operator: AND name: High Value Transfer Policy - quoteAmount: - min: "100" - max: "10000" - currency: USD subType: TRANSFER - id: policy_rule_001 - isGlobalPolicy: false asset: assetTypes: - FUNGIBLE @@ -55668,16 +61031,14 @@ components: subType: INTERNAL id: account123 type: VAULT - type: VAULT + type: + - VAULT + - VAULT matchFrom: ACCOUNT operator: INCLUDES - quoteAsset: - assetTypes: - - FUNGIBLE - - NFT - - '*' - nftTransfer: false - operator: INCLUDES + tags: + - id: tag_001 + - id: tag_001 checkResult: results: - index: 6.027456183070403 @@ -57044,12 +62405,18 @@ components: example: next: MjAyNS0wNy0wOSAxMDo1MzoxMy40NTI=:NA== data: - - description: Tag for VIP customers + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP - - description: Tag for VIP customers + updatedAt: "1719859200" + - isProtected: true + color: color + description: Tag for VIP customers id: df4c0987-30da-4976-8dcf-bc2dd41ae331 label: VIP + updatedAt: "1719859200" properties: data: items: @@ -57610,7 +62977,7 @@ components: r: r s: s fullSig: fullSig - v: 7.061401241503109 + v: 2.3021358869347655 properties: fullSig: type: string @@ -57910,7 +63277,7 @@ components: oneOf: - $ref: "#/components/schemas/AccountProviderID" - $ref: "#/components/schemas/ProviderID" - QuoteExecutionWithRequoteRequestDetails_allOf_reQuote: + ReQuoteDetails_reQuote: discriminator: mapping: MARKET: "#/components/schemas/MarketRequoteRequestDetails" @@ -57929,15 +63296,6 @@ components: - firstName - lastName type: object - QuoteExecutionWithRequoteResponseDetails_allOf_reQuote: - discriminator: - mapping: - MARKET: "#/components/schemas/MarketRequoteRequestDetails" - RETRY: "#/components/schemas/RetryRequoteRequestDetails" - propertyName: type - oneOf: - - $ref: "#/components/schemas/MarketRequoteRequestDetails" - - $ref: "#/components/schemas/RetryRequoteRequestDetails" SetOtaStatusResponse_oneOf: example: message: No change needed. The current status is false @@ -58189,23 +63547,6 @@ components: required: - threshold type: object - AmountOverTimeConfig_range: - description: Amount range configuration - example: - min: "100" - max: "10000" - properties: - min: - description: Minimum amount - example: "100" - type: string - max: - description: Maximum amount (optional) - example: "10000" - type: string - required: - - min - type: object SmartTransferStatistic_inflow: description: Inflow tickets data example: diff --git a/build.gradle b/build.gradle index 8c034eb1..62baedca 100644 --- a/build.gradle +++ b/build.gradle @@ -3,7 +3,7 @@ apply plugin: 'eclipse' apply plugin: 'com.diffplug.spotless' group = 'com.fireblocks.sdk' -version = '12.1.3' +version = '0.0.0' buildscript { repositories { diff --git a/docs/AccountBasedAccessProviderDetails.md b/docs/AccountBasedAccessProviderDetails.md new file mode 100644 index 00000000..2375ca00 --- /dev/null +++ b/docs/AccountBasedAccessProviderDetails.md @@ -0,0 +1,15 @@ + + +# AccountBasedAccessProviderDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**manifest** | [**Manifest**](Manifest.md) | | | +|**connected** | **Boolean** | Whether the provider is currently connected | | +|**accounts** | [**List<AccountBase>**](AccountBase.md) | | [optional] | + + + diff --git a/docs/AccountConfig.md b/docs/AccountConfig.md index 703183ca..217ede7a 100644 --- a/docs/AccountConfig.md +++ b/docs/AccountConfig.md @@ -2,15 +2,16 @@ # AccountConfig -Policy source/destination configuration +Policy account configuration ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**type** | **AccountType2** | | | +|**type** | **List<AccountType2>** | Account types | [optional] | |**subType** | [**List<AccountIdentifier>**](AccountIdentifier.md) | | [optional] | |**ids** | [**List<AccountIdentifier>**](AccountIdentifier.md) | | [optional] | +|**tags** | [**List<PolicyTag>**](PolicyTag.md) | Tags for account matching | [optional] | |**operator** | **PolicyOperator** | | | |**matchFrom** | [**MatchFromEnum**](#MatchFromEnum) | Whether to match from account or source | [optional] | diff --git a/docs/AchAccountType.md b/docs/AchAccountType.md new file mode 100644 index 00000000..459831f1 --- /dev/null +++ b/docs/AchAccountType.md @@ -0,0 +1,13 @@ + + +# AchAccountType + +## Enum + + +* `CHECKING` (value: `"CHECKING"`) + +* `SAVINGS` (value: `"SAVINGS"`) + + + diff --git a/docs/AchAddress.md b/docs/AchAddress.md new file mode 100644 index 00000000..27d9a757 --- /dev/null +++ b/docs/AchAddress.md @@ -0,0 +1,17 @@ + + +# AchAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**bankName** | **String** | Name of the bank. | [optional] | +|**bankAccountNumber** | **String** | The bank account number for the ACH transfer. | | +|**routingNumber** | **String** | Routing number identifying the bank account. | | +|**accountType** | **AchAccountType** | | | + + + diff --git a/docs/AchDestination.md b/docs/AchDestination.md new file mode 100644 index 00000000..745bc7e4 --- /dev/null +++ b/docs/AchDestination.md @@ -0,0 +1,22 @@ + + +# AchDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**AchAddress**](AchAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| ACH | "ACH" | + + + diff --git a/docs/AlertExposureTypeEnum.md b/docs/AlertExposureTypeEnum.md new file mode 100644 index 00000000..95d49281 --- /dev/null +++ b/docs/AlertExposureTypeEnum.md @@ -0,0 +1,13 @@ + + +# AlertExposureTypeEnum + +## Enum + + +* `DIRECT` (value: `"DIRECT"`) + +* `INDIRECT` (value: `"INDIRECT"`) + + + diff --git a/docs/AlertLevelEnum.md b/docs/AlertLevelEnum.md new file mode 100644 index 00000000..6ce91b9f --- /dev/null +++ b/docs/AlertLevelEnum.md @@ -0,0 +1,17 @@ + + +# AlertLevelEnum + +## Enum + + +* `SEVERE` (value: `"SEVERE"`) + +* `HIGH` (value: `"HIGH"`) + +* `MEDIUM` (value: `"MEDIUM"`) + +* `LOW` (value: `"LOW"`) + + + diff --git a/docs/AmlAlert.md b/docs/AmlAlert.md new file mode 100644 index 00000000..213e0e47 --- /dev/null +++ b/docs/AmlAlert.md @@ -0,0 +1,22 @@ + + +# AmlAlert + +AML alert information + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**alertLevel** | **AlertLevelEnum** | | | +|**alertName** | **String** | Name or type of the alert | [optional] | +|**category** | **String** | Alert category | [optional] | +|**service** | **String** | Service that generated the alert | [optional] | +|**externalId** | **String** | External identifier for the alert | | +|**alertAmount** | **BigDecimal** | Amount associated with the alert | | +|**exposureType** | **AlertExposureTypeEnum** | | | +|**policyAction** | **String** | Recommended action based on policy | [optional] | +|**categoryId** | **BigDecimal** | Category identifier | [optional] | + + + diff --git a/docs/AmlMatchedRule.md b/docs/AmlMatchedRule.md new file mode 100644 index 00000000..52c27901 --- /dev/null +++ b/docs/AmlMatchedRule.md @@ -0,0 +1,16 @@ + + +# AmlMatchedRule + +AML matched rule information + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**ruleId** | **String** | Identifier of the matched rule | [optional] | +|**ruleName** | **String** | Name of the matched rule | [optional] | +|**action** | **PolicyVerdictActionEnum** | | [optional] | + + + diff --git a/docs/AmlResult.md b/docs/AmlResult.md new file mode 100644 index 00000000..a7c31bd8 --- /dev/null +++ b/docs/AmlResult.md @@ -0,0 +1,17 @@ + + +# AmlResult + +Detailed AML screening result information. Contains alerts, risk scores, and other AML-specific data from provider-specific responses. + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**alerts** | [**List<AmlAlert>**](AmlAlert.md) | List of AML alerts triggered during screening | [optional] | +|**providerResponse** | **Map<String, Object>** | Complete response from the AML provider. This is a dynamic object that varies significantly between different AML providers (Chainalysis, Elliptic, etc.). Each provider has their own proprietary response format and schema. Examples of provider-specific structures: - Chainalysis: Contains cluster info, risk scores, sanctions data - Elliptic: Includes risk assessment, entity types, compliance flags The structure is provider-dependent and cannot be standardized as each vendor implements their own proprietary data models and response formats. | [optional] | +|**matchedRule** | [**AmlMatchedRule**](AmlMatchedRule.md) | | [optional] | +|**matchedAlert** | [**AmlAlert**](AmlAlert.md) | | [optional] | + + + diff --git a/docs/AmlStatusEnum.md b/docs/AmlStatusEnum.md new file mode 100644 index 00000000..f79de8fd --- /dev/null +++ b/docs/AmlStatusEnum.md @@ -0,0 +1,19 @@ + + +# AmlStatusEnum + +## Enum + + +* `COMPLETED` (value: `"COMPLETED"`) + +* `PENDING` (value: `"PENDING"`) + +* `BYPASSED` (value: `"BYPASSED"`) + +* `FAILED` (value: `"FAILED"`) + +* `FROZEN` (value: `"FROZEN"`) + + + diff --git a/docs/AmountConfig.md b/docs/AmountConfig.md new file mode 100644 index 00000000..513cf62c --- /dev/null +++ b/docs/AmountConfig.md @@ -0,0 +1,14 @@ + + +# AmountConfig + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**range** | [**AmountRangeMinMax2**](AmountRangeMinMax2.md) | | | +|**currency** | **PolicyCurrency** | | [optional] | + + + diff --git a/docs/AmountConfigCurrency.md b/docs/AmountConfigCurrency.md new file mode 100644 index 00000000..59827e21 --- /dev/null +++ b/docs/AmountConfigCurrency.md @@ -0,0 +1,14 @@ + + +# AmountConfigCurrency + +Currency property for amount configuration + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**currency** | **PolicyCurrency** | | [optional] | + + + diff --git a/docs/AmountOverTimeConfig.md b/docs/AmountOverTimeConfig.md index ebe17b26..e6ef3aec 100644 --- a/docs/AmountOverTimeConfig.md +++ b/docs/AmountOverTimeConfig.md @@ -8,19 +8,9 @@ Amount over time configuration | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**range** | [**AmountOverTimeConfigRange**](AmountOverTimeConfigRange.md) | | | -|**currency** | [**CurrencyEnum**](#CurrencyEnum) | Currency for the amount | [optional] | +|**range** | [**AmountRangeMinMax2**](AmountRangeMinMax2.md) | | | +|**currency** | **PolicyCurrency** | | | |**timePeriod** | [**TimePeriodConfig**](TimePeriodConfig.md) | | | -## Enum: CurrencyEnum - -| Name | Value | -|---- | -----| -| NATIVE | "NATIVE" | -| USD | "USD" | -| EUR | "EUR" | - - - diff --git a/docs/AmountRange.md b/docs/AmountRange.md index eb081d64..111107bf 100644 --- a/docs/AmountRange.md +++ b/docs/AmountRange.md @@ -2,15 +2,13 @@ # AmountRange -Amount range configuration +Amount range with minimum and maximum values ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**min** | **String** | Minimum amount | | -|**max** | **String** | Maximum amount | | -|**currency** | **String** | Currency for the amount | | +|**range** | [**AmountRangeMinMax2**](AmountRangeMinMax2.md) | | | diff --git a/docs/AmountRangeMinMax.md b/docs/AmountRangeMinMax.md new file mode 100644 index 00000000..73c06778 --- /dev/null +++ b/docs/AmountRangeMinMax.md @@ -0,0 +1,15 @@ + + +# AmountRangeMinMax + +Amount range with minimum and maximum values + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**min** | **String** | Minimum amount | [optional] | +|**max** | **String** | Maximum amount | [optional] | + + + diff --git a/docs/AmountOverTimeConfigRange.md b/docs/AmountRangeMinMax2.md similarity index 57% rename from docs/AmountOverTimeConfigRange.md rename to docs/AmountRangeMinMax2.md index 6f75ee49..78e19096 100644 --- a/docs/AmountOverTimeConfigRange.md +++ b/docs/AmountRangeMinMax2.md @@ -1,15 +1,15 @@ -# AmountOverTimeConfigRange +# AmountRangeMinMax2 -Amount range configuration +Amount range with minimum and maximum values ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| |**min** | **String** | Minimum amount | | -|**max** | **String** | Maximum amount (optional) | [optional] | +|**max** | **String** | Maximum amount | [optional] | diff --git a/docs/ApproversConfig.md b/docs/ApproversConfig.md index 862f917f..3142c137 100644 --- a/docs/ApproversConfig.md +++ b/docs/ApproversConfig.md @@ -8,7 +8,7 @@ Approvers configuration | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**canInitiatorApprove** | **Boolean** | Whether initiator can approve | [optional] | +|**canInitiatorApprove** | **Boolean** | Whether initiator can approve | | |**operator** | [**OperatorEnum**](#OperatorEnum) | Operator for approval groups | [optional] | |**allowOperatorAsAuthorizer** | **Boolean** | Whether operator can be authorizer | [optional] | |**approvalGroups** | [**List<ApproversConfigApprovalGroupsInner>**](ApproversConfigApprovalGroupsInner.md) | List of approval groups | [optional] | diff --git a/docs/BlockchainsAssetsApi.md b/docs/BlockchainsAssetsApi.md index 2b012940..7faef887 100644 --- a/docs/BlockchainsAssetsApi.md +++ b/docs/BlockchainsAssetsApi.md @@ -466,7 +466,7 @@ No authorization required Register an asset -Register a new asset to a workspace and return the newly created asset's details. Currently supported chains are: - EVM based chains - Stellar - Algorand - TRON - NEAR - Solana +Register a new asset to a workspace and return the newly created asset's details. Currently supported chains are: - EVM based chains - Stellar - Algorand - TRON - NEAR - Solana - Sui ### Example diff --git a/docs/ComplianceResultFullPayload.md b/docs/ComplianceResultFullPayload.md index 0af47384..d35ff64b 100644 --- a/docs/ComplianceResultFullPayload.md +++ b/docs/ComplianceResultFullPayload.md @@ -13,6 +13,8 @@ The result of the Compliance AML/Travel Rule screening. |**amlList** | [**List<ComplianceScreeningResultFullPayload>**](ComplianceScreeningResultFullPayload.md) | The list of all results of the AML screening. | [optional] | |**status** | **ComplianceResultStatusesEnum** | | [optional] | |**amlRegistration** | [**AmlRegistrationResultFullPayload**](AmlRegistrationResultFullPayload.md) | | [optional] | +|**trlinkRegistration** | [**TRLinkRegistrationResultFullPayload**](TRLinkRegistrationResultFullPayload.md) | | [optional] | +|**trlinkDestinations** | [**List<TRLinkResultFullPayload>**](TRLinkResultFullPayload.md) | The list of TRLink destination screening results. | [optional] | diff --git a/docs/ComplianceResultStatusesEnum.md b/docs/ComplianceResultStatusesEnum.md index eaf84c64..c003c653 100644 --- a/docs/ComplianceResultStatusesEnum.md +++ b/docs/ComplianceResultStatusesEnum.md @@ -5,6 +5,10 @@ ## Enum +* `UNKNOWN` (value: `"Unknown"`) + +* `STALLED` (value: `"Stalled"`) + * `STARTED` (value: `"Started"`) * `NETWORK_CONNECTION_ADDRESS_RESOLVE` (value: `"NetworkConnectionAddressResolve"`) @@ -23,14 +27,46 @@ * `TR_STARTED` (value: `"TRStarted"`) +* `TR_LINK_STARTED` (value: `"TRLinkStarted"`) + +* `TR_LINK_DESTINATION_STARTED` (value: `"TRLinkDestinationStarted"`) + +* `TR_LINK_DESTINATION_PRESCREEN_POLICY` (value: `"TRLinkDestinationPrescreenPolicy"`) + +* `TR_LINK_DESTINATION_NO_TRM_POLICY` (value: `"TRLinkDestinationNoTRMPolicy"`) + +* `TR_LINK_DESTINATION_SCREEN` (value: `"TRLinkDestinationScreen"`) + +* `TR_LINK_DESTINATION_POSTSCREEN_POLICY` (value: `"TRLinkDestinationPostscreenPolicy"`) + +* `TR_LINK_DESTINATION_COMPLETED` (value: `"TRLinkDestinationCompleted"`) + +* `TR_LINK_COMPLETED` (value: `"TRLinkCompleted"`) + * `TR_COMPLETED` (value: `"TRCompleted"`) * `TR_FAILED` (value: `"TRFailed"`) * `COMPLETED` (value: `"Completed"`) +* `REGISTRATION_STARTED` (value: `"RegistrationStarted"`) + +* `REGISTRATION_WAIT_FOR_FIRST_CONFIRMATION` (value: `"RegistrationWaitForFirstConfirmation"`) + +* `AML_REGISTRATION_STARTED` (value: `"AMLRegistrationStarted"`) + +* `AML_REGISTRATION_COMPLETED` (value: `"AMLRegistrationCompleted"`) + +* `TR_UPDATE_STARTED` (value: `"TRUpdateStarted"`) + +* `TR_UPDATE_COMPLETED` (value: `"TRUpdateCompleted"`) + +* `UPDATE_COMPLETED` (value: `"UpdateCompleted"`) + * `INCOMING_STARTED` (value: `"IncomingStarted"`) +* `INCOMING_BYORK_SL` (value: `"IncomingByorkSL"`) + * `INCOMING_SCREENING_PREPARE` (value: `"IncomingScreeningPrepare"`) * `INCOMING_WAIT_FOR_FIRST_CONFIRMATION` (value: `"IncomingWaitForFirstConfirmation"`) @@ -51,7 +87,19 @@ * `INCOMING_COMPLETED` (value: `"IncomingCompleted"`) -* `UPDATE_COMPLETED` (value: `"UpdateCompleted"`) +* `ADDRESS_AML_INITIATED` (value: `"AddressAmlInitiated"`) + +* `ADDRESS_AML_ADDRESS_RESOLVE` (value: `"AddressAmlAddressResolve"`) + +* `ADDRESS_AML_PREPARE` (value: `"AddressAmlPrepare"`) + +* `ADDRESS_AML_PROCESSING` (value: `"AddressAmlProcessing"`) + +* `ADDRESS_AML_SUCCEEDED` (value: `"AddressAmlSucceeded"`) + +* `ADDRESS_AML_FAILED` (value: `"AddressAmlFailed"`) + +* `ADDRESS_AML_COMPLETED` (value: `"AddressAmlCompleted"`) diff --git a/docs/ComplianceResults.md b/docs/ComplianceResults.md index 24db872c..da747046 100644 --- a/docs/ComplianceResults.md +++ b/docs/ComplianceResults.md @@ -13,6 +13,8 @@ The result of the Compliance AML/Travel Rule screening. |**amlList** | [**List<ComplianceScreeningResult>**](ComplianceScreeningResult.md) | The list of all results of the AML screening. | [optional] | |**status** | **ComplianceResultStatusesEnum** | | [optional] | |**amlRegistration** | [**AmlRegistrationResult**](AmlRegistrationResult.md) | | [optional] | +|**trlinkRegistration** | [**TRLinkRegistrationResult**](TRLinkRegistrationResult.md) | | [optional] | +|**trlinkDestinations** | [**List<TRLinkResult>**](TRLinkResult.md) | The list of TRLink destination screening results. | [optional] | diff --git a/docs/ComplianceScreeningResult.md b/docs/ComplianceScreeningResult.md index 361f39ea..2526518d 100644 --- a/docs/ComplianceScreeningResult.md +++ b/docs/ComplianceScreeningResult.md @@ -2,45 +2,42 @@ # ComplianceScreeningResult +The result of the AML/Travel Rule screening. This unified schema contains all fields that may be returned for both AML and Travel Rule screening results. Not all fields will be present in every response - the actual fields depend on the screening type and provider. ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**provider** | [**ProviderEnum**](#ProviderEnum) | Screening provider | [optional] | -|**payload** | **Object** | The payload of the screening result. The payload is a JSON object that contains the screening result. The payload is different for each screening provider. | [optional] | -|**bypassReason** | [**BypassReasonEnum**](#BypassReasonEnum) | Reason AML screening was bypassed | [optional] | -|**screeningStatus** | [**ScreeningStatusEnum**](#ScreeningStatusEnum) | | [optional] | -|**timestamp** | **BigDecimal** | | [optional] | - - - -## Enum: ProviderEnum - -| Name | Value | -|---- | -----| -| CHAINALYSIS | "CHAINALYSIS" | -| ELLIPTIC | "ELLIPTIC" | -| CHAINALYSIS_V2 | "CHAINALYSIS_V2" | -| ELLIPTIC_HOLISTIC | "ELLIPTIC_HOLISTIC" | -| NONE | "NONE" | - - - -## Enum: BypassReasonEnum - -| Name | Value | -|---- | -----| -| MANUAL | "MANUAL" | -| UNSUPPORTED_ASSET | "UNSUPPORTED_ASSET" | -| BYPASSED_FAILURE | "BYPASSED_FAILURE" | -| UNSUPPORTED_ROUTE | "UNSUPPORTED_ROUTE" | -| PASSED_BY_POLICY | "PASSED_BY_POLICY" | -| TIMED_OUT | "TIMED_OUT" | -| BAD_CREDENTIALS | "BAD_CREDENTIALS" | -| CONFIGURATION_ERROR | "CONFIGURATION_ERROR" | -| DROPPED_BY_BLOCKCHAIN | "DROPPED_BY_BLOCKCHAIN" | -| PROCESS_DISMISSED | "PROCESS_DISMISSED" | +|**provider** | **String** | The AML/Travel Rule provider name. For AML: ELLIPTIC, CHAINALYSIS, SCORECHAIN, MERKLE_SCIENCE, etc. For Travel Rule: NOTABENE, SYGNA, or any TRLink provider name | [optional] | +|**payload** | **Object** | The raw payload of the screening result from the provider. The payload is a JSON object that contains the screening result. The payload structure is different for each screening provider. This field contains the complete, unmodified response from the screening service. | [optional] | +|**timestamp** | **BigDecimal** | Unix timestamp in milliseconds when the screening result was generated | [optional] | +|**screeningStatus** | [**ScreeningStatusEnum**](#ScreeningStatusEnum) | Current status of the screening process | [optional] | +|**bypassReason** | **String** | Reason for bypassing the screening, if applicable. For AML: SANCTIONS_SCREENING_BYPASS, SANCTIONS_RECIPIENT_BYPASS, etc. For Travel Rule: BELOW_THRESHOLD, NO_TRM_AVAILABLE, etc. | [optional] | +|**status** | **AmlStatusEnum** | | [optional] | +|**prevStatus** | **AmlStatusEnum** | | [optional] | +|**prevBypassReason** | **String** | Previous bypass reason before the current bypass reason change | [optional] | +|**verdict** | **ScreeningVerdictEnum** | | [optional] | +|**risk** | **ScreeningRiskLevelEnum** | | [optional] | +|**extendedRisk** | **ScreeningRiskLevelEnum** | | [optional] | +|**externalId** | **String** | External identifier for the screening (provider-specific) | [optional] | +|**customerRefId** | **String** | Customer-provided reference identifier for tracking | [optional] | +|**refId** | **String** | Internal reference identifier | [optional] | +|**category** | **String** | Risk category classification. Examples: EXCHANGE, GAMBLING, MIXER, DARKNET_SERVICE, SANCTIONED_ENTITY | [optional] | +|**categoryId** | **BigDecimal** | Numeric identifier for the risk category | [optional] | +|**destAddress** | **String** | The destination blockchain address associated with the screening | [optional] | +|**destTag** | **String** | Destination tag or memo (for chains that support it like XRP, XLM) | [optional] | +|**destRecordId** | **String** | The destination record identifier used by the screening provider | [optional] | +|**addressResolutionSignature** | **String** | Cryptographic signature for address resolution verification | [optional] | +|**amlResult** | [**AmlResult**](AmlResult.md) | | [optional] | +|**result** | [**TravelRuleResult**](TravelRuleResult.md) | | [optional] | +|**detailsMessage** | **String** | Additional human-readable details or message about the screening result | [optional] | +|**matchedAlert** | **Object** | Information about the AML alert that was matched, if any. Contains details about the specific alert that triggered during screening. | [optional] | +|**matchedRule** | **Object** | The matched rule information for this screening result. Contains details about which screening rule was applied and matched. | [optional] | +|**matchedPrescreeningRule** | [**TravelRulePrescreeningRule**](TravelRulePrescreeningRule.md) | | [optional] | +|**matchedNoTrmScreeningRule** | **Object** | Matched no-TRM (Travel Rule Message) screening rule details. Used when TRLink screening detects a missing TRM scenario. | [optional] | +|**customerIntegrationId** | **String** | Customer integration identifier used by Travel Rule providers | [optional] | +|**customerShortName** | **String** | Customer short name registered with Travel Rule providers | [optional] | +|**travelRuleMessageId** | **String** | Travel rule message identifier for linking and tracking across providers | [optional] | diff --git a/docs/ComplianceScreeningResultFullPayload.md b/docs/ComplianceScreeningResultFullPayload.md index cab44711..a69a44db 100644 --- a/docs/ComplianceScreeningResultFullPayload.md +++ b/docs/ComplianceScreeningResultFullPayload.md @@ -2,17 +2,42 @@ # ComplianceScreeningResultFullPayload -The result of the Travel Rule screening. +The result of the AML/Travel Rule screening. This unified schema contains all fields that may be returned for both AML and Travel Rule screening results. Not all fields will be present in every response - the actual fields depend on the screening type and provider. ## Properties | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**provider** | **String** | | [optional] | -|**payload** | **Object** | The payload of the screening result. The payload is a JSON object that contains the screening result. The payload is different for each screening provider. | [optional] | -|**bypassReason** | **String** | | [optional] | -|**screeningStatus** | [**ScreeningStatusEnum**](#ScreeningStatusEnum) | | [optional] | -|**timestamp** | **BigDecimal** | | [optional] | +|**provider** | **String** | The AML/Travel Rule provider name. For AML: ELLIPTIC, CHAINALYSIS, etc. For Travel Rule: NOTABENE, SUMSUB, or any TRLink provider name | [optional] | +|**payload** | **Object** | The raw payload of the screening result from the provider. The payload is a JSON object that contains the screening result. The payload structure is different for each screening provider. This field contains the complete, unmodified response from the screening service. | [optional] | +|**timestamp** | **BigDecimal** | Unix timestamp in milliseconds when the screening result was generated | [optional] | +|**screeningStatus** | [**ScreeningStatusEnum**](#ScreeningStatusEnum) | Current status of the screening process | [optional] | +|**bypassReason** | **String** | Reason for bypassing the screening, if applicable. For AML: SANCTIONS_SCREENING_BYPASS, SANCTIONS_RECIPIENT_BYPASS, etc. For Travel Rule: BELOW_THRESHOLD, NO_TRM_AVAILABLE, etc. | [optional] | +|**status** | **AmlStatusEnum** | | [optional] | +|**prevStatus** | **AmlStatusEnum** | | [optional] | +|**prevBypassReason** | **String** | Previous bypass reason before the current bypass reason change | [optional] | +|**verdict** | **ScreeningVerdictEnum** | | [optional] | +|**risk** | **ScreeningRiskLevelEnum** | | [optional] | +|**extendedRisk** | **ScreeningRiskLevelEnum** | | [optional] | +|**externalId** | **String** | External identifier for the screening (provider-specific) | [optional] | +|**customerRefId** | **String** | Customer-provided reference identifier for tracking | [optional] | +|**refId** | **String** | Internal reference identifier | [optional] | +|**category** | **String** | Risk category classification. Examples: EXCHANGE, GAMBLING, MIXER, DARKNET_SERVICE, SANCTIONED_ENTITY | [optional] | +|**categoryId** | **BigDecimal** | Numeric identifier for the risk category | [optional] | +|**destAddress** | **String** | The destination blockchain address associated with the screening | [optional] | +|**destTag** | **String** | Destination tag or memo (for chains that support it like XRP, XLM) | [optional] | +|**destRecordId** | **String** | The destination record identifier used by the screening provider | [optional] | +|**addressResolutionSignature** | **String** | Cryptographic signature for address resolution verification | [optional] | +|**amlResult** | [**ScreeningAmlResult**](ScreeningAmlResult.md) | | [optional] | +|**result** | [**ScreeningTravelRuleResult**](ScreeningTravelRuleResult.md) | | [optional] | +|**detailsMessage** | **String** | Additional human-readable details or message about the screening result | [optional] | +|**matchedAlert** | **Object** | Information about the AML alert that was matched, if any. Contains details about the specific alert that triggered during screening. | [optional] | +|**matchedRule** | **Object** | The matched rule information for this screening result. Contains details about which screening rule was applied and matched. | [optional] | +|**matchedPrescreeningRule** | [**ScreeningTravelRulePrescreeningRule**](ScreeningTravelRulePrescreeningRule.md) | | [optional] | +|**matchedNoTrmScreeningRule** | **Object** | Matched no-TRM (Travel Rule Message) screening rule details. Used when TRLink screening detects a missing TRM scenario. | [optional] | +|**customerIntegrationId** | **String** | Customer integration identifier used by Travel Rule providers | [optional] | +|**customerShortName** | **String** | Customer short name registered with Travel Rule providers | [optional] | +|**travelRuleMessageId** | **String** | Travel rule message identifier for linking and tracking across providers | [optional] | diff --git a/docs/DAppAddressConfig.md b/docs/DAppAddressConfig.md new file mode 100644 index 00000000..26c8a269 --- /dev/null +++ b/docs/DAppAddressConfig.md @@ -0,0 +1,17 @@ + + +# DAppAddressConfig + +dApp address configuration for policy rules + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**globalWhitelisted** | **List<String>** | Globally whitelisted addresses | | +|**tenantWhitelisted** | **List<String>** | Tenant whitelisted addresses | | +|**urls** | **List<String>** | Allowed all address | | +|**operator** | **PolicyOperator** | | | + + + diff --git a/docs/DestinationConfig.md b/docs/DestinationConfig.md index f6c73a76..b24128d4 100644 --- a/docs/DestinationConfig.md +++ b/docs/DestinationConfig.md @@ -8,11 +8,12 @@ Destination configuration for policy rules | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**type** | **AccountType2** | | | +|**type** | **List<AccountType2>** | Destination account types | [optional] | |**subType** | [**List<AccountIdentifier>**](AccountIdentifier.md) | | [optional] | |**ids** | [**List<AccountIdentifier>**](AccountIdentifier.md) | | [optional] | +|**tags** | [**List<PolicyTag>**](PolicyTag.md) | Tags for destination matching | [optional] | |**operator** | **PolicyOperator** | | | -|**matchFrom** | [**MatchFromEnum**](#MatchFromEnum) | Whether to match from account or source | [optional] | +|**matchFrom** | [**MatchFromEnum**](#MatchFromEnum) | Whether to match from account or source (relevant only for ORDER policy type). If set to ACCOUNT, only matchFrom is allowed and other fields are not required. | [optional] | |**addressType** | [**AddressTypeEnum**](#AddressTypeEnum) | Type of destination addresses allowed | | @@ -30,11 +31,9 @@ Destination configuration for policy rules | Name | Value | |---- | -----| -| ALL | "ALL" | | STAR | "*" | | WHITELISTED | "WHITELISTED" | | ONE_TIME | "ONE_TIME" | -| OEC_PARTNER | "OEC_PARTNER" | diff --git a/docs/DirectAccessProviderDetails.md b/docs/DirectAccessProviderDetails.md new file mode 100644 index 00000000..1edc3893 --- /dev/null +++ b/docs/DirectAccessProviderDetails.md @@ -0,0 +1,15 @@ + + +# DirectAccessProviderDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**approved** | **Boolean** | Whether the provider was approved for use | [optional] | +|**hasTermsOfService** | **Boolean** | Whether the provider has terms of service | | +|**termsOfServiceUrl** | **String** | URL to the terms of service document | [optional] | + + + diff --git a/docs/ExecutionStepType.md b/docs/ExecutionStepType.md index 3efa0ac0..44eede96 100644 --- a/docs/ExecutionStepType.md +++ b/docs/ExecutionStepType.md @@ -15,5 +15,7 @@ * `SETTLEMENT` (value: `"SETTLEMENT"`) +* `DELIVERY` (value: `"DELIVERY"`) + diff --git a/docs/FeePropertiesDetails.md b/docs/FeePropertiesDetails.md new file mode 100644 index 00000000..665eb5a0 --- /dev/null +++ b/docs/FeePropertiesDetails.md @@ -0,0 +1,34 @@ + + +# FeePropertiesDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**feeType** | [**FeeTypeEnum**](#FeeTypeEnum) | The type of fee, such as ORDER, NETWORK, or SPREAD. ORDER - Fee for executing the order. NETWORK - Fee for network transactions. SPREAD - Fee for the difference between buy and sell prices. | | +|**assetId** | **String** | The asset identifier for the fee. | | +|**amountType** | [**AmountTypeEnum**](#AmountTypeEnum) | The type of amount for the fee, either FIXED or BPS (basis points). | | + + + +## Enum: FeeTypeEnum + +| Name | Value | +|---- | -----| +| ORDER | "ORDER" | +| NETWORK | "NETWORK" | +| SPREAD | "SPREAD" | + + + +## Enum: AmountTypeEnum + +| Name | Value | +|---- | -----| +| FIXED | "FIXED" | +| BPS | "BPS" | + + + diff --git a/docs/FiatDestination.md b/docs/FiatDestination.md new file mode 100644 index 00000000..082ee556 --- /dev/null +++ b/docs/FiatDestination.md @@ -0,0 +1,100 @@ + + +# FiatDestination + +## oneOf schemas +* [AchDestination](AchDestination.md) +* [IbanDestination](IbanDestination.md) +* [LocalBankTransferAfricaDestination](LocalBankTransferAfricaDestination.md) +* [MobileMoneyDestination](MobileMoneyDestination.md) +* [PixDestination](PixDestination.md) +* [SEPADestination](SEPADestination.md) +* [SpeiDestination](SpeiDestination.md) +* [SwiftDestination](SwiftDestination.md) +* [USWireDestination](USWireDestination.md) + +## Example +```java +// Import classes: +import com.fireblocks.sdk.model.FiatDestination; +import com.fireblocks.sdk.model.AchDestination; +import com.fireblocks.sdk.model.IbanDestination; +import com.fireblocks.sdk.model.LocalBankTransferAfricaDestination; +import com.fireblocks.sdk.model.MobileMoneyDestination; +import com.fireblocks.sdk.model.PixDestination; +import com.fireblocks.sdk.model.SEPADestination; +import com.fireblocks.sdk.model.SpeiDestination; +import com.fireblocks.sdk.model.SwiftDestination; +import com.fireblocks.sdk.model.USWireDestination; + +public class Example { + public static void main(String[] args) { + FiatDestination exampleFiatDestination = new FiatDestination(); + + // create a new AchDestination + AchDestination exampleAchDestination = new AchDestination(); + // set FiatDestination to AchDestination + exampleFiatDestination.setActualInstance(exampleAchDestination); + // to get back the AchDestination set earlier + AchDestination testAchDestination = (AchDestination) exampleFiatDestination.getActualInstance(); + + // create a new IbanDestination + IbanDestination exampleIbanDestination = new IbanDestination(); + // set FiatDestination to IbanDestination + exampleFiatDestination.setActualInstance(exampleIbanDestination); + // to get back the IbanDestination set earlier + IbanDestination testIbanDestination = (IbanDestination) exampleFiatDestination.getActualInstance(); + + // create a new LocalBankTransferAfricaDestination + LocalBankTransferAfricaDestination exampleLocalBankTransferAfricaDestination = new LocalBankTransferAfricaDestination(); + // set FiatDestination to LocalBankTransferAfricaDestination + exampleFiatDestination.setActualInstance(exampleLocalBankTransferAfricaDestination); + // to get back the LocalBankTransferAfricaDestination set earlier + LocalBankTransferAfricaDestination testLocalBankTransferAfricaDestination = (LocalBankTransferAfricaDestination) exampleFiatDestination.getActualInstance(); + + // create a new MobileMoneyDestination + MobileMoneyDestination exampleMobileMoneyDestination = new MobileMoneyDestination(); + // set FiatDestination to MobileMoneyDestination + exampleFiatDestination.setActualInstance(exampleMobileMoneyDestination); + // to get back the MobileMoneyDestination set earlier + MobileMoneyDestination testMobileMoneyDestination = (MobileMoneyDestination) exampleFiatDestination.getActualInstance(); + + // create a new PixDestination + PixDestination examplePixDestination = new PixDestination(); + // set FiatDestination to PixDestination + exampleFiatDestination.setActualInstance(examplePixDestination); + // to get back the PixDestination set earlier + PixDestination testPixDestination = (PixDestination) exampleFiatDestination.getActualInstance(); + + // create a new SEPADestination + SEPADestination exampleSEPADestination = new SEPADestination(); + // set FiatDestination to SEPADestination + exampleFiatDestination.setActualInstance(exampleSEPADestination); + // to get back the SEPADestination set earlier + SEPADestination testSEPADestination = (SEPADestination) exampleFiatDestination.getActualInstance(); + + // create a new SpeiDestination + SpeiDestination exampleSpeiDestination = new SpeiDestination(); + // set FiatDestination to SpeiDestination + exampleFiatDestination.setActualInstance(exampleSpeiDestination); + // to get back the SpeiDestination set earlier + SpeiDestination testSpeiDestination = (SpeiDestination) exampleFiatDestination.getActualInstance(); + + // create a new SwiftDestination + SwiftDestination exampleSwiftDestination = new SwiftDestination(); + // set FiatDestination to SwiftDestination + exampleFiatDestination.setActualInstance(exampleSwiftDestination); + // to get back the SwiftDestination set earlier + SwiftDestination testSwiftDestination = (SwiftDestination) exampleFiatDestination.getActualInstance(); + + // create a new USWireDestination + USWireDestination exampleUSWireDestination = new USWireDestination(); + // set FiatDestination to USWireDestination + exampleFiatDestination.setActualInstance(exampleUSWireDestination); + // to get back the USWireDestination set earlier + USWireDestination testUSWireDestination = (USWireDestination) exampleFiatDestination.getActualInstance(); + } +} +``` + + diff --git a/docs/IbanAddress.md b/docs/IbanAddress.md new file mode 100644 index 00000000..c2a28d17 --- /dev/null +++ b/docs/IbanAddress.md @@ -0,0 +1,14 @@ + + +# IbanAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**iban** | **String** | | | + + + diff --git a/docs/IbanDestination.md b/docs/IbanDestination.md new file mode 100644 index 00000000..ac65689b --- /dev/null +++ b/docs/IbanDestination.md @@ -0,0 +1,22 @@ + + +# IbanDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**IbanAddress**](IbanAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| IBAN | "IBAN" | + + + diff --git a/docs/InitiatorConfig.md b/docs/InitiatorConfig.md index 3efc72ec..42d77949 100644 --- a/docs/InitiatorConfig.md +++ b/docs/InitiatorConfig.md @@ -13,7 +13,7 @@ Policy rule initiator configuration |**services** | **List<String>** | | [optional] | |**fbAdminGroups** | **List<String>** | | [optional] | |**exchange** | **List<String>** | | [optional] | -|**operator** | **PolicyOperator** | | | +|**operator** | **PolicyOperator** | | [optional] | diff --git a/docs/LimitExecutionRequestDetails.md b/docs/LimitExecutionRequestDetails.md index ecf9fa81..2a503742 100644 --- a/docs/LimitExecutionRequestDetails.md +++ b/docs/LimitExecutionRequestDetails.md @@ -7,32 +7,32 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for limit orders | | +|**timeInForce** | **TimeInForce** | | | +|**limitPrice** | **String** | Price for limit orders | | |**side** | [**SideEnum**](#SideEnum) | Side of the order | | |**baseAmount** | **String** | Amount to convert | | |**baseAssetId** | **String** | Source asset identifier | | |**baseAssetRail** | **TransferRail** | | [optional] | |**quoteAssetId** | **String** | Target asset identifier | | |**quoteAssetRail** | **TransferRail** | | [optional] | -|**type** | [**TypeEnum**](#TypeEnum) | Order type for limit orders | | -|**timeInForce** | **TimeInForce** | | | -|**limitPrice** | **String** | Price for limit orders | | -## Enum: SideEnum +## Enum: TypeEnum | Name | Value | |---- | -----| -| BUY | "BUY" | -| SELL | "SELL" | +| LIMIT | "LIMIT" | -## Enum: TypeEnum +## Enum: SideEnum | Name | Value | |---- | -----| -| LIMIT | "LIMIT" | +| BUY | "BUY" | +| SELL | "SELL" | diff --git a/docs/LimitExecutionResponseDetails.md b/docs/LimitExecutionResponseDetails.md index 9d722d01..9e1ccc56 100644 --- a/docs/LimitExecutionResponseDetails.md +++ b/docs/LimitExecutionResponseDetails.md @@ -7,32 +7,32 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for limit orders | | +|**timeInForce** | **TimeInForce** | | | +|**limitPrice** | **String** | Price for limit orders | | |**side** | [**SideEnum**](#SideEnum) | Side of the order | | |**baseAmount** | **String** | Amount to convert | | |**baseAssetId** | **String** | Source asset identifier | | |**baseAssetRail** | **TransferRail** | | [optional] | |**quoteAssetId** | **String** | Target asset identifier | | |**quoteAssetRail** | **TransferRail** | | [optional] | -|**type** | [**TypeEnum**](#TypeEnum) | Order type for limit orders | | -|**timeInForce** | **TimeInForce** | | | -|**limitPrice** | **String** | Price for limit orders | | -## Enum: SideEnum +## Enum: TypeEnum | Name | Value | |---- | -----| -| BUY | "BUY" | -| SELL | "SELL" | +| LIMIT | "LIMIT" | -## Enum: TypeEnum +## Enum: SideEnum | Name | Value | |---- | -----| -| LIMIT | "LIMIT" | +| BUY | "BUY" | +| SELL | "SELL" | diff --git a/docs/LimitTypeDetails.md b/docs/LimitTypeDetails.md new file mode 100644 index 00000000..f3c49f2d --- /dev/null +++ b/docs/LimitTypeDetails.md @@ -0,0 +1,23 @@ + + +# LimitTypeDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for limit orders | | +|**timeInForce** | **TimeInForce** | | | +|**limitPrice** | **String** | Price for limit orders | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| LIMIT | "LIMIT" | + + + diff --git a/docs/LocalBankTransferAfricaAddress.md b/docs/LocalBankTransferAfricaAddress.md new file mode 100644 index 00000000..3e89ccb4 --- /dev/null +++ b/docs/LocalBankTransferAfricaAddress.md @@ -0,0 +1,16 @@ + + +# LocalBankTransferAfricaAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**accountNumber** | **String** | | | +|**bankName** | **String** | Name of the bank | | +|**bankCode** | **String** | Internal bank identifier | | + + + diff --git a/docs/LocalBankTransferAfricaDestination.md b/docs/LocalBankTransferAfricaDestination.md new file mode 100644 index 00000000..63914279 --- /dev/null +++ b/docs/LocalBankTransferAfricaDestination.md @@ -0,0 +1,22 @@ + + +# LocalBankTransferAfricaDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**LocalBankTransferAfricaAddress**](LocalBankTransferAfricaAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| LOCAL_BANK_TRANSFER_AFRICA | "LOCAL_BANK_TRANSFER_AFRICA" | + + + diff --git a/docs/MarketExecutionRequestDetails.md b/docs/MarketExecutionRequestDetails.md index c8bad98e..2b389248 100644 --- a/docs/MarketExecutionRequestDetails.md +++ b/docs/MarketExecutionRequestDetails.md @@ -7,30 +7,30 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for market orders | | |**side** | [**SideEnum**](#SideEnum) | Side of the order | | |**baseAmount** | **String** | Amount to convert | | |**baseAssetId** | **String** | Source asset identifier | | |**baseAssetRail** | **TransferRail** | | [optional] | |**quoteAssetId** | **String** | Target asset identifier | | |**quoteAssetRail** | **TransferRail** | | [optional] | -|**type** | [**TypeEnum**](#TypeEnum) | Order type for market orders | | -## Enum: SideEnum +## Enum: TypeEnum | Name | Value | |---- | -----| -| BUY | "BUY" | -| SELL | "SELL" | +| MARKET | "MARKET" | -## Enum: TypeEnum +## Enum: SideEnum | Name | Value | |---- | -----| -| MARKET | "MARKET" | +| BUY | "BUY" | +| SELL | "SELL" | diff --git a/docs/MarketExecutionResponseDetails.md b/docs/MarketExecutionResponseDetails.md index a677be0e..65d39954 100644 --- a/docs/MarketExecutionResponseDetails.md +++ b/docs/MarketExecutionResponseDetails.md @@ -7,30 +7,30 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for market orders | | |**side** | [**SideEnum**](#SideEnum) | Side of the order | | |**baseAmount** | **String** | Amount to convert | | |**baseAssetId** | **String** | Source asset identifier | | |**baseAssetRail** | **TransferRail** | | [optional] | |**quoteAssetId** | **String** | Target asset identifier | | |**quoteAssetRail** | **TransferRail** | | [optional] | -|**type** | [**TypeEnum**](#TypeEnum) | Order type for market orders | | -## Enum: SideEnum +## Enum: TypeEnum | Name | Value | |---- | -----| -| BUY | "BUY" | -| SELL | "SELL" | +| MARKET | "MARKET" | -## Enum: TypeEnum +## Enum: SideEnum | Name | Value | |---- | -----| -| MARKET | "MARKET" | +| BUY | "BUY" | +| SELL | "SELL" | diff --git a/docs/MarketTypeDetails.md b/docs/MarketTypeDetails.md new file mode 100644 index 00000000..30f6b754 --- /dev/null +++ b/docs/MarketTypeDetails.md @@ -0,0 +1,21 @@ + + +# MarketTypeDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for market orders | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| MARKET | "MARKET" | + + + diff --git a/docs/MobileMoneyAddress.md b/docs/MobileMoneyAddress.md new file mode 100644 index 00000000..e8d9569d --- /dev/null +++ b/docs/MobileMoneyAddress.md @@ -0,0 +1,29 @@ + + +# MobileMoneyAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**mobilePhoneNumber** | **String** | Mobile phone number in E.164 format | | +|**provider** | [**ProviderEnum**](#ProviderEnum) | Mobile money provider | | +|**beneficiaryDocumentId** | **String** | Beneficiary document identification (may be required) | [optional] | +|**beneficiaryRelationship** | **String** | Relationship to beneficiary for AML purposes | [optional] | + + + +## Enum: ProviderEnum + +| Name | Value | +|---- | -----| +| M_PESA | "m-pesa" | +| AIRTEL | "airtel" | +| MTN | "mtn" | +| TIGO | "tigo" | +| ORANGE | "orange" | + + + diff --git a/docs/MobileMoneyDestination.md b/docs/MobileMoneyDestination.md new file mode 100644 index 00000000..78200c2c --- /dev/null +++ b/docs/MobileMoneyDestination.md @@ -0,0 +1,22 @@ + + +# MobileMoneyDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**MobileMoneyAddress**](MobileMoneyAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| MOBILE_MONEY | "MOBILE_MONEY" | + + + diff --git a/docs/OrderSide.md b/docs/OrderSide.md new file mode 100644 index 00000000..8642e715 --- /dev/null +++ b/docs/OrderSide.md @@ -0,0 +1,15 @@ + + +# OrderSide + +## Enum + + +* `BUY` (value: `"BUY"`) + +* `SELL` (value: `"SELL"`) + +* `ANY` (value: `"ANY"`) + + + diff --git a/docs/OrderStatus.md b/docs/OrderStatus.md index 0331114f..227dd28b 100644 --- a/docs/OrderStatus.md +++ b/docs/OrderStatus.md @@ -7,6 +7,8 @@ * `CREATED` (value: `"CREATED"`) +* `AWAITING_PAYMENT` (value: `"AWAITING_PAYMENT"`) + * `PENDING_USER_ACTION` (value: `"PENDING_USER_ACTION"`) * `PROCESSING` (value: `"PROCESSING"`) diff --git a/docs/PaymentInstructions.md b/docs/PaymentInstructions.md index 1a094861..fd8e1da4 100644 --- a/docs/PaymentInstructions.md +++ b/docs/PaymentInstructions.md @@ -8,8 +8,8 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| |**type** | [**TypeEnum**](#TypeEnum) | | | -|**address** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | -|**referenceId** | **String** | | | +|**address** | [**MobileMoneyAddress**](MobileMoneyAddress.md) | | | +|**referenceId** | **String** | | [optional] | @@ -17,14 +17,6 @@ | Name | Value | |---- | -----| -| IBAN | "IBAN" | -| SWIFT | "SWIFT" | -| ACH | "ACH" | -| US_WIRE | "US_WIRE" | -| SPEI | "SPEI" | -| SEPA | "SEPA" | -| PIX | "PIX" | -| LOCAL_BANK_TRANSFER_AFRICA | "LOCAL_BANK_TRANSFER_AFRICA" | | MOBILE_MONEY | "MOBILE_MONEY" | diff --git a/docs/PaymentInstructionsDetails.md b/docs/PaymentInstructionsDetails.md new file mode 100644 index 00000000..1f2c6d19 --- /dev/null +++ b/docs/PaymentInstructionsDetails.md @@ -0,0 +1,13 @@ + + +# PaymentInstructionsDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**referenceId** | **String** | | [optional] | + + + diff --git a/docs/PixAddress.md b/docs/PixAddress.md new file mode 100644 index 00000000..17344042 --- /dev/null +++ b/docs/PixAddress.md @@ -0,0 +1,29 @@ + + +# PixAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**pixKey** | **String** | | | +|**keyType** | [**KeyTypeEnum**](#KeyTypeEnum) | | | +|**bankName** | **String** | | [optional] | +|**bankCode** | **String** | | [optional] | + + + +## Enum: KeyTypeEnum + +| Name | Value | +|---- | -----| +| CPF | "cpf" | +| CNPJ | "cnpj" | +| EMAIL | "email" | +| PHONE | "phone" | +| RANDOM | "random" | + + + diff --git a/docs/PixDestination.md b/docs/PixDestination.md new file mode 100644 index 00000000..54a48aef --- /dev/null +++ b/docs/PixDestination.md @@ -0,0 +1,22 @@ + + +# PixDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**PixAddress**](PixAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| PIX | "PIX" | + + + diff --git a/docs/PolicyCurrency.md b/docs/PolicyCurrency.md new file mode 100644 index 00000000..f40e1c79 --- /dev/null +++ b/docs/PolicyCurrency.md @@ -0,0 +1,15 @@ + + +# PolicyCurrency + +## Enum + + +* `NATIVE` (value: `"NATIVE"`) + +* `USD` (value: `"USD"`) + +* `EUR` (value: `"EUR"`) + + + diff --git a/docs/PolicyOperator.md b/docs/PolicyOperator.md index 9c7226df..c7cf27ea 100644 --- a/docs/PolicyOperator.md +++ b/docs/PolicyOperator.md @@ -7,7 +7,5 @@ * `INCLUDES` (value: `"INCLUDES"`) -* `EXCLUDES` (value: `"EXCLUDES"`) - diff --git a/docs/PolicyRule.md b/docs/PolicyRule.md index efb4d6df..0142b410 100644 --- a/docs/PolicyRule.md +++ b/docs/PolicyRule.md @@ -14,13 +14,14 @@ V2 Policy rule which is enforced on transactions |**type** | **PolicyType** | | | |**subType** | **PolicyType** | | [optional] | |**initiator** | [**InitiatorConfigPattern**](InitiatorConfigPattern.md) | | | -|**asset** | [**AssetConfig**](AssetConfig.md) | | | -|**source** | [**AccountConfig**](AccountConfig.md) | | | +|**asset** | [**AssetConfig**](AssetConfig.md) | | [optional] | +|**source** | [**SourceConfig**](SourceConfig.md) | | | |**destination** | [**DestinationConfig**](DestinationConfig.md) | | [optional] | |**account** | [**AccountConfig**](AccountConfig.md) | | [optional] | +|**side** | **OrderSide** | | [optional] | |**verdict** | [**VerdictConfig**](VerdictConfig.md) | | | |**amountOverTime** | [**AmountOverTimeConfig**](AmountOverTimeConfig.md) | | [optional] | -|**amount** | [**AmountRange**](AmountRange.md) | | [optional] | +|**amount** | [**AmountConfig**](AmountConfig.md) | | [optional] | |**externalDescriptor** | **String** | External descriptor for the rule | [optional] | |**method** | [**ContractMethodPattern**](ContractMethodPattern.md) | | [optional] | |**isGlobalPolicy** | **Boolean** | Whether this is a global policy | [optional] | @@ -30,6 +31,7 @@ V2 Policy rule which is enforced on transactions |**baseAsset** | [**AssetConfig**](AssetConfig.md) | | [optional] | |**quoteAmount** | [**AmountRange**](AmountRange.md) | | [optional] | |**baseAmount** | [**AmountRange**](AmountRange.md) | | [optional] | +|**dAppAddress** | [**DAppAddressConfig**](DAppAddressConfig.md) | | [optional] | |**derivationPath** | [**DerivationPathConfig**](DerivationPathConfig.md) | | [optional] | |**index** | **BigDecimal** | Index for the policy rule | [optional] | diff --git a/docs/PolicyTag.md b/docs/PolicyTag.md new file mode 100644 index 00000000..624a4c81 --- /dev/null +++ b/docs/PolicyTag.md @@ -0,0 +1,14 @@ + + +# PolicyTag + +Policy tag for matching + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**id** | **String** | Tag identifier | | + + + diff --git a/docs/PolicyVerdictActionEnum.md b/docs/PolicyVerdictActionEnum.md new file mode 100644 index 00000000..0bbd91a3 --- /dev/null +++ b/docs/PolicyVerdictActionEnum.md @@ -0,0 +1,29 @@ + + +# PolicyVerdictActionEnum + +## Enum + + +* `ALLOW` (value: `"ALLOW"`) + +* `BLOCK` (value: `"BLOCK"`) + +* `_2_TIER` (value: `"2-TIER"`) + +* `SCREEN` (value: `"SCREEN"`) + +* `ACCEPT` (value: `"ACCEPT"`) + +* `REJECT` (value: `"REJECT"`) + +* `ALERT` (value: `"ALERT"`) + +* `WAIT` (value: `"WAIT"`) + +* `FREEZE` (value: `"FREEZE"`) + +* `CANCEL` (value: `"CANCEL"`) + + + diff --git a/docs/PolicyVerdictActionEnum2.md b/docs/PolicyVerdictActionEnum2.md new file mode 100644 index 00000000..2b7ee6fb --- /dev/null +++ b/docs/PolicyVerdictActionEnum2.md @@ -0,0 +1,27 @@ + + +# PolicyVerdictActionEnum2 + +## Enum + + +* `ALLOW` (value: `"ALLOW"`) + +* `BLOCK` (value: `"BLOCK"`) + +* `SCREEN` (value: `"SCREEN"`) + +* `ACCEPT` (value: `"ACCEPT"`) + +* `REJECT` (value: `"REJECT"`) + +* `ALERT` (value: `"ALERT"`) + +* `WAIT` (value: `"WAIT"`) + +* `FREEZE` (value: `"FREEZE"`) + +* `CANCEL` (value: `"CANCEL"`) + + + diff --git a/docs/QuoteExecutionResponseDetails.md b/docs/QuoteExecutionResponseDetails.md index 8d799761..5e56e54e 100644 --- a/docs/QuoteExecutionResponseDetails.md +++ b/docs/QuoteExecutionResponseDetails.md @@ -7,32 +7,32 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for quote orders | | +|**quoteId** | **String** | Quote ID for quote orders | | +|**quoteAmount** | **String** | Quote amount for quote orders | | |**side** | [**SideEnum**](#SideEnum) | Side of the order | | |**baseAmount** | **String** | Amount to convert | | |**baseAssetId** | **String** | Source asset identifier | | |**baseAssetRail** | **TransferRail** | | [optional] | |**quoteAssetId** | **String** | Target asset identifier | | |**quoteAssetRail** | **TransferRail** | | [optional] | -|**type** | [**TypeEnum**](#TypeEnum) | Order type for quote orders | | -|**quoteId** | **String** | Quote ID for quote orders | | -|**quoteAmount** | **String** | Quote amount for quote orders | | -## Enum: SideEnum +## Enum: TypeEnum | Name | Value | |---- | -----| -| BUY | "BUY" | -| SELL | "SELL" | +| QUOTE | "QUOTE" | -## Enum: TypeEnum +## Enum: SideEnum | Name | Value | |---- | -----| -| QUOTE | "QUOTE" | +| BUY | "BUY" | +| SELL | "SELL" | diff --git a/docs/QuoteExecutionTypeDetails.md b/docs/QuoteExecutionTypeDetails.md new file mode 100644 index 00000000..fa2037f8 --- /dev/null +++ b/docs/QuoteExecutionTypeDetails.md @@ -0,0 +1,23 @@ + + +# QuoteExecutionTypeDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | Order type for quote orders | | +|**quoteId** | **String** | Quote ID for quote orders | | +|**quoteAmount** | **String** | Quote amount for quote orders | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| QUOTE | "QUOTE" | + + + diff --git a/docs/QuoteExecutionWithRequoteRequestDetails.md b/docs/QuoteExecutionWithRequoteRequestDetails.md index eb155f43..5797fb58 100644 --- a/docs/QuoteExecutionWithRequoteRequestDetails.md +++ b/docs/QuoteExecutionWithRequoteRequestDetails.md @@ -9,7 +9,7 @@ |------------ | ------------- | ------------- | -------------| |**type** | [**TypeEnum**](#TypeEnum) | Order type for quote orders | | |**quoteId** | **String** | Quote ID for quote orders | | -|**reQuote** | [**QuoteExecutionWithRequoteRequestDetailsAllOfReQuote**](QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.md) | | [optional] | +|**reQuote** | [**ReQuoteDetailsReQuote**](ReQuoteDetailsReQuote.md) | | [optional] | diff --git a/docs/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.md b/docs/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.md deleted file mode 100644 index beeb76c5..00000000 --- a/docs/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.md +++ /dev/null @@ -1,37 +0,0 @@ - - -# QuoteExecutionWithRequoteRequestDetailsAllOfReQuote - -## oneOf schemas -* [MarketRequoteRequestDetails](MarketRequoteRequestDetails.md) -* [RetryRequoteRequestDetails](RetryRequoteRequestDetails.md) - -## Example -```java -// Import classes: -import com.fireblocks.sdk.model.QuoteExecutionWithRequoteRequestDetailsAllOfReQuote; -import com.fireblocks.sdk.model.MarketRequoteRequestDetails; -import com.fireblocks.sdk.model.RetryRequoteRequestDetails; - -public class Example { - public static void main(String[] args) { - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote exampleQuoteExecutionWithRequoteRequestDetailsAllOfReQuote = new QuoteExecutionWithRequoteRequestDetailsAllOfReQuote(); - - // create a new MarketRequoteRequestDetails - MarketRequoteRequestDetails exampleMarketRequoteRequestDetails = new MarketRequoteRequestDetails(); - // set QuoteExecutionWithRequoteRequestDetailsAllOfReQuote to MarketRequoteRequestDetails - exampleQuoteExecutionWithRequoteRequestDetailsAllOfReQuote.setActualInstance(exampleMarketRequoteRequestDetails); - // to get back the MarketRequoteRequestDetails set earlier - MarketRequoteRequestDetails testMarketRequoteRequestDetails = (MarketRequoteRequestDetails) exampleQuoteExecutionWithRequoteRequestDetailsAllOfReQuote.getActualInstance(); - - // create a new RetryRequoteRequestDetails - RetryRequoteRequestDetails exampleRetryRequoteRequestDetails = new RetryRequoteRequestDetails(); - // set QuoteExecutionWithRequoteRequestDetailsAllOfReQuote to RetryRequoteRequestDetails - exampleQuoteExecutionWithRequoteRequestDetailsAllOfReQuote.setActualInstance(exampleRetryRequoteRequestDetails); - // to get back the RetryRequoteRequestDetails set earlier - RetryRequoteRequestDetails testRetryRequoteRequestDetails = (RetryRequoteRequestDetails) exampleQuoteExecutionWithRequoteRequestDetailsAllOfReQuote.getActualInstance(); - } -} -``` - - diff --git a/docs/QuoteExecutionWithRequoteResponseDetails.md b/docs/QuoteExecutionWithRequoteResponseDetails.md index 53acee5c..d1858b2c 100644 --- a/docs/QuoteExecutionWithRequoteResponseDetails.md +++ b/docs/QuoteExecutionWithRequoteResponseDetails.md @@ -16,7 +16,7 @@ |**baseAssetRail** | **TransferRail** | | [optional] | |**quoteAssetId** | **String** | Target asset identifier | | |**quoteAssetRail** | **TransferRail** | | [optional] | -|**reQuote** | [**QuoteExecutionWithRequoteResponseDetailsAllOfReQuote**](QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.md) | | [optional] | +|**reQuote** | [**ReQuoteDetailsReQuote**](ReQuoteDetailsReQuote.md) | | [optional] | diff --git a/docs/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.md b/docs/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.md deleted file mode 100644 index 208143ff..00000000 --- a/docs/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.md +++ /dev/null @@ -1,37 +0,0 @@ - - -# QuoteExecutionWithRequoteResponseDetailsAllOfReQuote - -## oneOf schemas -* [MarketRequoteRequestDetails](MarketRequoteRequestDetails.md) -* [RetryRequoteRequestDetails](RetryRequoteRequestDetails.md) - -## Example -```java -// Import classes: -import com.fireblocks.sdk.model.QuoteExecutionWithRequoteResponseDetailsAllOfReQuote; -import com.fireblocks.sdk.model.MarketRequoteRequestDetails; -import com.fireblocks.sdk.model.RetryRequoteRequestDetails; - -public class Example { - public static void main(String[] args) { - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote exampleQuoteExecutionWithRequoteResponseDetailsAllOfReQuote = new QuoteExecutionWithRequoteResponseDetailsAllOfReQuote(); - - // create a new MarketRequoteRequestDetails - MarketRequoteRequestDetails exampleMarketRequoteRequestDetails = new MarketRequoteRequestDetails(); - // set QuoteExecutionWithRequoteResponseDetailsAllOfReQuote to MarketRequoteRequestDetails - exampleQuoteExecutionWithRequoteResponseDetailsAllOfReQuote.setActualInstance(exampleMarketRequoteRequestDetails); - // to get back the MarketRequoteRequestDetails set earlier - MarketRequoteRequestDetails testMarketRequoteRequestDetails = (MarketRequoteRequestDetails) exampleQuoteExecutionWithRequoteResponseDetailsAllOfReQuote.getActualInstance(); - - // create a new RetryRequoteRequestDetails - RetryRequoteRequestDetails exampleRetryRequoteRequestDetails = new RetryRequoteRequestDetails(); - // set QuoteExecutionWithRequoteResponseDetailsAllOfReQuote to RetryRequoteRequestDetails - exampleQuoteExecutionWithRequoteResponseDetailsAllOfReQuote.setActualInstance(exampleRetryRequoteRequestDetails); - // to get back the RetryRequoteRequestDetails set earlier - RetryRequoteRequestDetails testRetryRequoteRequestDetails = (RetryRequoteRequestDetails) exampleQuoteExecutionWithRequoteResponseDetailsAllOfReQuote.getActualInstance(); - } -} -``` - - diff --git a/docs/QuotePropertiesDetails.md b/docs/QuotePropertiesDetails.md new file mode 100644 index 00000000..bf2ae52e --- /dev/null +++ b/docs/QuotePropertiesDetails.md @@ -0,0 +1,42 @@ + + +# QuotePropertiesDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**via** | [**AccessType**](AccessType.md) | | | +|**id** | **String** | | | +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**quoteAssetId** | **String** | | | +|**baseAssetId** | **String** | | | +|**baseAmount** | **String** | | | +|**quoteAmount** | **String** | | | +|**priceImpact** | **BigDecimal** | | [optional] | +|**quoteMinAmount** | **String** | | [optional] | +|**executionSteps** | [**List<ExecutionStepDetails>**](ExecutionStepDetails.md) | | [optional] | +|**generalFees** | [**List<Fee>**](Fee.md) | | [optional] | +|**side** | [**SideEnum**](#SideEnum) | Side of the order | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| COMMITTED | "COMMITTED" | +| INDICATIVE | "INDICATIVE" | + + + +## Enum: SideEnum + +| Name | Value | +|---- | -----| +| BUY | "BUY" | +| SELL | "SELL" | + + + diff --git a/docs/ReQuoteDetails.md b/docs/ReQuoteDetails.md new file mode 100644 index 00000000..3cb0bc0a --- /dev/null +++ b/docs/ReQuoteDetails.md @@ -0,0 +1,13 @@ + + +# ReQuoteDetails + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**reQuote** | [**ReQuoteDetailsReQuote**](ReQuoteDetailsReQuote.md) | | [optional] | + + + diff --git a/docs/ReQuoteDetailsReQuote.md b/docs/ReQuoteDetailsReQuote.md new file mode 100644 index 00000000..56918b6d --- /dev/null +++ b/docs/ReQuoteDetailsReQuote.md @@ -0,0 +1,37 @@ + + +# ReQuoteDetailsReQuote + +## oneOf schemas +* [MarketRequoteRequestDetails](MarketRequoteRequestDetails.md) +* [RetryRequoteRequestDetails](RetryRequoteRequestDetails.md) + +## Example +```java +// Import classes: +import com.fireblocks.sdk.model.ReQuoteDetailsReQuote; +import com.fireblocks.sdk.model.MarketRequoteRequestDetails; +import com.fireblocks.sdk.model.RetryRequoteRequestDetails; + +public class Example { + public static void main(String[] args) { + ReQuoteDetailsReQuote exampleReQuoteDetailsReQuote = new ReQuoteDetailsReQuote(); + + // create a new MarketRequoteRequestDetails + MarketRequoteRequestDetails exampleMarketRequoteRequestDetails = new MarketRequoteRequestDetails(); + // set ReQuoteDetailsReQuote to MarketRequoteRequestDetails + exampleReQuoteDetailsReQuote.setActualInstance(exampleMarketRequoteRequestDetails); + // to get back the MarketRequoteRequestDetails set earlier + MarketRequoteRequestDetails testMarketRequoteRequestDetails = (MarketRequoteRequestDetails) exampleReQuoteDetailsReQuote.getActualInstance(); + + // create a new RetryRequoteRequestDetails + RetryRequoteRequestDetails exampleRetryRequoteRequestDetails = new RetryRequoteRequestDetails(); + // set ReQuoteDetailsReQuote to RetryRequoteRequestDetails + exampleReQuoteDetailsReQuote.setActualInstance(exampleRetryRequoteRequestDetails); + // to get back the RetryRequoteRequestDetails set earlier + RetryRequoteRequestDetails testRetryRequoteRequestDetails = (RetryRequoteRequestDetails) exampleReQuoteDetailsReQuote.getActualInstance(); + } +} +``` + + diff --git a/docs/RegisterNewAssetRequest.md b/docs/RegisterNewAssetRequest.md index ea8f74b9..27f24fbb 100644 --- a/docs/RegisterNewAssetRequest.md +++ b/docs/RegisterNewAssetRequest.md @@ -8,7 +8,7 @@ | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| |**blockchainId** | **String** | Native asset ID of the blockchain | | -|**address** | **String** | Asset address. - EVM-based chains: token contract address - Stellar (XLM): issuer address - Algorand (ALGO): asset ID - TRON (TRX): token contract address - NEAR: token address - Solana: token's mint account address | | +|**address** | **String** | Asset address. - EVM-based chains: token contract address - Stellar (XLM): issuer address - Algorand (ALGO): asset ID - TRON (TRX): token contract address - NEAR: token address - Solana: token's mint account address - Sui: token's type | | |**symbol** | **String** | Required for Stellar only, asset code is expected. | [optional] | diff --git a/docs/SEPAAddress.md b/docs/SEPAAddress.md new file mode 100644 index 00000000..d4585144 --- /dev/null +++ b/docs/SEPAAddress.md @@ -0,0 +1,20 @@ + + +# SEPAAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**iban** | **String** | | | +|**bic** | **String** | Bank Identifier Code (SWIFT/BIC) | [optional] | +|**bankName** | **String** | | [optional] | +|**bankBranch** | **String** | | [optional] | +|**bankAddress** | **String** | | [optional] | +|**purposeCode** | **String** | ISO purpose code for the transfer | [optional] | +|**taxId** | **String** | Beneficiary tax identification number | [optional] | + + + diff --git a/docs/SEPADestination.md b/docs/SEPADestination.md new file mode 100644 index 00000000..19404127 --- /dev/null +++ b/docs/SEPADestination.md @@ -0,0 +1,22 @@ + + +# SEPADestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**SEPAAddress**](SEPAAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| SEPA | "SEPA" | + + + diff --git a/docs/ScreeningAlertExposureTypeEnum.md b/docs/ScreeningAlertExposureTypeEnum.md new file mode 100644 index 00000000..de4ea987 --- /dev/null +++ b/docs/ScreeningAlertExposureTypeEnum.md @@ -0,0 +1,13 @@ + + +# ScreeningAlertExposureTypeEnum + +## Enum + + +* `DIRECT` (value: `"DIRECT"`) + +* `INDIRECT` (value: `"INDIRECT"`) + + + diff --git a/docs/ScreeningAmlAlert.md b/docs/ScreeningAmlAlert.md new file mode 100644 index 00000000..28e37014 --- /dev/null +++ b/docs/ScreeningAmlAlert.md @@ -0,0 +1,22 @@ + + +# ScreeningAmlAlert + +AML alert information + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**alertLevel** | **AlertLevelEnum** | | | +|**alertName** | **String** | Name or type of the alert | [optional] | +|**category** | **String** | Alert category | [optional] | +|**service** | **String** | Service that generated the alert | [optional] | +|**externalId** | **String** | External identifier for the alert | | +|**alertAmount** | **BigDecimal** | Amount associated with the alert | | +|**exposureType** | **ScreeningAlertExposureTypeEnum** | | | +|**policyAction** | **String** | Recommended action based on policy | [optional] | +|**categoryId** | **BigDecimal** | Category identifier | [optional] | + + + diff --git a/docs/ScreeningAmlMatchedRule.md b/docs/ScreeningAmlMatchedRule.md new file mode 100644 index 00000000..971ef1a2 --- /dev/null +++ b/docs/ScreeningAmlMatchedRule.md @@ -0,0 +1,16 @@ + + +# ScreeningAmlMatchedRule + +AML matched rule information + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**ruleId** | **String** | Identifier of the matched rule | [optional] | +|**ruleName** | **String** | Name of the matched rule | [optional] | +|**action** | **PolicyVerdictActionEnum2** | | [optional] | + + + diff --git a/docs/ScreeningAmlResult.md b/docs/ScreeningAmlResult.md new file mode 100644 index 00000000..ae17f445 --- /dev/null +++ b/docs/ScreeningAmlResult.md @@ -0,0 +1,17 @@ + + +# ScreeningAmlResult + +Detailed AML screening result information. Contains alerts, risk scores, and other AML-specific data from provider-specific responses. + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**alerts** | [**List<ScreeningAmlAlert>**](ScreeningAmlAlert.md) | List of AML alerts triggered during screening | [optional] | +|**providerResponse** | **Map<String, Object>** | Complete response from the AML provider. This is a dynamic object that varies significantly between different AML providers (Chainalysis, Elliptic, etc.). Each provider has their own proprietary response format and schema. Examples of provider-specific structures: - Chainalysis: Contains cluster info, risk scores, sanctions data - Elliptic: Includes risk assessment, entity types, compliance flags The structure is provider-dependent and cannot be standardized as each vendor implements their own proprietary data models and response formats. | [optional] | +|**matchedRule** | [**ScreeningAmlMatchedRule**](ScreeningAmlMatchedRule.md) | | [optional] | +|**matchedAlert** | [**ScreeningAmlAlert**](ScreeningAmlAlert.md) | | [optional] | + + + diff --git a/docs/ScreeningMetadataConfig.md b/docs/ScreeningMetadataConfig.md index 6efea916..55ced979 100644 --- a/docs/ScreeningMetadataConfig.md +++ b/docs/ScreeningMetadataConfig.md @@ -8,7 +8,7 @@ Screening metadata configuration | Name | Type | Description | Notes | |------------ | ------------- | ------------- | -------------| -|**direction** | [**DirectionEnum**](#DirectionEnum) | Direction of transaction | | +|**direction** | [**DirectionEnum**](#DirectionEnum) | Direction of transaction | [optional] | |**provider** | [**ProviderEnum**](#ProviderEnum) | Screening provider | [optional] | |**riskRating** | [**RiskRatingEnum**](#RiskRatingEnum) | Risk rating threshold | [optional] | |**riskScore** | **String** | Risk score threshold | [optional] | diff --git a/docs/ScreeningRiskLevelEnum.md b/docs/ScreeningRiskLevelEnum.md new file mode 100644 index 00000000..06f4624a --- /dev/null +++ b/docs/ScreeningRiskLevelEnum.md @@ -0,0 +1,21 @@ + + +# ScreeningRiskLevelEnum + +## Enum + + +* `VERY_HIGH` (value: `"VERY_HIGH"`) + +* `SEVERE` (value: `"SEVERE"`) + +* `HIGH` (value: `"HIGH"`) + +* `MEDIUM` (value: `"MEDIUM"`) + +* `LOW` (value: `"LOW"`) + +* `UNKNOWN` (value: `"UNKNOWN"`) + + + diff --git a/docs/ScreeningTRLinkAmount.md b/docs/ScreeningTRLinkAmount.md new file mode 100644 index 00000000..9c9af8c2 --- /dev/null +++ b/docs/ScreeningTRLinkAmount.md @@ -0,0 +1,24 @@ + + +# ScreeningTRLinkAmount + +TRLink amount definition with range and currency, compatible with TAP format from Policy Engine V2 + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**range** | [**AmountRangeMinMax**](AmountRangeMinMax.md) | | [optional] | +|**currency** | [**CurrencyEnum**](#CurrencyEnum) | Currency type | [optional] | + + + +## Enum: CurrencyEnum + +| Name | Value | +|---- | -----| +| USD | "USD" | +| NATIVE | "NATIVE" | + + + diff --git a/docs/ScreeningTRLinkMissingTrmDecision.md b/docs/ScreeningTRLinkMissingTrmDecision.md new file mode 100644 index 00000000..8b493917 --- /dev/null +++ b/docs/ScreeningTRLinkMissingTrmDecision.md @@ -0,0 +1,36 @@ + + +# ScreeningTRLinkMissingTrmDecision + +Interface for reporting missing TRM screening decisions in ITRLinkResult + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**ScreeningTRLinkAmount**](ScreeningTRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**validBefore** | **BigDecimal** | Unix timestamp when rule expires | [optional] | +|**validAfter** | **BigDecimal** | Unix timestamp when rule becomes valid | [optional] | +|**action** | **TRLinkMissingTrmActionEnum** | | | +|**source** | **String** | TRLink missing TRM source | | +|**timestamp** | **OffsetDateTime** | Timestamp of the decision | [optional] | +|**reason** | **String** | Reason for the decision | [optional] | + + + diff --git a/docs/ScreeningTRLinkMissingTrmRule.md b/docs/ScreeningTRLinkMissingTrmRule.md new file mode 100644 index 00000000..62241859 --- /dev/null +++ b/docs/ScreeningTRLinkMissingTrmRule.md @@ -0,0 +1,33 @@ + + +# ScreeningTRLinkMissingTrmRule + +TRLink missing TRM rule definition + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**ScreeningTRLinkAmount**](ScreeningTRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**validBefore** | **BigDecimal** | Unix timestamp when rule expires | [optional] | +|**validAfter** | **BigDecimal** | Unix timestamp when rule becomes valid | [optional] | +|**action** | **TRLinkMissingTrmActionEnum** | | | + + + diff --git a/docs/ScreeningTRLinkPostScreeningRule.md b/docs/ScreeningTRLinkPostScreeningRule.md new file mode 100644 index 00000000..ae72fdd9 --- /dev/null +++ b/docs/ScreeningTRLinkPostScreeningRule.md @@ -0,0 +1,35 @@ + + +# ScreeningTRLinkPostScreeningRule + +TRLink post-screening rule definition + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**ScreeningTRLinkAmount**](ScreeningTRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**providerIdent** | **String** | Provider identifier | [optional] | +|**trmStatus** | **TRLinkTrmScreeningStatusEnum** | | [optional] | +|**validBefore** | **BigDecimal** | Unix timestamp when rule expires | [optional] | +|**validAfter** | **BigDecimal** | Unix timestamp when rule becomes valid | [optional] | +|**action** | **TRLinkVerdictEnum** | | | + + + diff --git a/docs/ScreeningTRLinkPrescreeningRule.md b/docs/ScreeningTRLinkPrescreeningRule.md new file mode 100644 index 00000000..3cc82f57 --- /dev/null +++ b/docs/ScreeningTRLinkPrescreeningRule.md @@ -0,0 +1,31 @@ + + +# ScreeningTRLinkPrescreeningRule + +TRLink pre-screening rule definition + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**ScreeningTRLinkAmount**](ScreeningTRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**action** | **TRLinkPreScreeningActionEnum** | | | + + + diff --git a/docs/ScreeningTRLinkRuleBase.md b/docs/ScreeningTRLinkRuleBase.md new file mode 100644 index 00000000..be671b55 --- /dev/null +++ b/docs/ScreeningTRLinkRuleBase.md @@ -0,0 +1,30 @@ + + +# ScreeningTRLinkRuleBase + +Base interface for TRLink policy rules + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**ScreeningTRLinkAmount**](ScreeningTRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | + + + diff --git a/docs/ScreeningTravelRuleMatchedRule.md b/docs/ScreeningTravelRuleMatchedRule.md new file mode 100644 index 00000000..cd704c6b --- /dev/null +++ b/docs/ScreeningTravelRuleMatchedRule.md @@ -0,0 +1,19 @@ + + +# ScreeningTravelRuleMatchedRule + +The travel rule configuration that was matched + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**status** | **TravelRuleStatusEnum** | | [optional] | +|**amountUSD** | **BigDecimal** | Amount in USD | [optional] | +|**amount** | **BigDecimal** | Amount in base currency | [optional] | +|**asset** | **String** | Asset identifier | [optional] | +|**action** | **TravelRuleVerdictEnum** | | [optional] | + + + diff --git a/docs/ScreeningTravelRulePrescreeningRule.md b/docs/ScreeningTravelRulePrescreeningRule.md new file mode 100644 index 00000000..53a04307 --- /dev/null +++ b/docs/ScreeningTravelRulePrescreeningRule.md @@ -0,0 +1,30 @@ + + +# ScreeningTravelRulePrescreeningRule + +Matched prescreening rule details. Prescreening rules are evaluated before the main screening to determine if screening is necessary or should be bypassed. + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**bypassReason** | **String** | Reason for bypass if prescreening rule triggered a bypass | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**transferPeerType** | **TransferPeerTypeEnum** | | [optional] | +|**transferPeerSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset identifier | [optional] | +|**baseAsset** | **String** | Base asset | [optional] | +|**amount** | **BigDecimal** | Amount | [optional] | +|**amountUSD** | **BigDecimal** | Amount in USD | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**action** | **TravelRuleActionEnum** | | [optional] | + + + diff --git a/docs/ScreeningTravelRuleResult.md b/docs/ScreeningTravelRuleResult.md new file mode 100644 index 00000000..decc6b25 --- /dev/null +++ b/docs/ScreeningTravelRuleResult.md @@ -0,0 +1,18 @@ + + +# ScreeningTravelRuleResult + +Detailed Travel Rule screening result containing provider-specific data. Contains Travel Rule specific information like verified status, rule type, and actions. + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**isVerified** | **Boolean** | Whether the travel rule information was verified | [optional] | +|**action** | **TravelRuleVerdictEnum** | | [optional] | +|**providerResponse** | **Map<String, Object>** | Complete response from the travel rule provider. This is a dynamic object that varies significantly between different travel rule providers (NOTABENE etc.). Each provider has their own proprietary response format and schema. Examples of provider-specific structures: - NOTABENE: Contains VASP information, PII data, protocol-specific fields The structure is provider-dependent and cannot be standardized as each vendor implements their own proprietary data models and response formats. | [optional] | +|**matchedRule** | [**ScreeningTravelRuleMatchedRule**](ScreeningTravelRuleMatchedRule.md) | | [optional] | + + + diff --git a/docs/ScreeningVerdictEnum.md b/docs/ScreeningVerdictEnum.md new file mode 100644 index 00000000..5e706464 --- /dev/null +++ b/docs/ScreeningVerdictEnum.md @@ -0,0 +1,25 @@ + + +# ScreeningVerdictEnum + +## Enum + + +* `PASS` (value: `"PASS"`) + +* `FAIL` (value: `"FAIL"`) + +* `ALERT` (value: `"ALERT"`) + +* `REJECT` (value: `"REJECT"`) + +* `WARN` (value: `"WARN"`) + +* `TRAVEL_RULE_REQUIRED` (value: `"TRAVEL_RULE_REQUIRED"`) + +* `ACCEPT` (value: `"ACCEPT"`) + +* `REVIEW` (value: `"REVIEW"`) + + + diff --git a/docs/SourceConfig.md b/docs/SourceConfig.md new file mode 100644 index 00000000..35205ff3 --- /dev/null +++ b/docs/SourceConfig.md @@ -0,0 +1,27 @@ + + +# SourceConfig + +Source account configuration for policy rules + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | **List<AccountType2>** | Source account types | [optional] | +|**subType** | [**List<AccountIdentifier>**](AccountIdentifier.md) | Source account subtypes | [optional] | +|**ids** | [**List<AccountIdentifier>**](AccountIdentifier.md) | Source account identifiers | [optional] | +|**tags** | [**List<PolicyTag>**](PolicyTag.md) | Tags for source matching | [optional] | +|**operator** | **PolicyOperator** | | | +|**matchFrom** | [**MatchFromEnum**](#MatchFromEnum) | Whether to match from account (relevant only for ORDER policy type) | [optional] | + + + +## Enum: MatchFromEnum + +| Name | Value | +|---- | -----| +| ACCOUNT | "ACCOUNT" | + + + diff --git a/docs/SpeiAddress.md b/docs/SpeiAddress.md new file mode 100644 index 00000000..ee9166cf --- /dev/null +++ b/docs/SpeiAddress.md @@ -0,0 +1,15 @@ + + +# SpeiAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**bankName** | **String** | Name of the bank. | [optional] | +|**bankAccountNumber** | **String** | The bank account number for the SPEI transfer. | | + + + diff --git a/docs/SpeiDestination.md b/docs/SpeiDestination.md new file mode 100644 index 00000000..104e0d6a --- /dev/null +++ b/docs/SpeiDestination.md @@ -0,0 +1,22 @@ + + +# SpeiDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**SpeiAddress**](SpeiAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| SPEI | "SPEI" | + + + diff --git a/docs/SwiftAddress.md b/docs/SwiftAddress.md new file mode 100644 index 00000000..c753dc28 --- /dev/null +++ b/docs/SwiftAddress.md @@ -0,0 +1,15 @@ + + +# SwiftAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**swiftCode** | **String** | | | +|**routingNumber** | **String** | Routing number identifying the bank account. | | + + + diff --git a/docs/SwiftDestination.md b/docs/SwiftDestination.md new file mode 100644 index 00000000..ce7978d2 --- /dev/null +++ b/docs/SwiftDestination.md @@ -0,0 +1,22 @@ + + +# SwiftDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**SwiftAddress**](SwiftAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| SWIFT | "SWIFT" | + + + diff --git a/docs/TRLinkAmount.md b/docs/TRLinkAmount.md new file mode 100644 index 00000000..2cc639cc --- /dev/null +++ b/docs/TRLinkAmount.md @@ -0,0 +1,24 @@ + + +# TRLinkAmount + +TRLink amount definition with range and currency, compatible with TAP format from Policy Engine V2 + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**range** | [**AmountRangeMinMax**](AmountRangeMinMax.md) | | [optional] | +|**currency** | [**CurrencyEnum**](#CurrencyEnum) | Currency type | [optional] | + + + +## Enum: CurrencyEnum + +| Name | Value | +|---- | -----| +| USD | "USD" | +| NATIVE | "NATIVE" | + + + diff --git a/docs/TRLinkMissingTrmAction.md b/docs/TRLinkMissingTrmAction.md new file mode 100644 index 00000000..1df18a81 --- /dev/null +++ b/docs/TRLinkMissingTrmAction.md @@ -0,0 +1,17 @@ + + +# TRLinkMissingTrmAction + +## Enum + + +* `WAIT` (value: `"WAIT"`) + +* `REJECT` (value: `"REJECT"`) + +* `ACCEPT` (value: `"ACCEPT"`) + +* `INITIATE_TRM` (value: `"INITIATE_TRM"`) + + + diff --git a/docs/TRLinkMissingTrmActionEnum.md b/docs/TRLinkMissingTrmActionEnum.md new file mode 100644 index 00000000..660d0199 --- /dev/null +++ b/docs/TRLinkMissingTrmActionEnum.md @@ -0,0 +1,17 @@ + + +# TRLinkMissingTrmActionEnum + +## Enum + + +* `WAIT` (value: `"WAIT"`) + +* `REJECT` (value: `"REJECT"`) + +* `ACCEPT` (value: `"ACCEPT"`) + +* `INITIATE_TRM` (value: `"INITIATE_TRM"`) + + + diff --git a/docs/TRLinkMissingTrmDecision.md b/docs/TRLinkMissingTrmDecision.md new file mode 100644 index 00000000..c18487ef --- /dev/null +++ b/docs/TRLinkMissingTrmDecision.md @@ -0,0 +1,36 @@ + + +# TRLinkMissingTrmDecision + +Interface for reporting missing TRM screening decisions in ITRLinkResult + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TransactionDirection** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**TRLinkAmount**](TRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**validBefore** | **BigDecimal** | Unix timestamp when rule expires | [optional] | +|**validAfter** | **BigDecimal** | Unix timestamp when rule becomes valid | [optional] | +|**action** | **TRLinkMissingTrmAction** | | | +|**source** | **String** | TRLink missing TRM source | | +|**timestamp** | **OffsetDateTime** | Timestamp of the decision | [optional] | +|**reason** | **String** | Reason for the decision | [optional] | + + + diff --git a/docs/TRLinkMissingTrmRule.md b/docs/TRLinkMissingTrmRule.md new file mode 100644 index 00000000..941704ed --- /dev/null +++ b/docs/TRLinkMissingTrmRule.md @@ -0,0 +1,33 @@ + + +# TRLinkMissingTrmRule + +TRLink missing TRM rule definition + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TransactionDirection** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**TRLinkAmount**](TRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**validBefore** | **BigDecimal** | Unix timestamp when rule expires | [optional] | +|**validAfter** | **BigDecimal** | Unix timestamp when rule becomes valid | [optional] | +|**action** | **TRLinkMissingTrmAction** | | | + + + diff --git a/docs/TRLinkPostScreeningRule.md b/docs/TRLinkPostScreeningRule.md new file mode 100644 index 00000000..ab9ce39d --- /dev/null +++ b/docs/TRLinkPostScreeningRule.md @@ -0,0 +1,35 @@ + + +# TRLinkPostScreeningRule + +TRLink post-screening rule definition + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TransactionDirection** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**TRLinkAmount**](TRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**providerIdent** | **String** | Provider identifier | [optional] | +|**trmStatus** | **TRLinkTrmScreeningStatus** | | [optional] | +|**validBefore** | **BigDecimal** | Unix timestamp when rule expires | [optional] | +|**validAfter** | **BigDecimal** | Unix timestamp when rule becomes valid | [optional] | +|**action** | **TRLinkVerdict** | | | + + + diff --git a/docs/TRLinkPreScreeningAction.md b/docs/TRLinkPreScreeningAction.md new file mode 100644 index 00000000..eb0707b5 --- /dev/null +++ b/docs/TRLinkPreScreeningAction.md @@ -0,0 +1,13 @@ + + +# TRLinkPreScreeningAction + +## Enum + + +* `SCREEN` (value: `"SCREEN"`) + +* `PASS` (value: `"PASS"`) + + + diff --git a/docs/TRLinkPreScreeningActionEnum.md b/docs/TRLinkPreScreeningActionEnum.md new file mode 100644 index 00000000..fdf6481d --- /dev/null +++ b/docs/TRLinkPreScreeningActionEnum.md @@ -0,0 +1,13 @@ + + +# TRLinkPreScreeningActionEnum + +## Enum + + +* `SCREEN` (value: `"SCREEN"`) + +* `PASS` (value: `"PASS"`) + + + diff --git a/docs/TRLinkPreScreeningRule.md b/docs/TRLinkPreScreeningRule.md new file mode 100644 index 00000000..d5c6b858 --- /dev/null +++ b/docs/TRLinkPreScreeningRule.md @@ -0,0 +1,31 @@ + + +# TRLinkPreScreeningRule + +TRLink pre-screening rule definition + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TransactionDirection** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**TRLinkAmount**](TRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | +|**action** | **TRLinkPreScreeningAction** | | | + + + diff --git a/docs/TRLinkProviderResult.md b/docs/TRLinkProviderResult.md new file mode 100644 index 00000000..80cbe287 --- /dev/null +++ b/docs/TRLinkProviderResult.md @@ -0,0 +1,14 @@ + + +# TRLinkProviderResult + +Provider-specific response data wrapper + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**providerResponse** | **Object** | Raw provider response | [optional] | + + + diff --git a/docs/TRLinkProviderResultWithRule.md b/docs/TRLinkProviderResultWithRule.md new file mode 100644 index 00000000..847978f8 --- /dev/null +++ b/docs/TRLinkProviderResultWithRule.md @@ -0,0 +1,15 @@ + + +# TRLinkProviderResultWithRule + +Provider response and matched rule wrapper for TRLink screening results + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**providerResponse** | **Object** | Raw provider response | [optional] | +|**matchedRule** | [**TRLinkPostScreeningRule**](TRLinkPostScreeningRule.md) | | [optional] | + + + diff --git a/docs/TRLinkProviderResultWithRule2.md b/docs/TRLinkProviderResultWithRule2.md new file mode 100644 index 00000000..dafc0eb3 --- /dev/null +++ b/docs/TRLinkProviderResultWithRule2.md @@ -0,0 +1,15 @@ + + +# TRLinkProviderResultWithRule2 + +Provider response and matched rule wrapper for TRLink screening results + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**providerResponse** | **Object** | Raw provider response | [optional] | +|**matchedRule** | [**ScreeningTRLinkPostScreeningRule**](ScreeningTRLinkPostScreeningRule.md) | | [optional] | + + + diff --git a/docs/TRLinkRegistrationResult.md b/docs/TRLinkRegistrationResult.md new file mode 100644 index 00000000..92823b93 --- /dev/null +++ b/docs/TRLinkRegistrationResult.md @@ -0,0 +1,23 @@ + + +# TRLinkRegistrationResult + +TRLink registration result containing status and metadata + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**status** | **TRLinkRegistrationStatus** | | | +|**provider** | **String** | The TRLink provider name | [optional] | +|**success** | **Boolean** | Whether the registration was successful | [optional] | +|**timestamp** | **BigDecimal** | Unix timestamp of the registration | | +|**destRecordId** | **String** | Destination record identifier | [optional] | +|**travelRuleMessageId** | **String** | Travel rule message identifier for linking | [optional] | +|**customerIntegrationId** | **String** | Customer integration identifier | [optional] | +|**customerShortName** | **String** | Customer short name | [optional] | +|**result** | [**TRLinkProviderResult**](TRLinkProviderResult.md) | | [optional] | +|**matchedPrescreeningRule** | [**TRLinkPreScreeningRule**](TRLinkPreScreeningRule.md) | | [optional] | + + + diff --git a/docs/TRLinkRegistrationResultFullPayload.md b/docs/TRLinkRegistrationResultFullPayload.md new file mode 100644 index 00000000..3efb7a5b --- /dev/null +++ b/docs/TRLinkRegistrationResultFullPayload.md @@ -0,0 +1,23 @@ + + +# TRLinkRegistrationResultFullPayload + +TRLink registration result containing status and metadata + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**status** | **TRLinkRegistrationStatusEnum** | | | +|**provider** | **String** | The TRLink provider name | [optional] | +|**success** | **Boolean** | Whether the registration was successful | [optional] | +|**timestamp** | **BigDecimal** | Unix timestamp of the registration | | +|**destRecordId** | **String** | Destination record identifier | [optional] | +|**travelRuleMessageId** | **String** | Travel rule message identifier for linking | [optional] | +|**customerIntegrationId** | **String** | Customer integration identifier | [optional] | +|**customerShortName** | **String** | Customer short name | [optional] | +|**result** | [**TRLinkProviderResult**](TRLinkProviderResult.md) | | [optional] | +|**matchedPrescreeningRule** | [**ScreeningTRLinkPrescreeningRule**](ScreeningTRLinkPrescreeningRule.md) | | [optional] | + + + diff --git a/docs/TRLinkRegistrationStatus.md b/docs/TRLinkRegistrationStatus.md new file mode 100644 index 00000000..0f6a5710 --- /dev/null +++ b/docs/TRLinkRegistrationStatus.md @@ -0,0 +1,19 @@ + + +# TRLinkRegistrationStatus + +## Enum + + +* `STARTING` (value: `"STARTING"`) + +* `PRESCREENED` (value: `"PRESCREENED"`) + +* `COMPLETED` (value: `"COMPLETED"`) + +* `FAILED` (value: `"FAILED"`) + +* `VOID` (value: `"VOID"`) + + + diff --git a/docs/TRLinkRegistrationStatusEnum.md b/docs/TRLinkRegistrationStatusEnum.md new file mode 100644 index 00000000..70906989 --- /dev/null +++ b/docs/TRLinkRegistrationStatusEnum.md @@ -0,0 +1,19 @@ + + +# TRLinkRegistrationStatusEnum + +## Enum + + +* `STARTING` (value: `"STARTING"`) + +* `PRESCREENED` (value: `"PRESCREENED"`) + +* `COMPLETED` (value: `"COMPLETED"`) + +* `FAILED` (value: `"FAILED"`) + +* `VOID` (value: `"VOID"`) + + + diff --git a/docs/TRLinkResult.md b/docs/TRLinkResult.md new file mode 100644 index 00000000..e2c39615 --- /dev/null +++ b/docs/TRLinkResult.md @@ -0,0 +1,39 @@ + + +# TRLinkResult + +TRLink screening result + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**provider** | **String** | The TRLink provider name | | +|**timestamp** | **BigDecimal** | Unix timestamp of the screening result | | +|**status** | [**StatusEnum**](#StatusEnum) | Status of the TRLink screening | | +|**verdict** | **TRLinkVerdict** | | [optional] | +|**destAddress** | **String** | The destination address associated with the TRLink screening | [optional] | +|**destTag** | **String** | Destination tag for the screening | [optional] | +|**bypassReason** | **String** | Reason for bypassing the TRLink screening | [optional] | +|**detailsMessage** | **String** | Additional details message about the screening result | [optional] | +|**customerIntegrationId** | **String** | Customer integration identifier | [optional] | +|**customerShortName** | **String** | Customer short name | [optional] | +|**travelRuleMessageId** | **String** | Travel rule message identifier for linking | [optional] | +|**result** | [**TRLinkProviderResultWithRule**](TRLinkProviderResultWithRule.md) | | [optional] | +|**matchedPrescreeningRule** | [**TRLinkPreScreeningRule**](TRLinkPreScreeningRule.md) | | [optional] | +|**matchedNoTrmScreeningRule** | [**TRLinkMissingTrmDecision**](TRLinkMissingTrmDecision.md) | | [optional] | + + + +## Enum: StatusEnum + +| Name | Value | +|---- | -----| +| COMPLETED | "COMPLETED" | +| PENDING | "PENDING" | +| BYPASSED | "BYPASSED" | +| FAILED | "FAILED" | +| FROZEN | "FROZEN" | + + + diff --git a/docs/TRLinkResultFullPayload.md b/docs/TRLinkResultFullPayload.md new file mode 100644 index 00000000..a4226d62 --- /dev/null +++ b/docs/TRLinkResultFullPayload.md @@ -0,0 +1,39 @@ + + +# TRLinkResultFullPayload + +TRLink screening result + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**provider** | **String** | The TRLink provider name | | +|**timestamp** | **BigDecimal** | Unix timestamp of the screening result | | +|**status** | [**StatusEnum**](#StatusEnum) | Status of the TRLink screening | | +|**verdict** | **TRLinkVerdictEnum** | | [optional] | +|**destAddress** | **String** | The destination address associated with the TRLink screening | [optional] | +|**destTag** | **String** | Destination tag for the screening | [optional] | +|**bypassReason** | **String** | Reason for bypassing the TRLink screening | [optional] | +|**detailsMessage** | **String** | Additional details message about the screening result | [optional] | +|**customerIntegrationId** | **String** | Customer integration identifier | [optional] | +|**customerShortName** | **String** | Customer short name | [optional] | +|**travelRuleMessageId** | **String** | Travel rule message identifier for linking | [optional] | +|**result** | [**TRLinkProviderResultWithRule2**](TRLinkProviderResultWithRule2.md) | | [optional] | +|**matchedPrescreeningRule** | [**ScreeningTRLinkPrescreeningRule**](ScreeningTRLinkPrescreeningRule.md) | | [optional] | +|**matchedNoTrmScreeningRule** | [**ScreeningTRLinkMissingTrmDecision**](ScreeningTRLinkMissingTrmDecision.md) | | [optional] | + + + +## Enum: StatusEnum + +| Name | Value | +|---- | -----| +| COMPLETED | "COMPLETED" | +| PENDING | "PENDING" | +| BYPASSED | "BYPASSED" | +| FAILED | "FAILED" | +| FROZEN | "FROZEN" | + + + diff --git a/docs/TRLinkRuleBase.md b/docs/TRLinkRuleBase.md new file mode 100644 index 00000000..00145243 --- /dev/null +++ b/docs/TRLinkRuleBase.md @@ -0,0 +1,30 @@ + + +# TRLinkRuleBase + +Base interface for TRLink policy rules + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**customerId** | **String** | Reference to TrlinkCustomer.id | [optional] | +|**direction** | **TransactionDirection** | | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**sourceAddress** | **String** | Source address | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset symbol | [optional] | +|**baseAsset** | **String** | Base asset symbol | [optional] | +|**amount** | [**TRLinkAmount**](TRLinkAmount.md) | | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**description** | **String** | Rule description | [optional] | +|**isDefault** | **Boolean** | Whether this is a default rule | [optional] | + + + diff --git a/docs/TRLinkTrmScreeningStatus.md b/docs/TRLinkTrmScreeningStatus.md new file mode 100644 index 00000000..028d5fc9 --- /dev/null +++ b/docs/TRLinkTrmScreeningStatus.md @@ -0,0 +1,17 @@ + + +# TRLinkTrmScreeningStatus + +## Enum + + +* `PENDING` (value: `"PENDING"`) + +* `ACCEPTED` (value: `"ACCEPTED"`) + +* `REJECTED` (value: `"REJECTED"`) + +* `FAILED` (value: `"FAILED"`) + + + diff --git a/docs/TRLinkTrmScreeningStatusEnum.md b/docs/TRLinkTrmScreeningStatusEnum.md new file mode 100644 index 00000000..a375531a --- /dev/null +++ b/docs/TRLinkTrmScreeningStatusEnum.md @@ -0,0 +1,17 @@ + + +# TRLinkTrmScreeningStatusEnum + +## Enum + + +* `PENDING` (value: `"PENDING"`) + +* `ACCEPTED` (value: `"ACCEPTED"`) + +* `REJECTED` (value: `"REJECTED"`) + +* `FAILED` (value: `"FAILED"`) + + + diff --git a/docs/TRLinkVerdict.md b/docs/TRLinkVerdict.md new file mode 100644 index 00000000..96633e7c --- /dev/null +++ b/docs/TRLinkVerdict.md @@ -0,0 +1,17 @@ + + +# TRLinkVerdict + +## Enum + + +* `ACCEPT` (value: `"ACCEPT"`) + +* `ALERT` (value: `"ALERT"`) + +* `REJECT` (value: `"REJECT"`) + +* `WAIT` (value: `"WAIT"`) + + + diff --git a/docs/TRLinkVerdictEnum.md b/docs/TRLinkVerdictEnum.md new file mode 100644 index 00000000..32eb34de --- /dev/null +++ b/docs/TRLinkVerdictEnum.md @@ -0,0 +1,17 @@ + + +# TRLinkVerdictEnum + +## Enum + + +* `ACCEPT` (value: `"ACCEPT"`) + +* `ALERT` (value: `"ALERT"`) + +* `REJECT` (value: `"REJECT"`) + +* `WAIT` (value: `"WAIT"`) + + + diff --git a/docs/Tag.md b/docs/Tag.md index 37da981b..70b46f84 100644 --- a/docs/Tag.md +++ b/docs/Tag.md @@ -10,6 +10,9 @@ |**id** | **UUID** | The unique identifier of the tag | | |**label** | **String** | The tag label | | |**description** | **String** | Description for the tag | [optional] | +|**isProtected** | **Boolean** | Whether the tag is protected | [optional] | +|**color** | **String** | The color of the tag in hex format | [optional] | +|**updatedAt** | **String** | The date and time the tag was last updated | [optional] | diff --git a/docs/TagAttachmentOperationAction.md b/docs/TagAttachmentOperationAction.md new file mode 100644 index 00000000..081208b5 --- /dev/null +++ b/docs/TagAttachmentOperationAction.md @@ -0,0 +1,13 @@ + + +# TagAttachmentOperationAction + +## Enum + + +* `ATTACH` (value: `"ATTACH"`) + +* `DETACH` (value: `"DETACH"`) + + + diff --git a/docs/TransactionDirection.md b/docs/TransactionDirection.md new file mode 100644 index 00000000..79f48154 --- /dev/null +++ b/docs/TransactionDirection.md @@ -0,0 +1,13 @@ + + +# TransactionDirection + +## Enum + + +* `INBOUND` (value: `"INBOUND"`) + +* `OUTBOUND` (value: `"OUTBOUND"`) + + + diff --git a/docs/TransactionOperationEnum.md b/docs/TransactionOperationEnum.md new file mode 100644 index 00000000..d0172eac --- /dev/null +++ b/docs/TransactionOperationEnum.md @@ -0,0 +1,37 @@ + + +# TransactionOperationEnum + +## Enum + + +* `TRANSFER` (value: `"TRANSFER"`) + +* `BURN` (value: `"BURN"`) + +* `CONTRACT_CALL` (value: `"CONTRACT_CALL"`) + +* `MINT` (value: `"MINT"`) + +* `RAW` (value: `"RAW"`) + +* `TYPED_MESSAGE` (value: `"TYPED_MESSAGE"`) + +* `ENABLE_ASSET` (value: `"ENABLE_ASSET"`) + +* `STAKE` (value: `"STAKE"`) + +* `UNSTAKE` (value: `"UNSTAKE"`) + +* `WITHDRAW` (value: `"WITHDRAW"`) + +* `REDEEM_FROM_COMPOUND` (value: `"REDEEM_FROM_COMPOUND"`) + +* `SUPPLY_TO_COMPOUND` (value: `"SUPPLY_TO_COMPOUND"`) + +* `PROGRAM_CALL` (value: `"PROGRAM_CALL"`) + +* `APPROVE` (value: `"APPROVE"`) + + + diff --git a/docs/TransactionsApi.md b/docs/TransactionsApi.md index d12e595c..9ab51abb 100644 --- a/docs/TransactionsApi.md +++ b/docs/TransactionsApi.md @@ -707,7 +707,7 @@ No authorization required ## getTransactions -> CompletableFuture>> getTransactions getTransactions(before, after, status, orderBy, sort, limit, sourceType, sourceId, destType, destId, assets, txHash, sourceWalletId, destWalletId) +> CompletableFuture>> getTransactions getTransactions(next, prev, before, after, status, orderBy, sort, limit, sourceType, sourceId, destType, destId, assets, txHash, sourceWalletId, destWalletId) List transaction history @@ -736,6 +736,8 @@ public class Example { .secretKey("my-secret-key"); Fireblocks fireblocks = new Fireblocks(configurationOptions); + String next = "next_example"; // String | Cursor returned in next-page header that can be used to fetch the next page of results + String prev = "prev_example"; // String | Cursor returned in prev-page header that can be used to fetch the previous page of results String before = "before_example"; // String | Unix timestamp in milliseconds. Returns only transactions created before the specified date String after = "after_example"; // String | Unix timestamp in milliseconds. Returns only transactions created after the specified date String status = "status_example"; // String | You can filter by one of the statuses. @@ -751,7 +753,7 @@ public class Example { String sourceWalletId = "sourceWalletId_example"; // String | Returns only results where the source is a specific end user wallet String destWalletId = "destWalletId_example"; // String | Returns only results where the destination is a specific end user wallet try { - CompletableFuture>> response = fireblocks.transactions().getTransactions(before, after, status, orderBy, sort, limit, sourceType, sourceId, destType, destId, assets, txHash, sourceWalletId, destWalletId); + CompletableFuture>> response = fireblocks.transactions().getTransactions(next, prev, before, after, status, orderBy, sort, limit, sourceType, sourceId, destType, destId, assets, txHash, sourceWalletId, destWalletId); System.out.println("Status code: " + response.get().getStatusCode()); System.out.println("Response headers: " + response.get().getHeaders()); System.out.println("Response body: " + response.get().getData()); @@ -778,6 +780,8 @@ public class Example { | Name | Type | Description | Notes | |------------- | ------------- | ------------- | -------------| +| **next** | **String**| Cursor returned in next-page header that can be used to fetch the next page of results | [optional] | +| **prev** | **String**| Cursor returned in prev-page header that can be used to fetch the previous page of results | [optional] | | **before** | **String**| Unix timestamp in milliseconds. Returns only transactions created before the specified date | [optional] | | **after** | **String**| Unix timestamp in milliseconds. Returns only transactions created after the specified date | [optional] | | **status** | **String**| You can filter by one of the statuses. | [optional] | diff --git a/docs/TransferPeerSubTypeEnum.md b/docs/TransferPeerSubTypeEnum.md new file mode 100644 index 00000000..ae97dca4 --- /dev/null +++ b/docs/TransferPeerSubTypeEnum.md @@ -0,0 +1,17 @@ + + +# TransferPeerSubTypeEnum + +## Enum + + +* `EXTERNAL` (value: `"EXTERNAL"`) + +* `INTERNAL` (value: `"INTERNAL"`) + +* `CONTRACT` (value: `"CONTRACT"`) + +* `EXCHANGETEST` (value: `"EXCHANGETEST"`) + + + diff --git a/docs/TransferPeerTypeEnum.md b/docs/TransferPeerTypeEnum.md new file mode 100644 index 00000000..5943f8b3 --- /dev/null +++ b/docs/TransferPeerTypeEnum.md @@ -0,0 +1,37 @@ + + +# TransferPeerTypeEnum + +## Enum + + +* `VAULT_ACCOUNT` (value: `"VAULT_ACCOUNT"`) + +* `EXCHANGE_ACCOUNT` (value: `"EXCHANGE_ACCOUNT"`) + +* `INTERNAL_WALLET` (value: `"INTERNAL_WALLET"`) + +* `EXTERNAL_WALLET` (value: `"EXTERNAL_WALLET"`) + +* `CONTRACT` (value: `"CONTRACT"`) + +* `NETWORK_CONNECTION` (value: `"NETWORK_CONNECTION"`) + +* `FIAT_ACCOUNT` (value: `"FIAT_ACCOUNT"`) + +* `COMPOUND` (value: `"COMPOUND"`) + +* `GAS_STATION` (value: `"GAS_STATION"`) + +* `ONE_TIME_ADDRESS` (value: `"ONE_TIME_ADDRESS"`) + +* `UNKNOWN` (value: `"UNKNOWN"`) + +* `END_USER_WALLET` (value: `"END_USER_WALLET"`) + +* `PROGRAM_CALL` (value: `"PROGRAM_CALL"`) + +* `MULTI_DESTINATION` (value: `"MULTI_DESTINATION"`) + + + diff --git a/docs/TravelRuleActionEnum.md b/docs/TravelRuleActionEnum.md new file mode 100644 index 00000000..89a4ff7a --- /dev/null +++ b/docs/TravelRuleActionEnum.md @@ -0,0 +1,15 @@ + + +# TravelRuleActionEnum + +## Enum + + +* `SCREEN` (value: `"SCREEN"`) + +* `BYPASS` (value: `"BYPASS"`) + +* `BLOCK` (value: `"BLOCK"`) + + + diff --git a/docs/TravelRuleDirectionEnum.md b/docs/TravelRuleDirectionEnum.md new file mode 100644 index 00000000..4ebdc055 --- /dev/null +++ b/docs/TravelRuleDirectionEnum.md @@ -0,0 +1,13 @@ + + +# TravelRuleDirectionEnum + +## Enum + + +* `INBOUND` (value: `"INBOUND"`) + +* `OUTBOUND` (value: `"OUTBOUND"`) + + + diff --git a/docs/TravelRuleMatchedRule.md b/docs/TravelRuleMatchedRule.md new file mode 100644 index 00000000..ce431c12 --- /dev/null +++ b/docs/TravelRuleMatchedRule.md @@ -0,0 +1,19 @@ + + +# TravelRuleMatchedRule + +The travel rule configuration that was matched + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**status** | **TravelRuleStatusEnum** | | [optional] | +|**amountUSD** | **BigDecimal** | Amount in USD | [optional] | +|**amount** | **BigDecimal** | Amount in base currency | [optional] | +|**asset** | **String** | Asset identifier | [optional] | +|**action** | **TravelRuleVerdictEnum** | | [optional] | + + + diff --git a/docs/TravelRulePrescreeningRule.md b/docs/TravelRulePrescreeningRule.md new file mode 100644 index 00000000..4aba19db --- /dev/null +++ b/docs/TravelRulePrescreeningRule.md @@ -0,0 +1,30 @@ + + +# TravelRulePrescreeningRule + +Matched prescreening rule details. Prescreening rules are evaluated before the main screening to determine if screening is necessary or should be bypassed. + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**bypassReason** | **String** | Reason for bypass if prescreening rule triggered a bypass | [optional] | +|**sourceType** | **TransferPeerTypeEnum** | | [optional] | +|**sourceSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destType** | **TransferPeerTypeEnum** | | [optional] | +|**destSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**transferPeerType** | **TransferPeerTypeEnum** | | [optional] | +|**transferPeerSubType** | **TransferPeerSubTypeEnum** | | [optional] | +|**destAddress** | **String** | Destination address | [optional] | +|**sourceId** | **String** | Source ID | [optional] | +|**destId** | **String** | Destination ID | [optional] | +|**asset** | **String** | Asset identifier | [optional] | +|**baseAsset** | **String** | Base asset | [optional] | +|**amount** | **BigDecimal** | Amount | [optional] | +|**amountUSD** | **BigDecimal** | Amount in USD | [optional] | +|**networkProtocol** | **String** | Network protocol | [optional] | +|**operation** | **TransactionOperationEnum** | | [optional] | +|**action** | **TravelRuleActionEnum** | | [optional] | + + + diff --git a/docs/TravelRuleResult.md b/docs/TravelRuleResult.md new file mode 100644 index 00000000..57ce8168 --- /dev/null +++ b/docs/TravelRuleResult.md @@ -0,0 +1,18 @@ + + +# TravelRuleResult + +Detailed Travel Rule screening result containing provider-specific data. Contains Travel Rule specific information like verified status, rule type, and actions. + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**direction** | **TravelRuleDirectionEnum** | | [optional] | +|**isVerified** | **Boolean** | Whether the travel rule information was verified | [optional] | +|**action** | **TravelRuleVerdictEnum** | | [optional] | +|**providerResponse** | **Map<String, Object>** | Complete response from the travel rule provider. This is a dynamic object that varies significantly between different travel rule providers (NOTABENE etc.). Each provider has their own proprietary response format and schema. Examples of provider-specific structures: - NOTABENE: Contains VASP information, PII data, protocol-specific fields The structure is provider-dependent and cannot be standardized as each vendor implements their own proprietary data models and response formats. | [optional] | +|**matchedRule** | [**TravelRuleMatchedRule**](TravelRuleMatchedRule.md) | | [optional] | + + + diff --git a/docs/TravelRuleStatusEnum.md b/docs/TravelRuleStatusEnum.md new file mode 100644 index 00000000..fad0c492 --- /dev/null +++ b/docs/TravelRuleStatusEnum.md @@ -0,0 +1,19 @@ + + +# TravelRuleStatusEnum + +## Enum + + +* `COMPLETED` (value: `"COMPLETED"`) + +* `PENDING` (value: `"PENDING"`) + +* `BYPASSED` (value: `"BYPASSED"`) + +* `FAILED` (value: `"FAILED"`) + +* `FROZEN` (value: `"FROZEN"`) + + + diff --git a/docs/TravelRuleVerdictEnum.md b/docs/TravelRuleVerdictEnum.md new file mode 100644 index 00000000..347f4b74 --- /dev/null +++ b/docs/TravelRuleVerdictEnum.md @@ -0,0 +1,17 @@ + + +# TravelRuleVerdictEnum + +## Enum + + +* `ACCEPT` (value: `"ACCEPT"`) + +* `REJECT` (value: `"REJECT"`) + +* `ALERT` (value: `"ALERT"`) + +* `REVIEW` (value: `"REVIEW"`) + + + diff --git a/docs/USWireAddress.md b/docs/USWireAddress.md new file mode 100644 index 00000000..ad64f3ef --- /dev/null +++ b/docs/USWireAddress.md @@ -0,0 +1,17 @@ + + +# USWireAddress + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**accountHolder** | [**AccountHolderDetails**](AccountHolderDetails.md) | | | +|**bankName** | **String** | Name of the bank. | [optional] | +|**bankAccountNumber** | **String** | The bank account number for the wire transfer. | | +|**routingNumber** | **String** | Routing number identifying the bank account. | | +|**bankAddress** | **String** | Address of the bank. | [optional] | + + + diff --git a/docs/USWireDestination.md b/docs/USWireDestination.md new file mode 100644 index 00000000..5b29dd35 --- /dev/null +++ b/docs/USWireDestination.md @@ -0,0 +1,22 @@ + + +# USWireDestination + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**type** | [**TypeEnum**](#TypeEnum) | | | +|**address** | [**USWireAddress**](USWireAddress.md) | | | + + + +## Enum: TypeEnum + +| Name | Value | +|---- | -----| +| US_WIRE | "US_WIRE" | + + + diff --git a/docs/VaultAccountTagAttachmentOperation.md b/docs/VaultAccountTagAttachmentOperation.md new file mode 100644 index 00000000..dd52c938 --- /dev/null +++ b/docs/VaultAccountTagAttachmentOperation.md @@ -0,0 +1,15 @@ + + +# VaultAccountTagAttachmentOperation + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**vaultAccountId** | **String** | The ID of the vault account | | +|**tagId** | **UUID** | Tag ID | | +|**action** | **TagAttachmentOperationAction** | | | + + + diff --git a/docs/VaultAccountTagAttachmentPendingOperation.md b/docs/VaultAccountTagAttachmentPendingOperation.md new file mode 100644 index 00000000..b548882e --- /dev/null +++ b/docs/VaultAccountTagAttachmentPendingOperation.md @@ -0,0 +1,16 @@ + + +# VaultAccountTagAttachmentPendingOperation + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**vaultAccountId** | **String** | The ID of the vault account | | +|**tagId** | **UUID** | Tag ID | | +|**action** | **TagAttachmentOperationAction** | | | +|**approvalRequestId** | **String** | Pending approval request ID | | + + + diff --git a/docs/VaultAccountTagAttachmentRejectedOperation.md b/docs/VaultAccountTagAttachmentRejectedOperation.md new file mode 100644 index 00000000..f6e3f542 --- /dev/null +++ b/docs/VaultAccountTagAttachmentRejectedOperation.md @@ -0,0 +1,27 @@ + + +# VaultAccountTagAttachmentRejectedOperation + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**vaultAccountId** | **String** | The ID of the vault account | | +|**tagId** | **UUID** | Tag ID | | +|**action** | **TagAttachmentOperationAction** | | | +|**reason** | [**ReasonEnum**](#ReasonEnum) | Reason for rejection | | + + + +## Enum: ReasonEnum + +| Name | Value | +|---- | -----| +| CAPACITY_EXCEEDED | "CAPACITY_EXCEEDED" | +| ATTACHMENT_ALREADY_EXISTS | "ATTACHMENT_ALREADY_EXISTS" | +| ATTACHMENT_DOES_NOT_EXIST | "ATTACHMENT_DOES_NOT_EXIST" | +| PENDING_REQUEST_EXISTS | "PENDING_REQUEST_EXISTS" | + + + diff --git a/docs/VaultAccountsTagAttachmentOperationsRequest.md b/docs/VaultAccountsTagAttachmentOperationsRequest.md new file mode 100644 index 00000000..6f683ab5 --- /dev/null +++ b/docs/VaultAccountsTagAttachmentOperationsRequest.md @@ -0,0 +1,15 @@ + + +# VaultAccountsTagAttachmentOperationsRequest + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**vaultAccountIds** | **List<String>** | The IDs of the vault accounts to attach tags to | | +|**tagIdsToAttach** | **List<UUID>** | The IDs of the tags to attach | [optional] | +|**tagIdsToDetach** | **List<UUID>** | The IDs of the tags to detach | [optional] | + + + diff --git a/docs/VaultAccountsTagAttachmentOperationsResponse.md b/docs/VaultAccountsTagAttachmentOperationsResponse.md new file mode 100644 index 00000000..917e5577 --- /dev/null +++ b/docs/VaultAccountsTagAttachmentOperationsResponse.md @@ -0,0 +1,15 @@ + + +# VaultAccountsTagAttachmentOperationsResponse + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**appliedOperations** | [**List<VaultAccountTagAttachmentOperation>**](VaultAccountTagAttachmentOperation.md) | The operations that were applied | [optional] | +|**pendingOperations** | [**List<VaultAccountTagAttachmentPendingOperation>**](VaultAccountTagAttachmentPendingOperation.md) | The operations that are pending | [optional] | +|**rejectedOperations** | [**List<VaultAccountTagAttachmentRejectedOperation>**](VaultAccountTagAttachmentRejectedOperation.md) | The operations that were rejected | [optional] | + + + diff --git a/docs/VaultsApi.md b/docs/VaultsApi.md index ac66e665..114fea37 100644 --- a/docs/VaultsApi.md +++ b/docs/VaultsApi.md @@ -5,14 +5,15 @@ All URIs are relative to https://developers.fireblocks.com/reference/ | Method | HTTP request | Description | |------------- | ------------- | -------------| | [**activateAssetForVaultAccount**](VaultsApi.md#activateAssetForVaultAccount) | **POST** /vault/accounts/{vaultAccountId}/{assetId}/activate | Activate a wallet in a vault account | -| [**attachTagsToVaultAccounts**](VaultsApi.md#attachTagsToVaultAccounts) | **POST** /vault/accounts/attached_tags/attach | Attach tags to a vault accounts | +| [**attachOrDetachTagsFromVaultAccounts**](VaultsApi.md#attachOrDetachTagsFromVaultAccounts) | **POST** /vault/accounts/attached_tags | Attach or detach tags from a vault accounts | +| [**attachTagsToVaultAccounts**](VaultsApi.md#attachTagsToVaultAccounts) | **POST** /vault/accounts/attached_tags/attach | Attach tags to a vault accounts (deprecated) | | [**createLegacyAddress**](VaultsApi.md#createLegacyAddress) | **POST** /vault/accounts/{vaultAccountId}/{assetId}/addresses/{addressId}/create_legacy | Convert a segwit address to legacy format | | [**createMultipleAccounts**](VaultsApi.md#createMultipleAccounts) | **POST** /vault/accounts/bulk | Bulk creation of new vault accounts | | [**createMultipleDepositAddresses**](VaultsApi.md#createMultipleDepositAddresses) | **POST** /vault/accounts/addresses/bulk | Bulk creation of new deposit addresses | | [**createVaultAccount**](VaultsApi.md#createVaultAccount) | **POST** /vault/accounts | Create a new vault account | | [**createVaultAccountAsset**](VaultsApi.md#createVaultAccountAsset) | **POST** /vault/accounts/{vaultAccountId}/{assetId} | Create a new wallet | | [**createVaultAccountAssetAddress**](VaultsApi.md#createVaultAccountAssetAddress) | **POST** /vault/accounts/{vaultAccountId}/{assetId}/addresses | Create new asset deposit address | -| [**detachTagsFromVaultAccounts**](VaultsApi.md#detachTagsFromVaultAccounts) | **POST** /vault/accounts/attached_tags/detach | Detach tags from a vault accounts | +| [**detachTagsFromVaultAccounts**](VaultsApi.md#detachTagsFromVaultAccounts) | **POST** /vault/accounts/attached_tags/detach | Detach tags from a vault accounts (deprecated) | | [**getAssetWallets**](VaultsApi.md#getAssetWallets) | **GET** /vault/asset_wallets | List asset wallets (Paginated) | | [**getCreateMultipleDepositAddressesJobStatus**](VaultsApi.md#getCreateMultipleDepositAddressesJobStatus) | **GET** /vault/accounts/addresses/bulk/{jobId} | Get job status of bulk creation of new deposit addresses | | [**getCreateMultipleVaultAccountsJobStatus**](VaultsApi.md#getCreateMultipleVaultAccountsJobStatus) | **GET** /vault/accounts/bulk/{jobId} | Get job status of bulk creation of new vault accounts | @@ -124,13 +125,99 @@ No authorization required | **0** | Error Response | * X-Request-ID -
| +## attachOrDetachTagsFromVaultAccounts + +> CompletableFuture> attachOrDetachTagsFromVaultAccounts attachOrDetachTagsFromVaultAccounts(vaultAccountsTagAttachmentOperationsRequest, idempotencyKey) + +Attach or detach tags from a vault accounts + +Attach or detach one or more tags from the requested vault accounts. + +### Example + +```java +// Import classes: +import com.fireblocks.sdk.ApiClient; +import com.fireblocks.sdk.ApiException; +import com.fireblocks.sdk.ApiResponse; +import com.fireblocks.sdk.BasePath; +import com.fireblocks.sdk.Fireblocks; +import com.fireblocks.sdk.ConfigurationOptions; +import com.fireblocks.sdk.model.*; +import com.fireblocks.sdk.api.VaultsApi; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutionException; + +public class Example { + public static void main(String[] args) { + ConfigurationOptions configurationOptions = new ConfigurationOptions() + .basePath(BasePath.Sandbox) + .apiKey("my-api-key") + .secretKey("my-secret-key"); + Fireblocks fireblocks = new Fireblocks(configurationOptions); + + VaultAccountsTagAttachmentOperationsRequest vaultAccountsTagAttachmentOperationsRequest = new VaultAccountsTagAttachmentOperationsRequest(); // VaultAccountsTagAttachmentOperationsRequest | + String idempotencyKey = "idempotencyKey_example"; // 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. + try { + CompletableFuture> response = fireblocks.vaults().attachOrDetachTagsFromVaultAccounts(vaultAccountsTagAttachmentOperationsRequest, idempotencyKey); + System.out.println("Status code: " + response.get().getStatusCode()); + System.out.println("Response headers: " + response.get().getHeaders()); + System.out.println("Response body: " + response.get().getData()); + } catch (InterruptedException | ExecutionException e) { + ApiException apiException = (ApiException)e.getCause(); + System.err.println("Exception when calling VaultsApi#attachOrDetachTagsFromVaultAccounts"); + System.err.println("Status code: " + apiException.getCode()); + System.err.println("Response headers: " + apiException.getResponseHeaders()); + System.err.println("Reason: " + apiException.getResponseBody()); + e.printStackTrace(); + } catch (ApiException e) { + System.err.println("Exception when calling VaultsApi#attachOrDetachTagsFromVaultAccounts"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **vaultAccountsTagAttachmentOperationsRequest** | [**VaultAccountsTagAttachmentOperationsRequest**](VaultAccountsTagAttachmentOperationsRequest.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] | + +### Return type + +CompletableFuture> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: application/json +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Tags were attached/detached successfully | * X-Request-ID -
| +| **400** | - Invalid request parameters. - Same tag ID is provided in both tagIdsToAttach and tagIdsToDetach. - Vault accounts are archived. | * X-Request-ID -
| +| **404** | - Tags with the requested ID not found. - Vault accounts with the requested ID not found. | * X-Request-ID -
| + + ## attachTagsToVaultAccounts > CompletableFuture> attachTagsToVaultAccounts attachTagsToVaultAccounts(vaultAccountsTagAttachmentsRequest, idempotencyKey) -Attach tags to a vault accounts +Attach tags to a vault accounts (deprecated) -Attach one or more tags to the requested vault accounts. +Attach one or more tags to the requested vault accounts. This endpoint is deprecated. Please use /vault/accounts/attached_tags instead. ### Example @@ -733,9 +820,9 @@ No authorization required > CompletableFuture> detachTagsFromVaultAccounts detachTagsFromVaultAccounts(vaultAccountsTagAttachmentsRequest, idempotencyKey) -Detach tags from a vault accounts +Detach tags from a vault accounts (deprecated) -Detach one or more tags from the requested vault account. +Detach one or more tags from the requested vault account. This endpoint is deprecated. Please use /vault/accounts/attached_tags instead. ### Example diff --git a/docs/WebhookMetric.md b/docs/WebhookMetric.md new file mode 100644 index 00000000..67cf1f4b --- /dev/null +++ b/docs/WebhookMetric.md @@ -0,0 +1,13 @@ + + +# WebhookMetric + + +## Properties + +| Name | Type | Description | Notes | +|------------ | ------------- | ------------- | -------------| +|**value** | **String** | The value of the metric | | + + + diff --git a/docs/WebhooksV2Api.md b/docs/WebhooksV2Api.md index 8f222c1e..68a908ba 100644 --- a/docs/WebhooksV2Api.md +++ b/docs/WebhooksV2Api.md @@ -6,6 +6,7 @@ All URIs are relative to https://developers.fireblocks.com/reference/ |------------- | ------------- | -------------| | [**createWebhook**](WebhooksV2Api.md#createWebhook) | **POST** /webhooks | Create new webhook | | [**deleteWebhook**](WebhooksV2Api.md#deleteWebhook) | **DELETE** /webhooks/{webhookId} | Delete webhook | +| [**getMetrics**](WebhooksV2Api.md#getMetrics) | **GET** /webhooks/{webhookId}/metrics/{metricName} | Get webhook metrics | | [**getNotification**](WebhooksV2Api.md#getNotification) | **GET** /webhooks/{webhookId}/notifications/{notificationId} | Get notification by id | | [**getNotificationAttempts**](WebhooksV2Api.md#getNotificationAttempts) | **GET** /webhooks/{webhookId}/notifications/{notificationId}/attempts | Get notification attempts | | [**getNotifications**](WebhooksV2Api.md#getNotifications) | **GET** /webhooks/{webhookId}/notifications | Get all notifications by webhook id | @@ -187,6 +188,91 @@ No authorization required | **0** | Error Response | * X-Request-ID -
| +## getMetrics + +> CompletableFuture> getMetrics getMetrics(webhookId, metricName) + +Get webhook metrics + +Get webhook metrics by webhook id and metric name + +### Example + +```java +// Import classes: +import com.fireblocks.sdk.ApiClient; +import com.fireblocks.sdk.ApiException; +import com.fireblocks.sdk.ApiResponse; +import com.fireblocks.sdk.BasePath; +import com.fireblocks.sdk.Fireblocks; +import com.fireblocks.sdk.ConfigurationOptions; +import com.fireblocks.sdk.model.*; +import com.fireblocks.sdk.api.WebhooksV2Api; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutionException; + +public class Example { + public static void main(String[] args) { + ConfigurationOptions configurationOptions = new ConfigurationOptions() + .basePath(BasePath.Sandbox) + .apiKey("my-api-key") + .secretKey("my-secret-key"); + Fireblocks fireblocks = new Fireblocks(configurationOptions); + + UUID webhookId = UUID.fromString("44fcead0-7053-4831-a53a-df7fb90d440f"); // UUID | + String metricName = "LAST_ACTIVE_HOUR_ERROR_RATE"; // String | Name of the metric to retrieve + try { + CompletableFuture> response = fireblocks.webhooksV2().getMetrics(webhookId, metricName); + System.out.println("Status code: " + response.get().getStatusCode()); + System.out.println("Response headers: " + response.get().getHeaders()); + System.out.println("Response body: " + response.get().getData()); + } catch (InterruptedException | ExecutionException e) { + ApiException apiException = (ApiException)e.getCause(); + System.err.println("Exception when calling WebhooksV2Api#getMetrics"); + System.err.println("Status code: " + apiException.getCode()); + System.err.println("Response headers: " + apiException.getResponseHeaders()); + System.err.println("Reason: " + apiException.getResponseBody()); + e.printStackTrace(); + } catch (ApiException e) { + System.err.println("Exception when calling WebhooksV2Api#getMetrics"); + System.err.println("Status code: " + e.getCode()); + System.err.println("Response headers: " + e.getResponseHeaders()); + System.err.println("Reason: " + e.getResponseBody()); + e.printStackTrace(); + } + } +} +``` + +### Parameters + + +| Name | Type | Description | Notes | +|------------- | ------------- | ------------- | -------------| +| **webhookId** | **UUID**| | | +| **metricName** | **String**| Name of the metric to retrieve | [enum: LAST_ACTIVE_HOUR_ERROR_RATE] | + +### Return type + +CompletableFuture> + + +### Authorization + +No authorization required + +### HTTP request headers + +- **Content-Type**: Not defined +- **Accept**: application/json + +### HTTP response details +| Status code | Description | Response headers | +|-------------|-------------|------------------| +| **200** | Webhook metrics | * X-Request-ID -
| +| **0** | Error Response | * X-Request-ID -
| + + ## getNotification > CompletableFuture> getNotification getNotification(webhookId, notificationId, includeData) diff --git a/pom.xml b/pom.xml index 1fc1ae1e..89176ce6 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ fireblocks-sdk jar fireblocks-sdk - 12.1.3 + 0.0.0 https://github.com/fireblocks/java-sdk The Fireblocks Official SDK is a comprehensive software development kit that enables seamless integration and interaction with the Fireblocks platform. Fireblocks is a cutting-edge blockchain infrastructure platform that provides secure and scalable solutions for managing digital assets and transactions. This SDK empowers developers to build robust applications that can interact with the Fireblocks platform's features, including creating and managing vault accounts, initiating secure transactions, managing assets, and more. It abstracts complex interactions with the Fireblocks API, making it easier for developers to leverage the platform's capabilities while adhering to best practices in security and efficiency. diff --git a/src/main/java/com/fireblocks/sdk/Configuration.java b/src/main/java/com/fireblocks/sdk/Configuration.java index a8997343..19e09ed9 100644 --- a/src/main/java/com/fireblocks/sdk/Configuration.java +++ b/src/main/java/com/fireblocks/sdk/Configuration.java @@ -21,7 +21,7 @@ value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class Configuration { - public static final String VERSION = "12.1.3"; + public static final String VERSION = "0.0.0"; private static final AtomicReference defaultApiClient = new AtomicReference<>(); private static volatile Supplier apiClientFactory = ApiClient::new; diff --git a/src/main/java/com/fireblocks/sdk/api/BlockchainsAssetsApi.java b/src/main/java/com/fireblocks/sdk/api/BlockchainsAssetsApi.java index eeb1c221..1d2e17c9 100644 --- a/src/main/java/com/fireblocks/sdk/api/BlockchainsAssetsApi.java +++ b/src/main/java/com/fireblocks/sdk/api/BlockchainsAssetsApi.java @@ -539,7 +539,7 @@ private HttpRequest.Builder listBlockchainsRequestBuilder( /** * Register an asset Register a new asset to a workspace and return the newly created * asset's details. Currently supported chains are: - EVM based chains - Stellar - Algorand - * - TRON - NEAR - Solana + * - TRON - NEAR - Solana - Sui * * @param registerNewAssetRequest (optional) * @param idempotencyKey A unique identifier for the request. If the request is sent multiple diff --git a/src/main/java/com/fireblocks/sdk/api/TransactionsApi.java b/src/main/java/com/fireblocks/sdk/api/TransactionsApi.java index 27eb33d4..2893dd10 100644 --- a/src/main/java/com/fireblocks/sdk/api/TransactionsApi.java +++ b/src/main/java/com/fireblocks/sdk/api/TransactionsApi.java @@ -726,6 +726,10 @@ private HttpRequest.Builder getTransactionByExternalIdRequestBuilder(String exte /** * List transaction history Lists the transaction history for your workspace. * + * @param next Cursor returned in next-page header that can be used to fetch the next page of + * results (optional) + * @param prev Cursor returned in prev-page header that can be used to fetch the previous page + * of results (optional) * @param before Unix timestamp in milliseconds. Returns only transactions created before the * specified date (optional) * @param after Unix timestamp in milliseconds. Returns only transactions created after the @@ -751,6 +755,8 @@ private HttpRequest.Builder getTransactionByExternalIdRequestBuilder(String exte * @throws ApiException if fails to make API call */ public CompletableFuture>> getTransactions( + String next, + String prev, String before, String after, String status, @@ -769,6 +775,8 @@ public CompletableFuture>> getTransactions try { HttpRequest.Builder localVarRequestBuilder = getTransactionsRequestBuilder( + next, + prev, before, after, status, @@ -817,6 +825,8 @@ public CompletableFuture>> getTransactions } private HttpRequest.Builder getTransactionsRequestBuilder( + String next, + String prev, String before, String after, String status, @@ -840,6 +850,10 @@ private HttpRequest.Builder getTransactionsRequestBuilder( List localVarQueryParams = new ArrayList<>(); StringJoiner localVarQueryStringJoiner = new StringJoiner("&"); String localVarQueryParameterBaseName; + localVarQueryParameterBaseName = "next"; + localVarQueryParams.addAll(ApiClient.parameterToPairs("next", next)); + localVarQueryParameterBaseName = "prev"; + localVarQueryParams.addAll(ApiClient.parameterToPairs("prev", prev)); localVarQueryParameterBaseName = "before"; localVarQueryParams.addAll(ApiClient.parameterToPairs("before", before)); localVarQueryParameterBaseName = "after"; diff --git a/src/main/java/com/fireblocks/sdk/api/VaultsApi.java b/src/main/java/com/fireblocks/sdk/api/VaultsApi.java index 880c80fb..fcfd90cc 100644 --- a/src/main/java/com/fireblocks/sdk/api/VaultsApi.java +++ b/src/main/java/com/fireblocks/sdk/api/VaultsApi.java @@ -43,6 +43,8 @@ import com.fireblocks.sdk.model.UpdateVaultAccountRequest; import com.fireblocks.sdk.model.VaultAccount; import com.fireblocks.sdk.model.VaultAccountsPagedResponse; +import com.fireblocks.sdk.model.VaultAccountsTagAttachmentOperationsRequest; +import com.fireblocks.sdk.model.VaultAccountsTagAttachmentOperationsResponse; import com.fireblocks.sdk.model.VaultAccountsTagAttachmentsRequest; import com.fireblocks.sdk.model.VaultActionStatus; import com.fireblocks.sdk.model.VaultAsset; @@ -184,7 +186,103 @@ private HttpRequest.Builder activateAssetForVaultAccountRequestBuilder( return localVarRequestBuilder; } /** - * Attach tags to a vault accounts Attach one or more tags to the requested vault accounts. + * Attach or detach tags from a vault accounts Attach or detach one or more tags from the + * requested vault accounts. + * + * @param vaultAccountsTagAttachmentOperationsRequest (required) + * @param 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. (optional) + * @return + * CompletableFuture<ApiResponse<VaultAccountsTagAttachmentOperationsResponse>> + * @throws ApiException if fails to make API call + */ + public CompletableFuture> + attachOrDetachTagsFromVaultAccounts( + VaultAccountsTagAttachmentOperationsRequest + vaultAccountsTagAttachmentOperationsRequest, + String idempotencyKey) + throws ApiException { + try { + HttpRequest.Builder localVarRequestBuilder = + attachOrDetachTagsFromVaultAccountsRequestBuilder( + vaultAccountsTagAttachmentOperationsRequest, idempotencyKey); + return memberVarHttpClient + .sendAsync(localVarRequestBuilder.build(), HttpResponse.BodyHandlers.ofString()) + .thenComposeAsync( + localVarResponse -> { + if (memberVarAsyncResponseInterceptor != null) { + memberVarAsyncResponseInterceptor.accept(localVarResponse); + } + if (localVarResponse.statusCode() / 100 != 2) { + return CompletableFuture.failedFuture( + getApiException( + "attachOrDetachTagsFromVaultAccounts", + localVarResponse)); + } + try { + String responseBody = localVarResponse.body(); + return CompletableFuture.completedFuture( + new ApiResponse< + VaultAccountsTagAttachmentOperationsResponse>( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + responseBody == null || responseBody.isBlank() + ? null + : memberVarObjectMapper.readValue( + responseBody, + new TypeReference< + VaultAccountsTagAttachmentOperationsResponse>() {}))); + } catch (IOException e) { + return CompletableFuture.failedFuture(new ApiException(e)); + } + }); + } catch (ApiException e) { + return CompletableFuture.failedFuture(e); + } + } + + private HttpRequest.Builder attachOrDetachTagsFromVaultAccountsRequestBuilder( + VaultAccountsTagAttachmentOperationsRequest vaultAccountsTagAttachmentOperationsRequest, + String idempotencyKey) + throws ApiException { + ValidationUtils.assertParamExists( + "attachOrDetachTagsFromVaultAccounts", + "vaultAccountsTagAttachmentOperationsRequest", + vaultAccountsTagAttachmentOperationsRequest); + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = "/vault/accounts/attached_tags"; + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + if (idempotencyKey != null) { + localVarRequestBuilder.header("Idempotency-Key", idempotencyKey.toString()); + } + localVarRequestBuilder.header("Content-Type", "application/json"); + localVarRequestBuilder.header("Accept", "application/json"); + + try { + byte[] localVarPostBody = + memberVarObjectMapper.writeValueAsBytes( + vaultAccountsTagAttachmentOperationsRequest); + localVarRequestBuilder.method( + "POST", HttpRequest.BodyPublishers.ofByteArray(localVarPostBody)); + } catch (IOException e) { + throw new ApiException(e); + } + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } + /** + * Attach tags to a vault accounts (deprecated) Attach one or more tags to the requested vault + * accounts. This endpoint is deprecated. Please use /vault/accounts/attached_tags instead. * * @param vaultAccountsTagAttachmentsRequest (required) * @param idempotencyKey A unique identifier for the request. If the request is sent multiple @@ -804,7 +902,8 @@ private HttpRequest.Builder createVaultAccountAssetAddressRequestBuilder( return localVarRequestBuilder; } /** - * Detach tags from a vault accounts Detach one or more tags from the requested vault account. + * Detach tags from a vault accounts (deprecated) Detach one or more tags from the requested + * vault account. This endpoint is deprecated. Please use /vault/accounts/attached_tags instead. * * @param vaultAccountsTagAttachmentsRequest (required) * @param idempotencyKey A unique identifier for the request. If the request is sent multiple diff --git a/src/main/java/com/fireblocks/sdk/api/WebhooksV2Api.java b/src/main/java/com/fireblocks/sdk/api/WebhooksV2Api.java index 0c007e40..a793029f 100644 --- a/src/main/java/com/fireblocks/sdk/api/WebhooksV2Api.java +++ b/src/main/java/com/fireblocks/sdk/api/WebhooksV2Api.java @@ -32,6 +32,7 @@ import com.fireblocks.sdk.model.UpdateWebhookRequest; import com.fireblocks.sdk.model.Webhook; import com.fireblocks.sdk.model.WebhookEvent; +import com.fireblocks.sdk.model.WebhookMetric; import com.fireblocks.sdk.model.WebhookPaginatedResponse; import java.io.IOException; import java.io.InputStream; @@ -235,6 +236,77 @@ private HttpRequest.Builder deleteWebhookRequestBuilder(UUID webhookId) throws A } return localVarRequestBuilder; } + /** + * Get webhook metrics Get webhook metrics by webhook id and metric name + * + * @param webhookId (required) + * @param metricName Name of the metric to retrieve (required) + * @return CompletableFuture<ApiResponse<WebhookMetric>> + * @throws ApiException if fails to make API call + */ + public CompletableFuture> getMetrics( + UUID webhookId, String metricName) throws ApiException { + try { + HttpRequest.Builder localVarRequestBuilder = + getMetricsRequestBuilder(webhookId, metricName); + return memberVarHttpClient + .sendAsync(localVarRequestBuilder.build(), HttpResponse.BodyHandlers.ofString()) + .thenComposeAsync( + localVarResponse -> { + if (memberVarAsyncResponseInterceptor != null) { + memberVarAsyncResponseInterceptor.accept(localVarResponse); + } + if (localVarResponse.statusCode() / 100 != 2) { + return CompletableFuture.failedFuture( + getApiException("getMetrics", localVarResponse)); + } + try { + String responseBody = localVarResponse.body(); + return CompletableFuture.completedFuture( + new ApiResponse( + localVarResponse.statusCode(), + localVarResponse.headers().map(), + responseBody == null || responseBody.isBlank() + ? null + : memberVarObjectMapper.readValue( + responseBody, + new TypeReference< + WebhookMetric>() {}))); + } catch (IOException e) { + return CompletableFuture.failedFuture(new ApiException(e)); + } + }); + } catch (ApiException e) { + return CompletableFuture.failedFuture(e); + } + } + + private HttpRequest.Builder getMetricsRequestBuilder(UUID webhookId, String metricName) + throws ApiException { + ValidationUtils.assertParamExistsAndNotEmpty( + "getMetrics", "webhookId", webhookId.toString()); + ValidationUtils.assertParamExistsAndNotEmpty("getMetrics", "metricName", metricName); + + HttpRequest.Builder localVarRequestBuilder = HttpRequest.newBuilder(); + + String localVarPath = + "/webhooks/{webhookId}/metrics/{metricName}" + .replace("{webhookId}", ApiClient.urlEncode(webhookId.toString())) + .replace("{metricName}", ApiClient.urlEncode(metricName.toString())); + + localVarRequestBuilder.uri(URI.create(memberVarBaseUri + localVarPath)); + + localVarRequestBuilder.header("Accept", "application/json"); + + localVarRequestBuilder.method("GET", HttpRequest.BodyPublishers.noBody()); + if (memberVarReadTimeout != null) { + localVarRequestBuilder.timeout(memberVarReadTimeout); + } + if (memberVarInterceptor != null) { + memberVarInterceptor.accept(localVarRequestBuilder); + } + return localVarRequestBuilder; + } /** * Get notification by id Get notification by id * diff --git a/src/main/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetails.java b/src/main/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetails.java new file mode 100644 index 00000000..31d5e850 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetails.java @@ -0,0 +1,250 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.StringJoiner; + +/** AccountBasedAccessProviderDetails */ +@JsonPropertyOrder({ + AccountBasedAccessProviderDetails.JSON_PROPERTY_MANIFEST, + AccountBasedAccessProviderDetails.JSON_PROPERTY_CONNECTED, + AccountBasedAccessProviderDetails.JSON_PROPERTY_ACCOUNTS +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AccountBasedAccessProviderDetails { + public static final String JSON_PROPERTY_MANIFEST = "manifest"; + @jakarta.annotation.Nonnull private Manifest manifest; + + public static final String JSON_PROPERTY_CONNECTED = "connected"; + @jakarta.annotation.Nonnull private Boolean connected; + + public static final String JSON_PROPERTY_ACCOUNTS = "accounts"; + @jakarta.annotation.Nullable private List accounts; + + public AccountBasedAccessProviderDetails() {} + + @JsonCreator + public AccountBasedAccessProviderDetails( + @JsonProperty(value = JSON_PROPERTY_MANIFEST, required = true) Manifest manifest, + @JsonProperty(value = JSON_PROPERTY_CONNECTED, required = true) Boolean connected) { + this.manifest = manifest; + this.connected = connected; + } + + public AccountBasedAccessProviderDetails manifest( + @jakarta.annotation.Nonnull Manifest manifest) { + this.manifest = manifest; + return this; + } + + /** + * Get manifest + * + * @return manifest + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_MANIFEST) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public Manifest getManifest() { + return manifest; + } + + @JsonProperty(JSON_PROPERTY_MANIFEST) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setManifest(@jakarta.annotation.Nonnull Manifest manifest) { + this.manifest = manifest; + } + + public AccountBasedAccessProviderDetails connected( + @jakarta.annotation.Nonnull Boolean connected) { + this.connected = connected; + return this; + } + + /** + * Whether the provider is currently connected + * + * @return connected + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_CONNECTED) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public Boolean getConnected() { + return connected; + } + + @JsonProperty(JSON_PROPERTY_CONNECTED) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setConnected(@jakarta.annotation.Nonnull Boolean connected) { + this.connected = connected; + } + + public AccountBasedAccessProviderDetails accounts( + @jakarta.annotation.Nullable List accounts) { + this.accounts = accounts; + return this; + } + + public AccountBasedAccessProviderDetails addAccountsItem(AccountBase accountsItem) { + if (this.accounts == null) { + this.accounts = new ArrayList<>(); + } + this.accounts.add(accountsItem); + return this; + } + + /** + * Get accounts + * + * @return accounts + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACCOUNTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getAccounts() { + return accounts; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAccounts(@jakarta.annotation.Nullable List accounts) { + this.accounts = accounts; + } + + /** Return true if this AccountBasedAccessProviderDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AccountBasedAccessProviderDetails accountBasedAccessProviderDetails = + (AccountBasedAccessProviderDetails) o; + return Objects.equals(this.manifest, accountBasedAccessProviderDetails.manifest) + && Objects.equals(this.connected, accountBasedAccessProviderDetails.connected) + && Objects.equals(this.accounts, accountBasedAccessProviderDetails.accounts); + } + + @Override + public int hashCode() { + return Objects.hash(manifest, connected, accounts); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AccountBasedAccessProviderDetails {\n"); + sb.append(" manifest: ").append(toIndentedString(manifest)).append("\n"); + sb.append(" connected: ").append(toIndentedString(connected)).append("\n"); + sb.append(" accounts: ").append(toIndentedString(accounts)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `manifest` to the URL query string + if (getManifest() != null) { + joiner.add(getManifest().toUrlQueryString(prefix + "manifest" + suffix)); + } + + // add `connected` to the URL query string + if (getConnected() != null) { + joiner.add( + String.format( + "%sconnected%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getConnected())))); + } + + // add `accounts` to the URL query string + if (getAccounts() != null) { + for (int i = 0; i < getAccounts().size(); i++) { + if (getAccounts().get(i) != null) { + joiner.add( + getAccounts() + .get(i) + .toUrlQueryString( + String.format( + "%saccounts%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AccountConfig.java b/src/main/java/com/fireblocks/sdk/model/AccountConfig.java index e6e5e993..fd84f181 100644 --- a/src/main/java/com/fireblocks/sdk/model/AccountConfig.java +++ b/src/main/java/com/fireblocks/sdk/model/AccountConfig.java @@ -24,11 +24,12 @@ import java.util.Objects; import java.util.StringJoiner; -/** Policy source/destination configuration */ +/** Policy account configuration */ @JsonPropertyOrder({ AccountConfig.JSON_PROPERTY_TYPE, AccountConfig.JSON_PROPERTY_SUB_TYPE, AccountConfig.JSON_PROPERTY_IDS, + AccountConfig.JSON_PROPERTY_TAGS, AccountConfig.JSON_PROPERTY_OPERATOR, AccountConfig.JSON_PROPERTY_MATCH_FROM }) @@ -37,7 +38,7 @@ comments = "Generator version: 7.14.0") public class AccountConfig { public static final String JSON_PROPERTY_TYPE = "type"; - @jakarta.annotation.Nonnull private AccountType2 type; + @jakarta.annotation.Nullable private List type; public static final String JSON_PROPERTY_SUB_TYPE = "subType"; @jakarta.annotation.Nullable private List subType; @@ -45,6 +46,9 @@ public class AccountConfig { public static final String JSON_PROPERTY_IDS = "ids"; @jakarta.annotation.Nullable private List ids; + public static final String JSON_PROPERTY_TAGS = "tags"; + @jakarta.annotation.Nullable private List tags; + public static final String JSON_PROPERTY_OPERATOR = "operator"; @jakarta.annotation.Nonnull private PolicyOperator operator; @@ -88,33 +92,39 @@ public AccountConfig() {} @JsonCreator public AccountConfig( - @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) AccountType2 type, @JsonProperty(value = JSON_PROPERTY_OPERATOR, required = true) PolicyOperator operator) { - this.type = type; this.operator = operator; } - public AccountConfig type(@jakarta.annotation.Nonnull AccountType2 type) { + public AccountConfig type(@jakarta.annotation.Nullable List type) { this.type = type; return this; } + public AccountConfig addTypeItem(AccountType2 typeItem) { + if (this.type == null) { + this.type = new ArrayList<>(); + } + this.type.add(typeItem); + return this; + } + /** - * Get type + * Account types * * @return type */ - @jakarta.annotation.Nonnull + @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public AccountType2 getType() { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getType() { return type; } @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setType(@jakarta.annotation.Nonnull AccountType2 type) { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setType(@jakarta.annotation.Nullable List type) { this.type = type; } @@ -180,6 +190,37 @@ public void setIds(@jakarta.annotation.Nullable List ids) { this.ids = ids; } + public AccountConfig tags(@jakarta.annotation.Nullable List tags) { + this.tags = tags; + return this; + } + + public AccountConfig addTagsItem(PolicyTag tagsItem) { + if (this.tags == null) { + this.tags = new ArrayList<>(); + } + this.tags.add(tagsItem); + return this; + } + + /** + * Tags for account matching + * + * @return tags + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TAGS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getTags() { + return tags; + } + + @JsonProperty(JSON_PROPERTY_TAGS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTags(@jakarta.annotation.Nullable List tags) { + this.tags = tags; + } + public AccountConfig operator(@jakarta.annotation.Nonnull PolicyOperator operator) { this.operator = operator; return this; @@ -239,13 +280,14 @@ public boolean equals(Object o) { return Objects.equals(this.type, accountConfig.type) && Objects.equals(this.subType, accountConfig.subType) && Objects.equals(this.ids, accountConfig.ids) + && Objects.equals(this.tags, accountConfig.tags) && Objects.equals(this.operator, accountConfig.operator) && Objects.equals(this.matchFrom, accountConfig.matchFrom); } @Override public int hashCode() { - return Objects.hash(type, subType, ids, operator, matchFrom); + return Objects.hash(type, subType, ids, tags, operator, matchFrom); } @Override @@ -255,6 +297,7 @@ public String toString() { sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append(" subType: ").append(toIndentedString(subType)).append("\n"); sb.append(" ids: ").append(toIndentedString(ids)).append("\n"); + sb.append(" tags: ").append(toIndentedString(tags)).append("\n"); sb.append(" operator: ").append(toIndentedString(operator)).append("\n"); sb.append(" matchFrom: ").append(toIndentedString(matchFrom)).append("\n"); sb.append("}"); @@ -306,12 +349,21 @@ public String toUrlQueryString(String prefix) { // add `type` to the URL query string if (getType() != null) { - joiner.add( - String.format( - "%stype%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getType())))); + for (int i = 0; i < getType().size(); i++) { + if (getType().get(i) != null) { + joiner.add( + String.format( + "%stype%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getType().get(i))))); + } + } } // add `subType` to the URL query string @@ -359,6 +411,29 @@ public String toUrlQueryString(String prefix) { } } + // add `tags` to the URL query string + if (getTags() != null) { + for (int i = 0; i < getTags().size(); i++) { + if (getTags().get(i) != null) { + joiner.add( + getTags() + .get(i) + .toUrlQueryString( + String.format( + "%stags%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + // add `operator` to the URL query string if (getOperator() != null) { joiner.add( diff --git a/src/main/java/com/fireblocks/sdk/model/AchAccountType.java b/src/main/java/com/fireblocks/sdk/model/AchAccountType.java new file mode 100644 index 00000000..f3705788 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AchAccountType.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Type of the bank account. */ +public enum AchAccountType { + CHECKING("CHECKING"), + + SAVINGS("SAVINGS"); + + private String value; + + AchAccountType(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static AchAccountType fromValue(String value) { + for (AchAccountType b : AchAccountType.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AchAddress.java b/src/main/java/com/fireblocks/sdk/model/AchAddress.java new file mode 100644 index 00000000..bf0dfb18 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AchAddress.java @@ -0,0 +1,312 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** AchAddress */ +@JsonPropertyOrder({ + AchAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + AchAddress.JSON_PROPERTY_BANK_NAME, + AchAddress.JSON_PROPERTY_BANK_ACCOUNT_NUMBER, + AchAddress.JSON_PROPERTY_ROUTING_NUMBER, + AchAddress.JSON_PROPERTY_ACCOUNT_TYPE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AchAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_BANK_NAME = "bankName"; + @jakarta.annotation.Nullable private String bankName; + + public static final String JSON_PROPERTY_BANK_ACCOUNT_NUMBER = "bankAccountNumber"; + @jakarta.annotation.Nonnull private String bankAccountNumber; + + public static final String JSON_PROPERTY_ROUTING_NUMBER = "routingNumber"; + @jakarta.annotation.Nonnull private String routingNumber; + + public static final String JSON_PROPERTY_ACCOUNT_TYPE = "accountType"; + @jakarta.annotation.Nonnull private AchAccountType accountType; + + public AchAddress() {} + + @JsonCreator + public AchAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_BANK_ACCOUNT_NUMBER, required = true) + String bankAccountNumber, + @JsonProperty(value = JSON_PROPERTY_ROUTING_NUMBER, required = true) + String routingNumber, + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_TYPE, required = true) + AchAccountType accountType) { + this.accountHolder = accountHolder; + this.bankAccountNumber = bankAccountNumber; + this.routingNumber = routingNumber; + this.accountType = accountType; + } + + public AchAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public AchAddress bankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + return this; + } + + /** + * Name of the bank. + * + * @return bankName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankName() { + return bankName; + } + + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + } + + public AchAddress bankAccountNumber(@jakarta.annotation.Nonnull String bankAccountNumber) { + this.bankAccountNumber = bankAccountNumber; + return this; + } + + /** + * The bank account number for the ACH transfer. + * + * @return bankAccountNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_BANK_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getBankAccountNumber() { + return bankAccountNumber; + } + + @JsonProperty(JSON_PROPERTY_BANK_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setBankAccountNumber(@jakarta.annotation.Nonnull String bankAccountNumber) { + this.bankAccountNumber = bankAccountNumber; + } + + public AchAddress routingNumber(@jakarta.annotation.Nonnull String routingNumber) { + this.routingNumber = routingNumber; + return this; + } + + /** + * Routing number identifying the bank account. + * + * @return routingNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ROUTING_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getRoutingNumber() { + return routingNumber; + } + + @JsonProperty(JSON_PROPERTY_ROUTING_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setRoutingNumber(@jakarta.annotation.Nonnull String routingNumber) { + this.routingNumber = routingNumber; + } + + public AchAddress accountType(@jakarta.annotation.Nonnull AchAccountType accountType) { + this.accountType = accountType; + return this; + } + + /** + * Get accountType + * + * @return accountType + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AchAccountType getAccountType() { + return accountType; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountType(@jakarta.annotation.Nonnull AchAccountType accountType) { + this.accountType = accountType; + } + + /** Return true if this AchAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AchAddress achAddress = (AchAddress) o; + return Objects.equals(this.accountHolder, achAddress.accountHolder) + && Objects.equals(this.bankName, achAddress.bankName) + && Objects.equals(this.bankAccountNumber, achAddress.bankAccountNumber) + && Objects.equals(this.routingNumber, achAddress.routingNumber) + && Objects.equals(this.accountType, achAddress.accountType); + } + + @Override + public int hashCode() { + return Objects.hash(accountHolder, bankName, bankAccountNumber, routingNumber, accountType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AchAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" bankName: ").append(toIndentedString(bankName)).append("\n"); + sb.append(" bankAccountNumber: ") + .append(toIndentedString(bankAccountNumber)) + .append("\n"); + sb.append(" routingNumber: ").append(toIndentedString(routingNumber)).append("\n"); + sb.append(" accountType: ").append(toIndentedString(accountType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `bankName` to the URL query string + if (getBankName() != null) { + joiner.add( + String.format( + "%sbankName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankName())))); + } + + // add `bankAccountNumber` to the URL query string + if (getBankAccountNumber() != null) { + joiner.add( + String.format( + "%sbankAccountNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankAccountNumber())))); + } + + // add `routingNumber` to the URL query string + if (getRoutingNumber() != null) { + joiner.add( + String.format( + "%sroutingNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRoutingNumber())))); + } + + // add `accountType` to the URL query string + if (getAccountType() != null) { + joiner.add( + String.format( + "%saccountType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAccountType())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AchDestination.java b/src/main/java/com/fireblocks/sdk/model/AchDestination.java new file mode 100644 index 00000000..cfcee2d1 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AchDestination.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** AchDestination */ +@JsonPropertyOrder({AchDestination.JSON_PROPERTY_TYPE, AchDestination.JSON_PROPERTY_ADDRESS}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AchDestination { + /** Gets or Sets type */ + public enum TypeEnum { + ACH(String.valueOf("ACH")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private AchAddress address; + + public AchDestination() {} + + @JsonCreator + public AchDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) AchAddress address) { + this.type = type; + this.address = address; + } + + public AchDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public AchDestination address(@jakarta.annotation.Nonnull AchAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AchAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull AchAddress address) { + this.address = address; + } + + /** Return true if this AchDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AchDestination achDestination = (AchDestination) o; + return Objects.equals(this.type, achDestination.type) + && Objects.equals(this.address, achDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AchDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AlertExposureTypeEnum.java b/src/main/java/com/fireblocks/sdk/model/AlertExposureTypeEnum.java new file mode 100644 index 00000000..e780b95c --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AlertExposureTypeEnum.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Alert exposure type (AlertExposureType enum) */ +public enum AlertExposureTypeEnum { + DIRECT("DIRECT"), + + INDIRECT("INDIRECT"); + + private String value; + + AlertExposureTypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static AlertExposureTypeEnum fromValue(String value) { + for (AlertExposureTypeEnum b : AlertExposureTypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AlertLevelEnum.java b/src/main/java/com/fireblocks/sdk/model/AlertLevelEnum.java new file mode 100644 index 00000000..01e0289a --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AlertLevelEnum.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Alert level severity */ +public enum AlertLevelEnum { + SEVERE("SEVERE"), + + HIGH("HIGH"), + + MEDIUM("MEDIUM"), + + LOW("LOW"); + + private String value; + + AlertLevelEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static AlertLevelEnum fromValue(String value) { + for (AlertLevelEnum b : AlertLevelEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmlAlert.java b/src/main/java/com/fireblocks/sdk/model/AmlAlert.java new file mode 100644 index 00000000..5ee6a592 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AmlAlert.java @@ -0,0 +1,479 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** AML alert information */ +@JsonPropertyOrder({ + AmlAlert.JSON_PROPERTY_ALERT_LEVEL, + AmlAlert.JSON_PROPERTY_ALERT_NAME, + AmlAlert.JSON_PROPERTY_CATEGORY, + AmlAlert.JSON_PROPERTY_SERVICE, + AmlAlert.JSON_PROPERTY_EXTERNAL_ID, + AmlAlert.JSON_PROPERTY_ALERT_AMOUNT, + AmlAlert.JSON_PROPERTY_EXPOSURE_TYPE, + AmlAlert.JSON_PROPERTY_POLICY_ACTION, + AmlAlert.JSON_PROPERTY_CATEGORY_ID +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AmlAlert { + public static final String JSON_PROPERTY_ALERT_LEVEL = "alertLevel"; + @jakarta.annotation.Nonnull private AlertLevelEnum alertLevel; + + public static final String JSON_PROPERTY_ALERT_NAME = "alertName"; + @jakarta.annotation.Nullable private String alertName; + + public static final String JSON_PROPERTY_CATEGORY = "category"; + @jakarta.annotation.Nullable private String category; + + public static final String JSON_PROPERTY_SERVICE = "service"; + @jakarta.annotation.Nullable private String service; + + public static final String JSON_PROPERTY_EXTERNAL_ID = "externalId"; + @jakarta.annotation.Nonnull private String externalId; + + public static final String JSON_PROPERTY_ALERT_AMOUNT = "alertAmount"; + @jakarta.annotation.Nonnull private BigDecimal alertAmount; + + public static final String JSON_PROPERTY_EXPOSURE_TYPE = "exposureType"; + @jakarta.annotation.Nonnull private AlertExposureTypeEnum exposureType; + + public static final String JSON_PROPERTY_POLICY_ACTION = "policyAction"; + @jakarta.annotation.Nullable private String policyAction; + + public static final String JSON_PROPERTY_CATEGORY_ID = "categoryId"; + @jakarta.annotation.Nullable private BigDecimal categoryId; + + public AmlAlert() {} + + @JsonCreator + public AmlAlert( + @JsonProperty(value = JSON_PROPERTY_ALERT_LEVEL, required = true) + AlertLevelEnum alertLevel, + @JsonProperty(value = JSON_PROPERTY_EXTERNAL_ID, required = true) String externalId, + @JsonProperty(value = JSON_PROPERTY_ALERT_AMOUNT, required = true) + BigDecimal alertAmount, + @JsonProperty(value = JSON_PROPERTY_EXPOSURE_TYPE, required = true) + AlertExposureTypeEnum exposureType) { + this.alertLevel = alertLevel; + this.externalId = externalId; + this.alertAmount = alertAmount; + this.exposureType = exposureType; + } + + public AmlAlert alertLevel(@jakarta.annotation.Nonnull AlertLevelEnum alertLevel) { + this.alertLevel = alertLevel; + return this; + } + + /** + * Get alertLevel + * + * @return alertLevel + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ALERT_LEVEL) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AlertLevelEnum getAlertLevel() { + return alertLevel; + } + + @JsonProperty(JSON_PROPERTY_ALERT_LEVEL) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAlertLevel(@jakarta.annotation.Nonnull AlertLevelEnum alertLevel) { + this.alertLevel = alertLevel; + } + + public AmlAlert alertName(@jakarta.annotation.Nullable String alertName) { + this.alertName = alertName; + return this; + } + + /** + * Name or type of the alert + * + * @return alertName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ALERT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAlertName() { + return alertName; + } + + @JsonProperty(JSON_PROPERTY_ALERT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAlertName(@jakarta.annotation.Nullable String alertName) { + this.alertName = alertName; + } + + public AmlAlert category(@jakarta.annotation.Nullable String category) { + this.category = category; + return this; + } + + /** + * Alert category + * + * @return category + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCategory() { + return category; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategory(@jakarta.annotation.Nullable String category) { + this.category = category; + } + + public AmlAlert service(@jakarta.annotation.Nullable String service) { + this.service = service; + return this; + } + + /** + * Service that generated the alert + * + * @return service + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SERVICE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getService() { + return service; + } + + @JsonProperty(JSON_PROPERTY_SERVICE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setService(@jakarta.annotation.Nullable String service) { + this.service = service; + } + + public AmlAlert externalId(@jakarta.annotation.Nonnull String externalId) { + this.externalId = externalId; + return this; + } + + /** + * External identifier for the alert + * + * @return externalId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getExternalId() { + return externalId; + } + + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setExternalId(@jakarta.annotation.Nonnull String externalId) { + this.externalId = externalId; + } + + public AmlAlert alertAmount(@jakarta.annotation.Nonnull BigDecimal alertAmount) { + this.alertAmount = alertAmount; + return this; + } + + /** + * Amount associated with the alert + * + * @return alertAmount + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ALERT_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public BigDecimal getAlertAmount() { + return alertAmount; + } + + @JsonProperty(JSON_PROPERTY_ALERT_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAlertAmount(@jakarta.annotation.Nonnull BigDecimal alertAmount) { + this.alertAmount = alertAmount; + } + + public AmlAlert exposureType(@jakarta.annotation.Nonnull AlertExposureTypeEnum exposureType) { + this.exposureType = exposureType; + return this; + } + + /** + * Get exposureType + * + * @return exposureType + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_EXPOSURE_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AlertExposureTypeEnum getExposureType() { + return exposureType; + } + + @JsonProperty(JSON_PROPERTY_EXPOSURE_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setExposureType(@jakarta.annotation.Nonnull AlertExposureTypeEnum exposureType) { + this.exposureType = exposureType; + } + + public AmlAlert policyAction(@jakarta.annotation.Nullable String policyAction) { + this.policyAction = policyAction; + return this; + } + + /** + * Recommended action based on policy + * + * @return policyAction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_POLICY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getPolicyAction() { + return policyAction; + } + + @JsonProperty(JSON_PROPERTY_POLICY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPolicyAction(@jakarta.annotation.Nullable String policyAction) { + this.policyAction = policyAction; + } + + public AmlAlert categoryId(@jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + return this; + } + + /** + * Category identifier + * + * @return categoryId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getCategoryId() { + return categoryId; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategoryId(@jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + } + + /** Return true if this AmlAlert object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AmlAlert amlAlert = (AmlAlert) o; + return Objects.equals(this.alertLevel, amlAlert.alertLevel) + && Objects.equals(this.alertName, amlAlert.alertName) + && Objects.equals(this.category, amlAlert.category) + && Objects.equals(this.service, amlAlert.service) + && Objects.equals(this.externalId, amlAlert.externalId) + && Objects.equals(this.alertAmount, amlAlert.alertAmount) + && Objects.equals(this.exposureType, amlAlert.exposureType) + && Objects.equals(this.policyAction, amlAlert.policyAction) + && Objects.equals(this.categoryId, amlAlert.categoryId); + } + + @Override + public int hashCode() { + return Objects.hash( + alertLevel, + alertName, + category, + service, + externalId, + alertAmount, + exposureType, + policyAction, + categoryId); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AmlAlert {\n"); + sb.append(" alertLevel: ").append(toIndentedString(alertLevel)).append("\n"); + sb.append(" alertName: ").append(toIndentedString(alertName)).append("\n"); + sb.append(" category: ").append(toIndentedString(category)).append("\n"); + sb.append(" service: ").append(toIndentedString(service)).append("\n"); + sb.append(" externalId: ").append(toIndentedString(externalId)).append("\n"); + sb.append(" alertAmount: ").append(toIndentedString(alertAmount)).append("\n"); + sb.append(" exposureType: ").append(toIndentedString(exposureType)).append("\n"); + sb.append(" policyAction: ").append(toIndentedString(policyAction)).append("\n"); + sb.append(" categoryId: ").append(toIndentedString(categoryId)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `alertLevel` to the URL query string + if (getAlertLevel() != null) { + joiner.add( + String.format( + "%salertLevel%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAlertLevel())))); + } + + // add `alertName` to the URL query string + if (getAlertName() != null) { + joiner.add( + String.format( + "%salertName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAlertName())))); + } + + // add `category` to the URL query string + if (getCategory() != null) { + joiner.add( + String.format( + "%scategory%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategory())))); + } + + // add `service` to the URL query string + if (getService() != null) { + joiner.add( + String.format( + "%sservice%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getService())))); + } + + // add `externalId` to the URL query string + if (getExternalId() != null) { + joiner.add( + String.format( + "%sexternalId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExternalId())))); + } + + // add `alertAmount` to the URL query string + if (getAlertAmount() != null) { + joiner.add( + String.format( + "%salertAmount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAlertAmount())))); + } + + // add `exposureType` to the URL query string + if (getExposureType() != null) { + joiner.add( + String.format( + "%sexposureType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExposureType())))); + } + + // add `policyAction` to the URL query string + if (getPolicyAction() != null) { + joiner.add( + String.format( + "%spolicyAction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPolicyAction())))); + } + + // add `categoryId` to the URL query string + if (getCategoryId() != null) { + joiner.add( + String.format( + "%scategoryId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategoryId())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmlMatchedRule.java b/src/main/java/com/fireblocks/sdk/model/AmlMatchedRule.java new file mode 100644 index 00000000..7e5f8f79 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AmlMatchedRule.java @@ -0,0 +1,219 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** AML matched rule information */ +@JsonPropertyOrder({ + AmlMatchedRule.JSON_PROPERTY_RULE_ID, + AmlMatchedRule.JSON_PROPERTY_RULE_NAME, + AmlMatchedRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AmlMatchedRule { + public static final String JSON_PROPERTY_RULE_ID = "ruleId"; + @jakarta.annotation.Nullable private String ruleId; + + public static final String JSON_PROPERTY_RULE_NAME = "ruleName"; + @jakarta.annotation.Nullable private String ruleName; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private PolicyVerdictActionEnum action; + + public AmlMatchedRule() {} + + public AmlMatchedRule ruleId(@jakarta.annotation.Nullable String ruleId) { + this.ruleId = ruleId; + return this; + } + + /** + * Identifier of the matched rule + * + * @return ruleId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RULE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getRuleId() { + return ruleId; + } + + @JsonProperty(JSON_PROPERTY_RULE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRuleId(@jakarta.annotation.Nullable String ruleId) { + this.ruleId = ruleId; + } + + public AmlMatchedRule ruleName(@jakarta.annotation.Nullable String ruleName) { + this.ruleName = ruleName; + return this; + } + + /** + * Name of the matched rule + * + * @return ruleName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RULE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getRuleName() { + return ruleName; + } + + @JsonProperty(JSON_PROPERTY_RULE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRuleName(@jakarta.annotation.Nullable String ruleName) { + this.ruleName = ruleName; + } + + public AmlMatchedRule action(@jakarta.annotation.Nullable PolicyVerdictActionEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public PolicyVerdictActionEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable PolicyVerdictActionEnum action) { + this.action = action; + } + + /** Return true if this AmlMatchedRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AmlMatchedRule amlMatchedRule = (AmlMatchedRule) o; + return Objects.equals(this.ruleId, amlMatchedRule.ruleId) + && Objects.equals(this.ruleName, amlMatchedRule.ruleName) + && Objects.equals(this.action, amlMatchedRule.action); + } + + @Override + public int hashCode() { + return Objects.hash(ruleId, ruleName, action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AmlMatchedRule {\n"); + sb.append(" ruleId: ").append(toIndentedString(ruleId)).append("\n"); + sb.append(" ruleName: ").append(toIndentedString(ruleName)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `ruleId` to the URL query string + if (getRuleId() != null) { + joiner.add( + String.format( + "%sruleId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRuleId())))); + } + + // add `ruleName` to the URL query string + if (getRuleName() != null) { + joiner.add( + String.format( + "%sruleName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRuleName())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmlResult.java b/src/main/java/com/fireblocks/sdk/model/AmlResult.java new file mode 100644 index 00000000..91791806 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AmlResult.java @@ -0,0 +1,300 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * Detailed AML screening result information. Contains alerts, risk scores, and other AML-specific + * data from provider-specific responses. + */ +@JsonPropertyOrder({ + AmlResult.JSON_PROPERTY_ALERTS, + AmlResult.JSON_PROPERTY_PROVIDER_RESPONSE, + AmlResult.JSON_PROPERTY_MATCHED_RULE, + AmlResult.JSON_PROPERTY_MATCHED_ALERT +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AmlResult { + public static final String JSON_PROPERTY_ALERTS = "alerts"; + @jakarta.annotation.Nullable private List alerts; + + public static final String JSON_PROPERTY_PROVIDER_RESPONSE = "providerResponse"; + @jakarta.annotation.Nullable private Map providerResponse; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private AmlMatchedRule matchedRule; + + public static final String JSON_PROPERTY_MATCHED_ALERT = "matchedAlert"; + @jakarta.annotation.Nullable private AmlAlert matchedAlert; + + public AmlResult() {} + + public AmlResult alerts(@jakarta.annotation.Nullable List alerts) { + this.alerts = alerts; + return this; + } + + public AmlResult addAlertsItem(AmlAlert alertsItem) { + if (this.alerts == null) { + this.alerts = new ArrayList<>(); + } + this.alerts.add(alertsItem); + return this; + } + + /** + * List of AML alerts triggered during screening + * + * @return alerts + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ALERTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getAlerts() { + return alerts; + } + + @JsonProperty(JSON_PROPERTY_ALERTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAlerts(@jakarta.annotation.Nullable List alerts) { + this.alerts = alerts; + } + + public AmlResult providerResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + return this; + } + + public AmlResult putProviderResponseItem(String key, Object providerResponseItem) { + if (this.providerResponse == null) { + this.providerResponse = new HashMap<>(); + } + this.providerResponse.put(key, providerResponseItem); + return this; + } + + /** + * Complete response from the AML provider. This is a dynamic object that varies significantly + * between different AML providers (Chainalysis, Elliptic, etc.). Each provider has their own + * proprietary response format and schema. Examples of provider-specific structures: - + * Chainalysis: Contains cluster info, risk scores, sanctions data - Elliptic: Includes risk + * assessment, entity types, compliance flags The structure is provider-dependent and cannot be + * standardized as each vendor implements their own proprietary data models and response + * formats. + * + * @return providerResponse + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public Map getProviderResponse() { + return providerResponse; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + } + + public AmlResult matchedRule(@jakarta.annotation.Nullable AmlMatchedRule matchedRule) { + this.matchedRule = matchedRule; + return this; + } + + /** + * Get matchedRule + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmlMatchedRule getMatchedRule() { + return matchedRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule(@jakarta.annotation.Nullable AmlMatchedRule matchedRule) { + this.matchedRule = matchedRule; + } + + public AmlResult matchedAlert(@jakarta.annotation.Nullable AmlAlert matchedAlert) { + this.matchedAlert = matchedAlert; + return this; + } + + /** + * Get matchedAlert + * + * @return matchedAlert + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmlAlert getMatchedAlert() { + return matchedAlert; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedAlert(@jakarta.annotation.Nullable AmlAlert matchedAlert) { + this.matchedAlert = matchedAlert; + } + + /** Return true if this AmlResult object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AmlResult amlResult = (AmlResult) o; + return Objects.equals(this.alerts, amlResult.alerts) + && Objects.equals(this.providerResponse, amlResult.providerResponse) + && Objects.equals(this.matchedRule, amlResult.matchedRule) + && Objects.equals(this.matchedAlert, amlResult.matchedAlert); + } + + @Override + public int hashCode() { + return Objects.hash(alerts, providerResponse, matchedRule, matchedAlert); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AmlResult {\n"); + sb.append(" alerts: ").append(toIndentedString(alerts)).append("\n"); + sb.append(" providerResponse: ").append(toIndentedString(providerResponse)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append(" matchedAlert: ").append(toIndentedString(matchedAlert)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `alerts` to the URL query string + if (getAlerts() != null) { + for (int i = 0; i < getAlerts().size(); i++) { + if (getAlerts().get(i) != null) { + joiner.add( + getAlerts() + .get(i) + .toUrlQueryString( + String.format( + "%salerts%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `providerResponse` to the URL query string + if (getProviderResponse() != null) { + for (String _key : getProviderResponse().keySet()) { + joiner.add( + String.format( + "%sproviderResponse%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, _key, containerSuffix), + getProviderResponse().get(_key), + ApiClient.urlEncode( + ApiClient.valueToString(getProviderResponse().get(_key))))); + } + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add(getMatchedRule().toUrlQueryString(prefix + "matchedRule" + suffix)); + } + + // add `matchedAlert` to the URL query string + if (getMatchedAlert() != null) { + joiner.add(getMatchedAlert().toUrlQueryString(prefix + "matchedAlert" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmlStatusEnum.java b/src/main/java/com/fireblocks/sdk/model/AmlStatusEnum.java new file mode 100644 index 00000000..e60ba6d8 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AmlStatusEnum.java @@ -0,0 +1,70 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** AML screening status */ +public enum AmlStatusEnum { + COMPLETED("COMPLETED"), + + PENDING("PENDING"), + + BYPASSED("BYPASSED"), + + FAILED("FAILED"), + + FROZEN("FROZEN"); + + private String value; + + AmlStatusEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static AmlStatusEnum fromValue(String value) { + for (AmlStatusEnum b : AmlStatusEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmountConfig.java b/src/main/java/com/fireblocks/sdk/model/AmountConfig.java new file mode 100644 index 00000000..accc45e9 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AmountConfig.java @@ -0,0 +1,179 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** AmountConfig */ +@JsonPropertyOrder({AmountConfig.JSON_PROPERTY_RANGE, AmountConfig.JSON_PROPERTY_CURRENCY}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AmountConfig { + public static final String JSON_PROPERTY_RANGE = "range"; + @jakarta.annotation.Nonnull private AmountRangeMinMax2 range; + + public static final String JSON_PROPERTY_CURRENCY = "currency"; + @jakarta.annotation.Nullable private PolicyCurrency currency; + + public AmountConfig() {} + + @JsonCreator + public AmountConfig( + @JsonProperty(value = JSON_PROPERTY_RANGE, required = true) AmountRangeMinMax2 range) { + this.range = range; + } + + public AmountConfig range(@jakarta.annotation.Nonnull AmountRangeMinMax2 range) { + this.range = range; + return this; + } + + /** + * Get range + * + * @return range + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_RANGE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AmountRangeMinMax2 getRange() { + return range; + } + + @JsonProperty(JSON_PROPERTY_RANGE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setRange(@jakarta.annotation.Nonnull AmountRangeMinMax2 range) { + this.range = range; + } + + public AmountConfig currency(@jakarta.annotation.Nullable PolicyCurrency currency) { + this.currency = currency; + return this; + } + + /** + * Get currency + * + * @return currency + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public PolicyCurrency getCurrency() { + return currency; + } + + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCurrency(@jakarta.annotation.Nullable PolicyCurrency currency) { + this.currency = currency; + } + + /** Return true if this AmountConfig object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AmountConfig amountConfig = (AmountConfig) o; + return Objects.equals(this.range, amountConfig.range) + && Objects.equals(this.currency, amountConfig.currency); + } + + @Override + public int hashCode() { + return Objects.hash(range, currency); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AmountConfig {\n"); + sb.append(" range: ").append(toIndentedString(range)).append("\n"); + sb.append(" currency: ").append(toIndentedString(currency)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `range` to the URL query string + if (getRange() != null) { + joiner.add(getRange().toUrlQueryString(prefix + "range" + suffix)); + } + + // add `currency` to the URL query string + if (getCurrency() != null) { + joiner.add( + String.format( + "%scurrency%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCurrency())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmountConfigCurrency.java b/src/main/java/com/fireblocks/sdk/model/AmountConfigCurrency.java new file mode 100644 index 00000000..639d2485 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AmountConfigCurrency.java @@ -0,0 +1,139 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Currency property for amount configuration */ +@JsonPropertyOrder({AmountConfigCurrency.JSON_PROPERTY_CURRENCY}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AmountConfigCurrency { + public static final String JSON_PROPERTY_CURRENCY = "currency"; + @jakarta.annotation.Nullable private PolicyCurrency currency; + + public AmountConfigCurrency() {} + + public AmountConfigCurrency currency(@jakarta.annotation.Nullable PolicyCurrency currency) { + this.currency = currency; + return this; + } + + /** + * Get currency + * + * @return currency + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public PolicyCurrency getCurrency() { + return currency; + } + + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCurrency(@jakarta.annotation.Nullable PolicyCurrency currency) { + this.currency = currency; + } + + /** Return true if this AmountConfigCurrency object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AmountConfigCurrency amountConfigCurrency = (AmountConfigCurrency) o; + return Objects.equals(this.currency, amountConfigCurrency.currency); + } + + @Override + public int hashCode() { + return Objects.hash(currency); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AmountConfigCurrency {\n"); + sb.append(" currency: ").append(toIndentedString(currency)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `currency` to the URL query string + if (getCurrency() != null) { + joiner.add( + String.format( + "%scurrency%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCurrency())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfig.java b/src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfig.java index fcb0a523..62a85b5e 100644 --- a/src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfig.java +++ b/src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfig.java @@ -17,7 +17,6 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fasterxml.jackson.annotation.JsonValue; import com.fireblocks.sdk.ApiClient; import java.util.Objects; import java.util.StringJoiner; @@ -33,45 +32,10 @@ comments = "Generator version: 7.14.0") public class AmountOverTimeConfig { public static final String JSON_PROPERTY_RANGE = "range"; - @jakarta.annotation.Nonnull private AmountOverTimeConfigRange range; - - /** Currency for the amount */ - public enum CurrencyEnum { - NATIVE(String.valueOf("NATIVE")), - - USD(String.valueOf("USD")), - - EUR(String.valueOf("EUR")); - - private String value; - - CurrencyEnum(String value) { - this.value = value; - } - - @JsonValue - public String getValue() { - return value; - } - - @Override - public String toString() { - return String.valueOf(value); - } - - @JsonCreator - public static CurrencyEnum fromValue(String value) { - for (CurrencyEnum b : CurrencyEnum.values()) { - if (b.value.equals(value)) { - return b; - } - } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); - } - } + @jakarta.annotation.Nonnull private AmountRangeMinMax2 range; public static final String JSON_PROPERTY_CURRENCY = "currency"; - @jakarta.annotation.Nullable private CurrencyEnum currency; + @jakarta.annotation.Nonnull private PolicyCurrency currency; public static final String JSON_PROPERTY_TIME_PERIOD = "timePeriod"; @jakarta.annotation.Nonnull private TimePeriodConfig timePeriod; @@ -80,15 +44,16 @@ public AmountOverTimeConfig() {} @JsonCreator public AmountOverTimeConfig( - @JsonProperty(value = JSON_PROPERTY_RANGE, required = true) - AmountOverTimeConfigRange range, + @JsonProperty(value = JSON_PROPERTY_RANGE, required = true) AmountRangeMinMax2 range, + @JsonProperty(value = JSON_PROPERTY_CURRENCY, required = true) PolicyCurrency currency, @JsonProperty(value = JSON_PROPERTY_TIME_PERIOD, required = true) TimePeriodConfig timePeriod) { this.range = range; + this.currency = currency; this.timePeriod = timePeriod; } - public AmountOverTimeConfig range(@jakarta.annotation.Nonnull AmountOverTimeConfigRange range) { + public AmountOverTimeConfig range(@jakarta.annotation.Nonnull AmountRangeMinMax2 range) { this.range = range; return this; } @@ -101,36 +66,36 @@ public AmountOverTimeConfig range(@jakarta.annotation.Nonnull AmountOverTimeConf @jakarta.annotation.Nonnull @JsonProperty(JSON_PROPERTY_RANGE) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public AmountOverTimeConfigRange getRange() { + public AmountRangeMinMax2 getRange() { return range; } @JsonProperty(JSON_PROPERTY_RANGE) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setRange(@jakarta.annotation.Nonnull AmountOverTimeConfigRange range) { + public void setRange(@jakarta.annotation.Nonnull AmountRangeMinMax2 range) { this.range = range; } - public AmountOverTimeConfig currency(@jakarta.annotation.Nullable CurrencyEnum currency) { + public AmountOverTimeConfig currency(@jakarta.annotation.Nonnull PolicyCurrency currency) { this.currency = currency; return this; } /** - * Currency for the amount + * Get currency * * @return currency */ - @jakarta.annotation.Nullable + @jakarta.annotation.Nonnull @JsonProperty(JSON_PROPERTY_CURRENCY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public CurrencyEnum getCurrency() { + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public PolicyCurrency getCurrency() { return currency; } @JsonProperty(JSON_PROPERTY_CURRENCY) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCurrency(@jakarta.annotation.Nullable CurrencyEnum currency) { + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setCurrency(@jakarta.annotation.Nonnull PolicyCurrency currency) { this.currency = currency; } diff --git a/src/main/java/com/fireblocks/sdk/model/AmountRange.java b/src/main/java/com/fireblocks/sdk/model/AmountRange.java index 61a6099d..598a192f 100644 --- a/src/main/java/com/fireblocks/sdk/model/AmountRange.java +++ b/src/main/java/com/fireblocks/sdk/model/AmountRange.java @@ -17,108 +17,47 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import com.fireblocks.sdk.ApiClient; import java.util.Objects; import java.util.StringJoiner; -/** Amount range configuration */ -@JsonPropertyOrder({ - AmountRange.JSON_PROPERTY_MIN, - AmountRange.JSON_PROPERTY_MAX, - AmountRange.JSON_PROPERTY_CURRENCY -}) +/** Amount range with minimum and maximum values */ +@JsonPropertyOrder({AmountRange.JSON_PROPERTY_RANGE}) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class AmountRange { - public static final String JSON_PROPERTY_MIN = "min"; - @jakarta.annotation.Nonnull private String min; - - public static final String JSON_PROPERTY_MAX = "max"; - @jakarta.annotation.Nonnull private String max; - - public static final String JSON_PROPERTY_CURRENCY = "currency"; - @jakarta.annotation.Nonnull private String currency; + public static final String JSON_PROPERTY_RANGE = "range"; + @jakarta.annotation.Nonnull private AmountRangeMinMax2 range; public AmountRange() {} @JsonCreator public AmountRange( - @JsonProperty(value = JSON_PROPERTY_MIN, required = true) String min, - @JsonProperty(value = JSON_PROPERTY_MAX, required = true) String max, - @JsonProperty(value = JSON_PROPERTY_CURRENCY, required = true) String currency) { - this.min = min; - this.max = max; - this.currency = currency; - } - - public AmountRange min(@jakarta.annotation.Nonnull String min) { - this.min = min; - return this; - } - - /** - * Minimum amount - * - * @return min - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_MIN) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public String getMin() { - return min; - } - - @JsonProperty(JSON_PROPERTY_MIN) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setMin(@jakarta.annotation.Nonnull String min) { - this.min = min; - } - - public AmountRange max(@jakarta.annotation.Nonnull String max) { - this.max = max; - return this; - } - - /** - * Maximum amount - * - * @return max - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_MAX) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public String getMax() { - return max; - } - - @JsonProperty(JSON_PROPERTY_MAX) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setMax(@jakarta.annotation.Nonnull String max) { - this.max = max; + @JsonProperty(value = JSON_PROPERTY_RANGE, required = true) AmountRangeMinMax2 range) { + this.range = range; } - public AmountRange currency(@jakarta.annotation.Nonnull String currency) { - this.currency = currency; + public AmountRange range(@jakarta.annotation.Nonnull AmountRangeMinMax2 range) { + this.range = range; return this; } /** - * Currency for the amount + * Get range * - * @return currency + * @return range */ @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonProperty(JSON_PROPERTY_RANGE) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public String getCurrency() { - return currency; + public AmountRangeMinMax2 getRange() { + return range; } - @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonProperty(JSON_PROPERTY_RANGE) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setCurrency(@jakarta.annotation.Nonnull String currency) { - this.currency = currency; + public void setRange(@jakarta.annotation.Nonnull AmountRangeMinMax2 range) { + this.range = range; } /** Return true if this AmountRange object is equal to o. */ @@ -131,23 +70,19 @@ public boolean equals(Object o) { return false; } AmountRange amountRange = (AmountRange) o; - return Objects.equals(this.min, amountRange.min) - && Objects.equals(this.max, amountRange.max) - && Objects.equals(this.currency, amountRange.currency); + return Objects.equals(this.range, amountRange.range); } @Override public int hashCode() { - return Objects.hash(min, max, currency); + return Objects.hash(range); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class AmountRange {\n"); - sb.append(" min: ").append(toIndentedString(min)).append("\n"); - sb.append(" max: ").append(toIndentedString(max)).append("\n"); - sb.append(" currency: ").append(toIndentedString(currency)).append("\n"); + sb.append(" range: ").append(toIndentedString(range)).append("\n"); sb.append("}"); return sb.toString(); } @@ -195,34 +130,9 @@ public String toUrlQueryString(String prefix) { StringJoiner joiner = new StringJoiner("&"); - // add `min` to the URL query string - if (getMin() != null) { - joiner.add( - String.format( - "%smin%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getMin())))); - } - - // add `max` to the URL query string - if (getMax() != null) { - joiner.add( - String.format( - "%smax%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getMax())))); - } - - // add `currency` to the URL query string - if (getCurrency() != null) { - joiner.add( - String.format( - "%scurrency%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getCurrency())))); + // add `range` to the URL query string + if (getRange() != null) { + joiner.add(getRange().toUrlQueryString(prefix + "range" + suffix)); } return joiner.toString(); diff --git a/src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax.java b/src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax.java new file mode 100644 index 00000000..4b077d85 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax.java @@ -0,0 +1,177 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Amount range with minimum and maximum values */ +@JsonPropertyOrder({AmountRangeMinMax.JSON_PROPERTY_MIN, AmountRangeMinMax.JSON_PROPERTY_MAX}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class AmountRangeMinMax { + public static final String JSON_PROPERTY_MIN = "min"; + @jakarta.annotation.Nullable private String min; + + public static final String JSON_PROPERTY_MAX = "max"; + @jakarta.annotation.Nullable private String max; + + public AmountRangeMinMax() {} + + public AmountRangeMinMax min(@jakarta.annotation.Nullable String min) { + this.min = min; + return this; + } + + /** + * Minimum amount + * + * @return min + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getMin() { + return min; + } + + @JsonProperty(JSON_PROPERTY_MIN) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMin(@jakarta.annotation.Nullable String min) { + this.min = min; + } + + public AmountRangeMinMax max(@jakarta.annotation.Nullable String max) { + this.max = max; + return this; + } + + /** + * Maximum amount + * + * @return max + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MAX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getMax() { + return max; + } + + @JsonProperty(JSON_PROPERTY_MAX) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMax(@jakarta.annotation.Nullable String max) { + this.max = max; + } + + /** Return true if this AmountRangeMinMax object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + AmountRangeMinMax amountRangeMinMax = (AmountRangeMinMax) o; + return Objects.equals(this.min, amountRangeMinMax.min) + && Objects.equals(this.max, amountRangeMinMax.max); + } + + @Override + public int hashCode() { + return Objects.hash(min, max); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class AmountRangeMinMax {\n"); + sb.append(" min: ").append(toIndentedString(min)).append("\n"); + sb.append(" max: ").append(toIndentedString(max)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `min` to the URL query string + if (getMin() != null) { + joiner.add( + String.format( + "%smin%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMin())))); + } + + // add `max` to the URL query string + if (getMax() != null) { + joiner.add( + String.format( + "%smax%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMax())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfigRange.java b/src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax2.java similarity index 84% rename from src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfigRange.java rename to src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax2.java index 3a0389d9..5bf2f74c 100644 --- a/src/main/java/com/fireblocks/sdk/model/AmountOverTimeConfigRange.java +++ b/src/main/java/com/fireblocks/sdk/model/AmountRangeMinMax2.java @@ -21,30 +21,27 @@ import java.util.Objects; import java.util.StringJoiner; -/** Amount range configuration */ -@JsonPropertyOrder({ - AmountOverTimeConfigRange.JSON_PROPERTY_MIN, - AmountOverTimeConfigRange.JSON_PROPERTY_MAX -}) +/** Amount range with minimum and maximum values */ +@JsonPropertyOrder({AmountRangeMinMax2.JSON_PROPERTY_MIN, AmountRangeMinMax2.JSON_PROPERTY_MAX}) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") -public class AmountOverTimeConfigRange { +public class AmountRangeMinMax2 { public static final String JSON_PROPERTY_MIN = "min"; @jakarta.annotation.Nonnull private String min; public static final String JSON_PROPERTY_MAX = "max"; @jakarta.annotation.Nullable private String max; - public AmountOverTimeConfigRange() {} + public AmountRangeMinMax2() {} @JsonCreator - public AmountOverTimeConfigRange( + public AmountRangeMinMax2( @JsonProperty(value = JSON_PROPERTY_MIN, required = true) String min) { this.min = min; } - public AmountOverTimeConfigRange min(@jakarta.annotation.Nonnull String min) { + public AmountRangeMinMax2 min(@jakarta.annotation.Nonnull String min) { this.min = min; return this; } @@ -67,13 +64,13 @@ public void setMin(@jakarta.annotation.Nonnull String min) { this.min = min; } - public AmountOverTimeConfigRange max(@jakarta.annotation.Nullable String max) { + public AmountRangeMinMax2 max(@jakarta.annotation.Nullable String max) { this.max = max; return this; } /** - * Maximum amount (optional) + * Maximum amount * * @return max */ @@ -90,7 +87,7 @@ public void setMax(@jakarta.annotation.Nullable String max) { this.max = max; } - /** Return true if this AmountOverTimeConfig_range object is equal to o. */ + /** Return true if this AmountRangeMinMax-2 object is equal to o. */ @Override public boolean equals(Object o) { if (this == o) { @@ -99,9 +96,9 @@ public boolean equals(Object o) { if (o == null || getClass() != o.getClass()) { return false; } - AmountOverTimeConfigRange amountOverTimeConfigRange = (AmountOverTimeConfigRange) o; - return Objects.equals(this.min, amountOverTimeConfigRange.min) - && Objects.equals(this.max, amountOverTimeConfigRange.max); + AmountRangeMinMax2 amountRangeMinMax2 = (AmountRangeMinMax2) o; + return Objects.equals(this.min, amountRangeMinMax2.min) + && Objects.equals(this.max, amountRangeMinMax2.max); } @Override @@ -112,7 +109,7 @@ public int hashCode() { @Override public String toString() { StringBuilder sb = new StringBuilder(); - sb.append("class AmountOverTimeConfigRange {\n"); + sb.append("class AmountRangeMinMax2 {\n"); sb.append(" min: ").append(toIndentedString(min)).append("\n"); sb.append(" max: ").append(toIndentedString(max)).append("\n"); sb.append("}"); diff --git a/src/main/java/com/fireblocks/sdk/model/ApproversConfig.java b/src/main/java/com/fireblocks/sdk/model/ApproversConfig.java index 5e53a3df..1aa5f472 100644 --- a/src/main/java/com/fireblocks/sdk/model/ApproversConfig.java +++ b/src/main/java/com/fireblocks/sdk/model/ApproversConfig.java @@ -36,7 +36,7 @@ comments = "Generator version: 7.14.0") public class ApproversConfig { public static final String JSON_PROPERTY_CAN_INITIATOR_APPROVE = "canInitiatorApprove"; - @jakarta.annotation.Nullable private Boolean canInitiatorApprove; + @jakarta.annotation.Nonnull private Boolean canInitiatorApprove; /** Operator for approval groups */ public enum OperatorEnum { @@ -83,8 +83,15 @@ public static OperatorEnum fromValue(String value) { public ApproversConfig() {} + @JsonCreator + public ApproversConfig( + @JsonProperty(value = JSON_PROPERTY_CAN_INITIATOR_APPROVE, required = true) + Boolean canInitiatorApprove) { + this.canInitiatorApprove = canInitiatorApprove; + } + public ApproversConfig canInitiatorApprove( - @jakarta.annotation.Nullable Boolean canInitiatorApprove) { + @jakarta.annotation.Nonnull Boolean canInitiatorApprove) { this.canInitiatorApprove = canInitiatorApprove; return this; } @@ -94,16 +101,16 @@ public ApproversConfig canInitiatorApprove( * * @return canInitiatorApprove */ - @jakarta.annotation.Nullable + @jakarta.annotation.Nonnull @JsonProperty(JSON_PROPERTY_CAN_INITIATOR_APPROVE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) public Boolean getCanInitiatorApprove() { return canInitiatorApprove; } @JsonProperty(JSON_PROPERTY_CAN_INITIATOR_APPROVE) - @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setCanInitiatorApprove(@jakarta.annotation.Nullable Boolean canInitiatorApprove) { + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setCanInitiatorApprove(@jakarta.annotation.Nonnull Boolean canInitiatorApprove) { this.canInitiatorApprove = canInitiatorApprove; } diff --git a/src/main/java/com/fireblocks/sdk/model/ComplianceResultFullPayload.java b/src/main/java/com/fireblocks/sdk/model/ComplianceResultFullPayload.java index a5534f46..718d42e1 100644 --- a/src/main/java/com/fireblocks/sdk/model/ComplianceResultFullPayload.java +++ b/src/main/java/com/fireblocks/sdk/model/ComplianceResultFullPayload.java @@ -28,7 +28,9 @@ ComplianceResultFullPayload.JSON_PROPERTY_TR, ComplianceResultFullPayload.JSON_PROPERTY_AML_LIST, ComplianceResultFullPayload.JSON_PROPERTY_STATUS, - ComplianceResultFullPayload.JSON_PROPERTY_AML_REGISTRATION + ComplianceResultFullPayload.JSON_PROPERTY_AML_REGISTRATION, + ComplianceResultFullPayload.JSON_PROPERTY_TRLINK_REGISTRATION, + ComplianceResultFullPayload.JSON_PROPERTY_TRLINK_DESTINATIONS }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", @@ -49,6 +51,12 @@ public class ComplianceResultFullPayload { public static final String JSON_PROPERTY_AML_REGISTRATION = "amlRegistration"; @jakarta.annotation.Nullable private AmlRegistrationResultFullPayload amlRegistration; + public static final String JSON_PROPERTY_TRLINK_REGISTRATION = "trlinkRegistration"; + @jakarta.annotation.Nullable private TRLinkRegistrationResultFullPayload trlinkRegistration; + + public static final String JSON_PROPERTY_TRLINK_DESTINATIONS = "trlinkDestinations"; + @jakarta.annotation.Nullable private List trlinkDestinations; + public ComplianceResultFullPayload() {} public ComplianceResultFullPayload aml( @@ -182,6 +190,65 @@ public void setAmlRegistration( this.amlRegistration = amlRegistration; } + public ComplianceResultFullPayload trlinkRegistration( + @jakarta.annotation.Nullable TRLinkRegistrationResultFullPayload trlinkRegistration) { + this.trlinkRegistration = trlinkRegistration; + return this; + } + + /** + * Get trlinkRegistration + * + * @return trlinkRegistration + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRLINK_REGISTRATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkRegistrationResultFullPayload getTrlinkRegistration() { + return trlinkRegistration; + } + + @JsonProperty(JSON_PROPERTY_TRLINK_REGISTRATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTrlinkRegistration( + @jakarta.annotation.Nullable TRLinkRegistrationResultFullPayload trlinkRegistration) { + this.trlinkRegistration = trlinkRegistration; + } + + public ComplianceResultFullPayload trlinkDestinations( + @jakarta.annotation.Nullable List trlinkDestinations) { + this.trlinkDestinations = trlinkDestinations; + return this; + } + + public ComplianceResultFullPayload addTrlinkDestinationsItem( + TRLinkResultFullPayload trlinkDestinationsItem) { + if (this.trlinkDestinations == null) { + this.trlinkDestinations = new ArrayList<>(); + } + this.trlinkDestinations.add(trlinkDestinationsItem); + return this; + } + + /** + * The list of TRLink destination screening results. + * + * @return trlinkDestinations + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRLINK_DESTINATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getTrlinkDestinations() { + return trlinkDestinations; + } + + @JsonProperty(JSON_PROPERTY_TRLINK_DESTINATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTrlinkDestinations( + @jakarta.annotation.Nullable List trlinkDestinations) { + this.trlinkDestinations = trlinkDestinations; + } + /** Return true if this ComplianceResultFullPayload object is equal to o. */ @Override public boolean equals(Object o) { @@ -196,13 +263,17 @@ public boolean equals(Object o) { && Objects.equals(this.tr, complianceResultFullPayload.tr) && Objects.equals(this.amlList, complianceResultFullPayload.amlList) && Objects.equals(this.status, complianceResultFullPayload.status) + && Objects.equals(this.amlRegistration, complianceResultFullPayload.amlRegistration) + && Objects.equals( + this.trlinkRegistration, complianceResultFullPayload.trlinkRegistration) && Objects.equals( - this.amlRegistration, complianceResultFullPayload.amlRegistration); + this.trlinkDestinations, complianceResultFullPayload.trlinkDestinations); } @Override public int hashCode() { - return Objects.hash(aml, tr, amlList, status, amlRegistration); + return Objects.hash( + aml, tr, amlList, status, amlRegistration, trlinkRegistration, trlinkDestinations); } @Override @@ -214,6 +285,12 @@ public String toString() { sb.append(" amlList: ").append(toIndentedString(amlList)).append("\n"); sb.append(" status: ").append(toIndentedString(status)).append("\n"); sb.append(" amlRegistration: ").append(toIndentedString(amlRegistration)).append("\n"); + sb.append(" trlinkRegistration: ") + .append(toIndentedString(trlinkRegistration)) + .append("\n"); + sb.append(" trlinkDestinations: ") + .append(toIndentedString(trlinkDestinations)) + .append("\n"); sb.append("}"); return sb.toString(); } @@ -309,6 +386,36 @@ public String toUrlQueryString(String prefix) { joiner.add(getAmlRegistration().toUrlQueryString(prefix + "amlRegistration" + suffix)); } + // add `trlinkRegistration` to the URL query string + if (getTrlinkRegistration() != null) { + joiner.add( + getTrlinkRegistration() + .toUrlQueryString(prefix + "trlinkRegistration" + suffix)); + } + + // add `trlinkDestinations` to the URL query string + if (getTrlinkDestinations() != null) { + for (int i = 0; i < getTrlinkDestinations().size(); i++) { + if (getTrlinkDestinations().get(i) != null) { + joiner.add( + getTrlinkDestinations() + .get(i) + .toUrlQueryString( + String.format( + "%strlinkDestinations%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/ComplianceResultStatusesEnum.java b/src/main/java/com/fireblocks/sdk/model/ComplianceResultStatusesEnum.java index 8b20f9d3..f1562ea3 100644 --- a/src/main/java/com/fireblocks/sdk/model/ComplianceResultStatusesEnum.java +++ b/src/main/java/com/fireblocks/sdk/model/ComplianceResultStatusesEnum.java @@ -16,8 +16,12 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonValue; -/** Status of compliance result screening. */ +/** Status of compliance result screening */ public enum ComplianceResultStatusesEnum { + UNKNOWN("Unknown"), + + STALLED("Stalled"), + STARTED("Started"), NETWORK_CONNECTION_ADDRESS_RESOLVE("NetworkConnectionAddressResolve"), @@ -36,14 +40,46 @@ public enum ComplianceResultStatusesEnum { TR_STARTED("TRStarted"), + TR_LINK_STARTED("TRLinkStarted"), + + TR_LINK_DESTINATION_STARTED("TRLinkDestinationStarted"), + + TR_LINK_DESTINATION_PRESCREEN_POLICY("TRLinkDestinationPrescreenPolicy"), + + TR_LINK_DESTINATION_NO_TRM_POLICY("TRLinkDestinationNoTRMPolicy"), + + TR_LINK_DESTINATION_SCREEN("TRLinkDestinationScreen"), + + TR_LINK_DESTINATION_POSTSCREEN_POLICY("TRLinkDestinationPostscreenPolicy"), + + TR_LINK_DESTINATION_COMPLETED("TRLinkDestinationCompleted"), + + TR_LINK_COMPLETED("TRLinkCompleted"), + TR_COMPLETED("TRCompleted"), TR_FAILED("TRFailed"), COMPLETED("Completed"), + REGISTRATION_STARTED("RegistrationStarted"), + + REGISTRATION_WAIT_FOR_FIRST_CONFIRMATION("RegistrationWaitForFirstConfirmation"), + + AML_REGISTRATION_STARTED("AMLRegistrationStarted"), + + AML_REGISTRATION_COMPLETED("AMLRegistrationCompleted"), + + TR_UPDATE_STARTED("TRUpdateStarted"), + + TR_UPDATE_COMPLETED("TRUpdateCompleted"), + + UPDATE_COMPLETED("UpdateCompleted"), + INCOMING_STARTED("IncomingStarted"), + INCOMING_BYORK_SL("IncomingByorkSL"), + INCOMING_SCREENING_PREPARE("IncomingScreeningPrepare"), INCOMING_WAIT_FOR_FIRST_CONFIRMATION("IncomingWaitForFirstConfirmation"), @@ -64,7 +100,19 @@ public enum ComplianceResultStatusesEnum { INCOMING_COMPLETED("IncomingCompleted"), - UPDATE_COMPLETED("UpdateCompleted"); + ADDRESS_AML_INITIATED("AddressAmlInitiated"), + + ADDRESS_AML_ADDRESS_RESOLVE("AddressAmlAddressResolve"), + + ADDRESS_AML_PREPARE("AddressAmlPrepare"), + + ADDRESS_AML_PROCESSING("AddressAmlProcessing"), + + ADDRESS_AML_SUCCEEDED("AddressAmlSucceeded"), + + ADDRESS_AML_FAILED("AddressAmlFailed"), + + ADDRESS_AML_COMPLETED("AddressAmlCompleted"); private String value; diff --git a/src/main/java/com/fireblocks/sdk/model/ComplianceResults.java b/src/main/java/com/fireblocks/sdk/model/ComplianceResults.java index b441c52e..96c62770 100644 --- a/src/main/java/com/fireblocks/sdk/model/ComplianceResults.java +++ b/src/main/java/com/fireblocks/sdk/model/ComplianceResults.java @@ -28,7 +28,9 @@ ComplianceResults.JSON_PROPERTY_TR, ComplianceResults.JSON_PROPERTY_AML_LIST, ComplianceResults.JSON_PROPERTY_STATUS, - ComplianceResults.JSON_PROPERTY_AML_REGISTRATION + ComplianceResults.JSON_PROPERTY_AML_REGISTRATION, + ComplianceResults.JSON_PROPERTY_TRLINK_REGISTRATION, + ComplianceResults.JSON_PROPERTY_TRLINK_DESTINATIONS }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", @@ -49,6 +51,12 @@ public class ComplianceResults { public static final String JSON_PROPERTY_AML_REGISTRATION = "amlRegistration"; @jakarta.annotation.Nullable private AmlRegistrationResult amlRegistration; + public static final String JSON_PROPERTY_TRLINK_REGISTRATION = "trlinkRegistration"; + @jakarta.annotation.Nullable private TRLinkRegistrationResult trlinkRegistration; + + public static final String JSON_PROPERTY_TRLINK_DESTINATIONS = "trlinkDestinations"; + @jakarta.annotation.Nullable private List trlinkDestinations; + public ComplianceResults() {} public ComplianceResults aml(@jakarta.annotation.Nullable ComplianceScreeningResult aml) { @@ -178,6 +186,64 @@ public void setAmlRegistration( this.amlRegistration = amlRegistration; } + public ComplianceResults trlinkRegistration( + @jakarta.annotation.Nullable TRLinkRegistrationResult trlinkRegistration) { + this.trlinkRegistration = trlinkRegistration; + return this; + } + + /** + * Get trlinkRegistration + * + * @return trlinkRegistration + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRLINK_REGISTRATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkRegistrationResult getTrlinkRegistration() { + return trlinkRegistration; + } + + @JsonProperty(JSON_PROPERTY_TRLINK_REGISTRATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTrlinkRegistration( + @jakarta.annotation.Nullable TRLinkRegistrationResult trlinkRegistration) { + this.trlinkRegistration = trlinkRegistration; + } + + public ComplianceResults trlinkDestinations( + @jakarta.annotation.Nullable List trlinkDestinations) { + this.trlinkDestinations = trlinkDestinations; + return this; + } + + public ComplianceResults addTrlinkDestinationsItem(TRLinkResult trlinkDestinationsItem) { + if (this.trlinkDestinations == null) { + this.trlinkDestinations = new ArrayList<>(); + } + this.trlinkDestinations.add(trlinkDestinationsItem); + return this; + } + + /** + * The list of TRLink destination screening results. + * + * @return trlinkDestinations + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRLINK_DESTINATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getTrlinkDestinations() { + return trlinkDestinations; + } + + @JsonProperty(JSON_PROPERTY_TRLINK_DESTINATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTrlinkDestinations( + @jakarta.annotation.Nullable List trlinkDestinations) { + this.trlinkDestinations = trlinkDestinations; + } + /** Return true if this ComplianceResults object is equal to o. */ @Override public boolean equals(Object o) { @@ -192,12 +258,15 @@ public boolean equals(Object o) { && Objects.equals(this.tr, complianceResults.tr) && Objects.equals(this.amlList, complianceResults.amlList) && Objects.equals(this.status, complianceResults.status) - && Objects.equals(this.amlRegistration, complianceResults.amlRegistration); + && Objects.equals(this.amlRegistration, complianceResults.amlRegistration) + && Objects.equals(this.trlinkRegistration, complianceResults.trlinkRegistration) + && Objects.equals(this.trlinkDestinations, complianceResults.trlinkDestinations); } @Override public int hashCode() { - return Objects.hash(aml, tr, amlList, status, amlRegistration); + return Objects.hash( + aml, tr, amlList, status, amlRegistration, trlinkRegistration, trlinkDestinations); } @Override @@ -209,6 +278,12 @@ public String toString() { sb.append(" amlList: ").append(toIndentedString(amlList)).append("\n"); sb.append(" status: ").append(toIndentedString(status)).append("\n"); sb.append(" amlRegistration: ").append(toIndentedString(amlRegistration)).append("\n"); + sb.append(" trlinkRegistration: ") + .append(toIndentedString(trlinkRegistration)) + .append("\n"); + sb.append(" trlinkDestinations: ") + .append(toIndentedString(trlinkDestinations)) + .append("\n"); sb.append("}"); return sb.toString(); } @@ -304,6 +379,36 @@ public String toUrlQueryString(String prefix) { joiner.add(getAmlRegistration().toUrlQueryString(prefix + "amlRegistration" + suffix)); } + // add `trlinkRegistration` to the URL query string + if (getTrlinkRegistration() != null) { + joiner.add( + getTrlinkRegistration() + .toUrlQueryString(prefix + "trlinkRegistration" + suffix)); + } + + // add `trlinkDestinations` to the URL query string + if (getTrlinkDestinations() != null) { + for (int i = 0; i < getTrlinkDestinations().size(); i++) { + if (getTrlinkDestinations().get(i) != null) { + joiner.add( + getTrlinkDestinations() + .get(i) + .toUrlQueryString( + String.format( + "%strlinkDestinations%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResult.java b/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResult.java index faf33512..902f8e57 100644 --- a/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResult.java +++ b/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResult.java @@ -23,33 +23,71 @@ import java.util.Objects; import java.util.StringJoiner; -/** ComplianceScreeningResult */ +/** + * The result of the AML/Travel Rule screening. This unified schema contains all fields that may be + * returned for both AML and Travel Rule screening results. Not all fields will be present in every + * response - the actual fields depend on the screening type and provider. + */ @JsonPropertyOrder({ ComplianceScreeningResult.JSON_PROPERTY_PROVIDER, ComplianceScreeningResult.JSON_PROPERTY_PAYLOAD, - ComplianceScreeningResult.JSON_PROPERTY_BYPASS_REASON, + ComplianceScreeningResult.JSON_PROPERTY_TIMESTAMP, ComplianceScreeningResult.JSON_PROPERTY_SCREENING_STATUS, - ComplianceScreeningResult.JSON_PROPERTY_TIMESTAMP + ComplianceScreeningResult.JSON_PROPERTY_BYPASS_REASON, + ComplianceScreeningResult.JSON_PROPERTY_STATUS, + ComplianceScreeningResult.JSON_PROPERTY_PREV_STATUS, + ComplianceScreeningResult.JSON_PROPERTY_PREV_BYPASS_REASON, + ComplianceScreeningResult.JSON_PROPERTY_VERDICT, + ComplianceScreeningResult.JSON_PROPERTY_RISK, + ComplianceScreeningResult.JSON_PROPERTY_EXTENDED_RISK, + ComplianceScreeningResult.JSON_PROPERTY_EXTERNAL_ID, + ComplianceScreeningResult.JSON_PROPERTY_CUSTOMER_REF_ID, + ComplianceScreeningResult.JSON_PROPERTY_REF_ID, + ComplianceScreeningResult.JSON_PROPERTY_CATEGORY, + ComplianceScreeningResult.JSON_PROPERTY_CATEGORY_ID, + ComplianceScreeningResult.JSON_PROPERTY_DEST_ADDRESS, + ComplianceScreeningResult.JSON_PROPERTY_DEST_TAG, + ComplianceScreeningResult.JSON_PROPERTY_DEST_RECORD_ID, + ComplianceScreeningResult.JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE, + ComplianceScreeningResult.JSON_PROPERTY_AML_RESULT, + ComplianceScreeningResult.JSON_PROPERTY_RESULT, + ComplianceScreeningResult.JSON_PROPERTY_DETAILS_MESSAGE, + ComplianceScreeningResult.JSON_PROPERTY_MATCHED_ALERT, + ComplianceScreeningResult.JSON_PROPERTY_MATCHED_RULE, + ComplianceScreeningResult.JSON_PROPERTY_MATCHED_PRESCREENING_RULE, + ComplianceScreeningResult.JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE, + ComplianceScreeningResult.JSON_PROPERTY_CUSTOMER_INTEGRATION_ID, + ComplianceScreeningResult.JSON_PROPERTY_CUSTOMER_SHORT_NAME, + ComplianceScreeningResult.JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class ComplianceScreeningResult { - /** Screening provider */ - public enum ProviderEnum { - CHAINALYSIS(String.valueOf("CHAINALYSIS")), + public static final String JSON_PROPERTY_PROVIDER = "provider"; + @jakarta.annotation.Nullable private String provider; - ELLIPTIC(String.valueOf("ELLIPTIC")), + public static final String JSON_PROPERTY_PAYLOAD = "payload"; + @jakarta.annotation.Nullable private Object payload; - CHAINALYSIS_V2(String.valueOf("CHAINALYSIS_V2")), + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nullable private BigDecimal timestamp; + + /** Current status of the screening process */ + public enum ScreeningStatusEnum { + COMPLETED(String.valueOf("COMPLETED")), - ELLIPTIC_HOLISTIC(String.valueOf("ELLIPTIC_HOLISTIC")), + PENDING(String.valueOf("PENDING")), - NONE(String.valueOf("NONE")); + BYPASSED(String.valueOf("BYPASSED")), + + FAILED(String.valueOf("FAILED")), + + FROZEN(String.valueOf("FROZEN")); private String value; - ProviderEnum(String value) { + ScreeningStatusEnum(String value) { this.value = value; } @@ -64,8 +102,8 @@ public String toString() { } @JsonCreator - public static ProviderEnum fromValue(String value) { - for (ProviderEnum b : ProviderEnum.values()) { + public static ScreeningStatusEnum fromValue(String value) { + for (ScreeningStatusEnum b : ScreeningStatusEnum.values()) { if (b.value.equals(value)) { return b; } @@ -74,228 +112,810 @@ public static ProviderEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_PROVIDER = "provider"; - @jakarta.annotation.Nullable private ProviderEnum provider; + public static final String JSON_PROPERTY_SCREENING_STATUS = "screeningStatus"; + @jakarta.annotation.Nullable private ScreeningStatusEnum screeningStatus; - public static final String JSON_PROPERTY_PAYLOAD = "payload"; - @jakarta.annotation.Nullable private Object payload; + public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; + @jakarta.annotation.Nullable private String bypassReason; - /** Reason AML screening was bypassed */ - public enum BypassReasonEnum { - MANUAL(String.valueOf("MANUAL")), + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nullable private AmlStatusEnum status; - UNSUPPORTED_ASSET(String.valueOf("UNSUPPORTED_ASSET")), + public static final String JSON_PROPERTY_PREV_STATUS = "prevStatus"; + @jakarta.annotation.Nullable private AmlStatusEnum prevStatus; - BYPASSED_FAILURE(String.valueOf("BYPASSED_FAILURE")), + public static final String JSON_PROPERTY_PREV_BYPASS_REASON = "prevBypassReason"; + @jakarta.annotation.Nullable private String prevBypassReason; - UNSUPPORTED_ROUTE(String.valueOf("UNSUPPORTED_ROUTE")), + public static final String JSON_PROPERTY_VERDICT = "verdict"; + @jakarta.annotation.Nullable private ScreeningVerdictEnum verdict; - PASSED_BY_POLICY(String.valueOf("PASSED_BY_POLICY")), + public static final String JSON_PROPERTY_RISK = "risk"; + @jakarta.annotation.Nullable private ScreeningRiskLevelEnum risk; - TIMED_OUT(String.valueOf("TIMED_OUT")), + public static final String JSON_PROPERTY_EXTENDED_RISK = "extendedRisk"; + @jakarta.annotation.Nullable private ScreeningRiskLevelEnum extendedRisk; - BAD_CREDENTIALS(String.valueOf("BAD_CREDENTIALS")), + public static final String JSON_PROPERTY_EXTERNAL_ID = "externalId"; + @jakarta.annotation.Nullable private String externalId; - CONFIGURATION_ERROR(String.valueOf("CONFIGURATION_ERROR")), + public static final String JSON_PROPERTY_CUSTOMER_REF_ID = "customerRefId"; + @jakarta.annotation.Nullable private String customerRefId; - DROPPED_BY_BLOCKCHAIN(String.valueOf("DROPPED_BY_BLOCKCHAIN")), + public static final String JSON_PROPERTY_REF_ID = "refId"; + @jakarta.annotation.Nullable private String refId; - PROCESS_DISMISSED(String.valueOf("PROCESS_DISMISSED")); + public static final String JSON_PROPERTY_CATEGORY = "category"; + @jakarta.annotation.Nullable private String category; - private String value; + public static final String JSON_PROPERTY_CATEGORY_ID = "categoryId"; + @jakarta.annotation.Nullable private BigDecimal categoryId; - BypassReasonEnum(String value) { - this.value = value; - } + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; - @JsonValue - public String getValue() { - return value; - } + public static final String JSON_PROPERTY_DEST_TAG = "destTag"; + @jakarta.annotation.Nullable private String destTag; - @Override - public String toString() { - return String.valueOf(value); - } + public static final String JSON_PROPERTY_DEST_RECORD_ID = "destRecordId"; + @jakarta.annotation.Nullable private String destRecordId; - @JsonCreator - public static BypassReasonEnum fromValue(String value) { - for (BypassReasonEnum b : BypassReasonEnum.values()) { - if (b.value.equals(value)) { - return b; - } - } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); - } + public static final String JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE = + "addressResolutionSignature"; + @jakarta.annotation.Nullable private String addressResolutionSignature; + + public static final String JSON_PROPERTY_AML_RESULT = "amlResult"; + @jakarta.annotation.Nullable private AmlResult amlResult; + + public static final String JSON_PROPERTY_RESULT = "result"; + @jakarta.annotation.Nullable private TravelRuleResult result; + + public static final String JSON_PROPERTY_DETAILS_MESSAGE = "detailsMessage"; + @jakarta.annotation.Nullable private String detailsMessage; + + public static final String JSON_PROPERTY_MATCHED_ALERT = "matchedAlert"; + @jakarta.annotation.Nullable private Object matchedAlert; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private Object matchedRule; + + public static final String JSON_PROPERTY_MATCHED_PRESCREENING_RULE = "matchedPrescreeningRule"; + @jakarta.annotation.Nullable private TravelRulePrescreeningRule matchedPrescreeningRule; + + public static final String JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE = + "matchedNoTrmScreeningRule"; + @jakarta.annotation.Nullable private Object matchedNoTrmScreeningRule; + + public static final String JSON_PROPERTY_CUSTOMER_INTEGRATION_ID = "customerIntegrationId"; + @jakarta.annotation.Nullable private String customerIntegrationId; + + public static final String JSON_PROPERTY_CUSTOMER_SHORT_NAME = "customerShortName"; + @jakarta.annotation.Nullable private String customerShortName; + + public static final String JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID = "travelRuleMessageId"; + @jakarta.annotation.Nullable private String travelRuleMessageId; + + public ComplianceScreeningResult() {} + + public ComplianceScreeningResult provider(@jakarta.annotation.Nullable String provider) { + this.provider = provider; + return this; } - public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; - @jakarta.annotation.Nullable private BypassReasonEnum bypassReason; + /** + * The AML/Travel Rule provider name. For AML: ELLIPTIC, CHAINALYSIS, SCORECHAIN, + * MERKLE_SCIENCE, etc. For Travel Rule: NOTABENE, SYGNA, or any TRLink provider name + * + * @return provider + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getProvider() { + return provider; + } - /** Gets or Sets screeningStatus */ - public enum ScreeningStatusEnum { - COMPLETED(String.valueOf("COMPLETED")), + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProvider(@jakarta.annotation.Nullable String provider) { + this.provider = provider; + } - PENDING(String.valueOf("PENDING")), + public ComplianceScreeningResult payload(@jakarta.annotation.Nullable Object payload) { + this.payload = payload; + return this; + } - BYPASSED(String.valueOf("BYPASSED")), + /** + * The raw payload of the screening result from the provider. The payload is a JSON object that + * contains the screening result. The payload structure is different for each screening + * provider. This field contains the complete, unmodified response from the screening service. + * + * @return payload + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getPayload() { + return payload; + } - FAILED(String.valueOf("FAILED")), + @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPayload(@jakarta.annotation.Nullable Object payload) { + this.payload = payload; + } - FROZEN(String.valueOf("FROZEN")); + public ComplianceScreeningResult timestamp(@jakarta.annotation.Nullable BigDecimal timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Unix timestamp in milliseconds when the screening result was generated + * + * @return timestamp + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimestamp(@jakarta.annotation.Nullable BigDecimal timestamp) { + this.timestamp = timestamp; + } + + public ComplianceScreeningResult screeningStatus( + @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { + this.screeningStatus = screeningStatus; + return this; + } + + /** + * Current status of the screening process + * + * @return screeningStatus + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningStatusEnum getScreeningStatus() { + return screeningStatus; + } + + @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setScreeningStatus( + @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { + this.screeningStatus = screeningStatus; + } + + public ComplianceScreeningResult bypassReason( + @jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + return this; + } + + /** + * Reason for bypassing the screening, if applicable. For AML: SANCTIONS_SCREENING_BYPASS, + * SANCTIONS_RECIPIENT_BYPASS, etc. For Travel Rule: BELOW_THRESHOLD, NO_TRM_AVAILABLE, etc. + * + * @return bypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBypassReason() { + return bypassReason; + } + + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + } + + public ComplianceScreeningResult status(@jakarta.annotation.Nullable AmlStatusEnum status) { + this.status = status; + return this; + } + + /** + * Get status + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmlStatusEnum getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setStatus(@jakarta.annotation.Nullable AmlStatusEnum status) { + this.status = status; + } + + public ComplianceScreeningResult prevStatus( + @jakarta.annotation.Nullable AmlStatusEnum prevStatus) { + this.prevStatus = prevStatus; + return this; + } + + /** + * Get prevStatus + * + * @return prevStatus + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PREV_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmlStatusEnum getPrevStatus() { + return prevStatus; + } + + @JsonProperty(JSON_PROPERTY_PREV_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPrevStatus(@jakarta.annotation.Nullable AmlStatusEnum prevStatus) { + this.prevStatus = prevStatus; + } + + public ComplianceScreeningResult prevBypassReason( + @jakarta.annotation.Nullable String prevBypassReason) { + this.prevBypassReason = prevBypassReason; + return this; + } + + /** + * Previous bypass reason before the current bypass reason change + * + * @return prevBypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PREV_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getPrevBypassReason() { + return prevBypassReason; + } + + @JsonProperty(JSON_PROPERTY_PREV_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPrevBypassReason(@jakarta.annotation.Nullable String prevBypassReason) { + this.prevBypassReason = prevBypassReason; + } + + public ComplianceScreeningResult verdict( + @jakarta.annotation.Nullable ScreeningVerdictEnum verdict) { + this.verdict = verdict; + return this; + } + + /** + * Get verdict + * + * @return verdict + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningVerdictEnum getVerdict() { + return verdict; + } + + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVerdict(@jakarta.annotation.Nullable ScreeningVerdictEnum verdict) { + this.verdict = verdict; + } + + public ComplianceScreeningResult risk( + @jakarta.annotation.Nullable ScreeningRiskLevelEnum risk) { + this.risk = risk; + return this; + } + + /** + * Get risk + * + * @return risk + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningRiskLevelEnum getRisk() { + return risk; + } + + @JsonProperty(JSON_PROPERTY_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRisk(@jakarta.annotation.Nullable ScreeningRiskLevelEnum risk) { + this.risk = risk; + } + + public ComplianceScreeningResult extendedRisk( + @jakarta.annotation.Nullable ScreeningRiskLevelEnum extendedRisk) { + this.extendedRisk = extendedRisk; + return this; + } + + /** + * Get extendedRisk + * + * @return extendedRisk + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTENDED_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningRiskLevelEnum getExtendedRisk() { + return extendedRisk; + } + + @JsonProperty(JSON_PROPERTY_EXTENDED_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExtendedRisk(@jakarta.annotation.Nullable ScreeningRiskLevelEnum extendedRisk) { + this.extendedRisk = extendedRisk; + } + + public ComplianceScreeningResult externalId(@jakarta.annotation.Nullable String externalId) { + this.externalId = externalId; + return this; + } + + /** + * External identifier for the screening (provider-specific) + * + * @return externalId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getExternalId() { + return externalId; + } + + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalId(@jakarta.annotation.Nullable String externalId) { + this.externalId = externalId; + } + + public ComplianceScreeningResult customerRefId( + @jakarta.annotation.Nullable String customerRefId) { + this.customerRefId = customerRefId; + return this; + } + + /** + * Customer-provided reference identifier for tracking + * + * @return customerRefId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerRefId() { + return customerRefId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerRefId(@jakarta.annotation.Nullable String customerRefId) { + this.customerRefId = customerRefId; + } + + public ComplianceScreeningResult refId(@jakarta.annotation.Nullable String refId) { + this.refId = refId; + return this; + } + + /** + * Internal reference identifier + * + * @return refId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getRefId() { + return refId; + } + + @JsonProperty(JSON_PROPERTY_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRefId(@jakarta.annotation.Nullable String refId) { + this.refId = refId; + } + + public ComplianceScreeningResult category(@jakarta.annotation.Nullable String category) { + this.category = category; + return this; + } + + /** + * Risk category classification. Examples: EXCHANGE, GAMBLING, MIXER, DARKNET_SERVICE, + * SANCTIONED_ENTITY + * + * @return category + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCategory() { + return category; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategory(@jakarta.annotation.Nullable String category) { + this.category = category; + } + + public ComplianceScreeningResult categoryId( + @jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + return this; + } + + /** + * Numeric identifier for the risk category + * + * @return categoryId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getCategoryId() { + return categoryId; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategoryId(@jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + } + + public ComplianceScreeningResult destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * The destination blockchain address associated with the screening + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ComplianceScreeningResult destTag(@jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + return this; + } + + /** + * Destination tag or memo (for chains that support it like XRP, XLM) + * + * @return destTag + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestTag() { + return destTag; + } + + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestTag(@jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + } + + public ComplianceScreeningResult destRecordId( + @jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + return this; + } + + /** + * The destination record identifier used by the screening provider + * + * @return destRecordId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestRecordId() { + return destRecordId; + } + + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestRecordId(@jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + } + + public ComplianceScreeningResult addressResolutionSignature( + @jakarta.annotation.Nullable String addressResolutionSignature) { + this.addressResolutionSignature = addressResolutionSignature; + return this; + } + + /** + * Cryptographic signature for address resolution verification + * + * @return addressResolutionSignature + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAddressResolutionSignature() { + return addressResolutionSignature; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAddressResolutionSignature( + @jakarta.annotation.Nullable String addressResolutionSignature) { + this.addressResolutionSignature = addressResolutionSignature; + } + + public ComplianceScreeningResult amlResult(@jakarta.annotation.Nullable AmlResult amlResult) { + this.amlResult = amlResult; + return this; + } + + /** + * Get amlResult + * + * @return amlResult + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AML_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmlResult getAmlResult() { + return amlResult; + } + + @JsonProperty(JSON_PROPERTY_AML_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmlResult(@jakarta.annotation.Nullable AmlResult amlResult) { + this.amlResult = amlResult; + } + + public ComplianceScreeningResult result(@jakarta.annotation.Nullable TravelRuleResult result) { + this.result = result; + return this; + } + + /** + * Get result + * + * @return result + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleResult getResult() { + return result; + } + + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setResult(@jakarta.annotation.Nullable TravelRuleResult result) { + this.result = result; + } + + public ComplianceScreeningResult detailsMessage( + @jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + return this; + } - private String value; + /** + * Additional human-readable details or message about the screening result + * + * @return detailsMessage + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDetailsMessage() { + return detailsMessage; + } - ScreeningStatusEnum(String value) { - this.value = value; - } + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDetailsMessage(@jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + } - @JsonValue - public String getValue() { - return value; - } + public ComplianceScreeningResult matchedAlert( + @jakarta.annotation.Nullable Object matchedAlert) { + this.matchedAlert = matchedAlert; + return this; + } - @Override - public String toString() { - return String.valueOf(value); - } + /** + * Information about the AML alert that was matched, if any. Contains details about the specific + * alert that triggered during screening. + * + * @return matchedAlert + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getMatchedAlert() { + return matchedAlert; + } - @JsonCreator - public static ScreeningStatusEnum fromValue(String value) { - for (ScreeningStatusEnum b : ScreeningStatusEnum.values()) { - if (b.value.equals(value)) { - return b; - } - } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); - } + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedAlert(@jakarta.annotation.Nullable Object matchedAlert) { + this.matchedAlert = matchedAlert; } - public static final String JSON_PROPERTY_SCREENING_STATUS = "screeningStatus"; - @jakarta.annotation.Nullable private ScreeningStatusEnum screeningStatus; + public ComplianceScreeningResult matchedRule(@jakarta.annotation.Nullable Object matchedRule) { + this.matchedRule = matchedRule; + return this; + } - public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; - @jakarta.annotation.Nullable private BigDecimal timestamp; + /** + * The matched rule information for this screening result. Contains details about which + * screening rule was applied and matched. + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getMatchedRule() { + return matchedRule; + } - public ComplianceScreeningResult() {} + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule(@jakarta.annotation.Nullable Object matchedRule) { + this.matchedRule = matchedRule; + } - public ComplianceScreeningResult provider(@jakarta.annotation.Nullable ProviderEnum provider) { - this.provider = provider; + public ComplianceScreeningResult matchedPrescreeningRule( + @jakarta.annotation.Nullable TravelRulePrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; return this; } /** - * Screening provider + * Get matchedPrescreeningRule * - * @return provider + * @return matchedPrescreeningRule */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public ProviderEnum getProvider() { - return provider; + public TravelRulePrescreeningRule getMatchedPrescreeningRule() { + return matchedPrescreeningRule; } - @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setProvider(@jakarta.annotation.Nullable ProviderEnum provider) { - this.provider = provider; + public void setMatchedPrescreeningRule( + @jakarta.annotation.Nullable TravelRulePrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; } - public ComplianceScreeningResult payload(@jakarta.annotation.Nullable Object payload) { - this.payload = payload; + public ComplianceScreeningResult matchedNoTrmScreeningRule( + @jakarta.annotation.Nullable Object matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; return this; } /** - * The payload of the screening result. The payload is a JSON object that contains the screening - * result. The payload is different for each screening provider. + * Matched no-TRM (Travel Rule Message) screening rule details. Used when TRLink screening + * detects a missing TRM scenario. * - * @return payload + * @return matchedNoTrmScreeningRule */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public Object getPayload() { - return payload; + public Object getMatchedNoTrmScreeningRule() { + return matchedNoTrmScreeningRule; } - @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setPayload(@jakarta.annotation.Nullable Object payload) { - this.payload = payload; + public void setMatchedNoTrmScreeningRule( + @jakarta.annotation.Nullable Object matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; } - public ComplianceScreeningResult bypassReason( - @jakarta.annotation.Nullable BypassReasonEnum bypassReason) { - this.bypassReason = bypassReason; + public ComplianceScreeningResult customerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; return this; } /** - * Reason AML screening was bypassed + * Customer integration identifier used by Travel Rule providers * - * @return bypassReason + * @return customerIntegrationId */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public BypassReasonEnum getBypassReason() { - return bypassReason; + public String getCustomerIntegrationId() { + return customerIntegrationId; } - @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setBypassReason(@jakarta.annotation.Nullable BypassReasonEnum bypassReason) { - this.bypassReason = bypassReason; + public void setCustomerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; } - public ComplianceScreeningResult screeningStatus( - @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { - this.screeningStatus = screeningStatus; + public ComplianceScreeningResult customerShortName( + @jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; return this; } /** - * Get screeningStatus + * Customer short name registered with Travel Rule providers * - * @return screeningStatus + * @return customerShortName */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public ScreeningStatusEnum getScreeningStatus() { - return screeningStatus; + public String getCustomerShortName() { + return customerShortName; } - @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setScreeningStatus( - @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { - this.screeningStatus = screeningStatus; + public void setCustomerShortName(@jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; } - public ComplianceScreeningResult timestamp(@jakarta.annotation.Nullable BigDecimal timestamp) { - this.timestamp = timestamp; + public ComplianceScreeningResult travelRuleMessageId( + @jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; return this; } /** - * Get timestamp + * Travel rule message identifier for linking and tracking across providers * - * @return timestamp + * @return travelRuleMessageId */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public BigDecimal getTimestamp() { - return timestamp; + public String getTravelRuleMessageId() { + return travelRuleMessageId; } - @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTimestamp(@jakarta.annotation.Nullable BigDecimal timestamp) { - this.timestamp = timestamp; + public void setTravelRuleMessageId(@jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; } /** Return true if this ComplianceScreeningResult object is equal to o. */ @@ -310,14 +930,78 @@ public boolean equals(Object o) { ComplianceScreeningResult complianceScreeningResult = (ComplianceScreeningResult) o; return Objects.equals(this.provider, complianceScreeningResult.provider) && Objects.equals(this.payload, complianceScreeningResult.payload) - && Objects.equals(this.bypassReason, complianceScreeningResult.bypassReason) + && Objects.equals(this.timestamp, complianceScreeningResult.timestamp) && Objects.equals(this.screeningStatus, complianceScreeningResult.screeningStatus) - && Objects.equals(this.timestamp, complianceScreeningResult.timestamp); + && Objects.equals(this.bypassReason, complianceScreeningResult.bypassReason) + && Objects.equals(this.status, complianceScreeningResult.status) + && Objects.equals(this.prevStatus, complianceScreeningResult.prevStatus) + && Objects.equals(this.prevBypassReason, complianceScreeningResult.prevBypassReason) + && Objects.equals(this.verdict, complianceScreeningResult.verdict) + && Objects.equals(this.risk, complianceScreeningResult.risk) + && Objects.equals(this.extendedRisk, complianceScreeningResult.extendedRisk) + && Objects.equals(this.externalId, complianceScreeningResult.externalId) + && Objects.equals(this.customerRefId, complianceScreeningResult.customerRefId) + && Objects.equals(this.refId, complianceScreeningResult.refId) + && Objects.equals(this.category, complianceScreeningResult.category) + && Objects.equals(this.categoryId, complianceScreeningResult.categoryId) + && Objects.equals(this.destAddress, complianceScreeningResult.destAddress) + && Objects.equals(this.destTag, complianceScreeningResult.destTag) + && Objects.equals(this.destRecordId, complianceScreeningResult.destRecordId) + && Objects.equals( + this.addressResolutionSignature, + complianceScreeningResult.addressResolutionSignature) + && Objects.equals(this.amlResult, complianceScreeningResult.amlResult) + && Objects.equals(this.result, complianceScreeningResult.result) + && Objects.equals(this.detailsMessage, complianceScreeningResult.detailsMessage) + && Objects.equals(this.matchedAlert, complianceScreeningResult.matchedAlert) + && Objects.equals(this.matchedRule, complianceScreeningResult.matchedRule) + && Objects.equals( + this.matchedPrescreeningRule, + complianceScreeningResult.matchedPrescreeningRule) + && Objects.equals( + this.matchedNoTrmScreeningRule, + complianceScreeningResult.matchedNoTrmScreeningRule) + && Objects.equals( + this.customerIntegrationId, complianceScreeningResult.customerIntegrationId) + && Objects.equals( + this.customerShortName, complianceScreeningResult.customerShortName) + && Objects.equals( + this.travelRuleMessageId, complianceScreeningResult.travelRuleMessageId); } @Override public int hashCode() { - return Objects.hash(provider, payload, bypassReason, screeningStatus, timestamp); + return Objects.hash( + provider, + payload, + timestamp, + screeningStatus, + bypassReason, + status, + prevStatus, + prevBypassReason, + verdict, + risk, + extendedRisk, + externalId, + customerRefId, + refId, + category, + categoryId, + destAddress, + destTag, + destRecordId, + addressResolutionSignature, + amlResult, + result, + detailsMessage, + matchedAlert, + matchedRule, + matchedPrescreeningRule, + matchedNoTrmScreeningRule, + customerIntegrationId, + customerShortName, + travelRuleMessageId); } @Override @@ -326,9 +1010,46 @@ public String toString() { sb.append("class ComplianceScreeningResult {\n"); sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); sb.append(" payload: ").append(toIndentedString(payload)).append("\n"); - sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); - sb.append(" screeningStatus: ").append(toIndentedString(screeningStatus)).append("\n"); sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" screeningStatus: ").append(toIndentedString(screeningStatus)).append("\n"); + sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" prevStatus: ").append(toIndentedString(prevStatus)).append("\n"); + sb.append(" prevBypassReason: ").append(toIndentedString(prevBypassReason)).append("\n"); + sb.append(" verdict: ").append(toIndentedString(verdict)).append("\n"); + sb.append(" risk: ").append(toIndentedString(risk)).append("\n"); + sb.append(" extendedRisk: ").append(toIndentedString(extendedRisk)).append("\n"); + sb.append(" externalId: ").append(toIndentedString(externalId)).append("\n"); + sb.append(" customerRefId: ").append(toIndentedString(customerRefId)).append("\n"); + sb.append(" refId: ").append(toIndentedString(refId)).append("\n"); + sb.append(" category: ").append(toIndentedString(category)).append("\n"); + sb.append(" categoryId: ").append(toIndentedString(categoryId)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" destTag: ").append(toIndentedString(destTag)).append("\n"); + sb.append(" destRecordId: ").append(toIndentedString(destRecordId)).append("\n"); + sb.append(" addressResolutionSignature: ") + .append(toIndentedString(addressResolutionSignature)) + .append("\n"); + sb.append(" amlResult: ").append(toIndentedString(amlResult)).append("\n"); + sb.append(" result: ").append(toIndentedString(result)).append("\n"); + sb.append(" detailsMessage: ").append(toIndentedString(detailsMessage)).append("\n"); + sb.append(" matchedAlert: ").append(toIndentedString(matchedAlert)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append(" matchedPrescreeningRule: ") + .append(toIndentedString(matchedPrescreeningRule)) + .append("\n"); + sb.append(" matchedNoTrmScreeningRule: ") + .append(toIndentedString(matchedNoTrmScreeningRule)) + .append("\n"); + sb.append(" customerIntegrationId: ") + .append(toIndentedString(customerIntegrationId)) + .append("\n"); + sb.append(" customerShortName: ") + .append(toIndentedString(customerShortName)) + .append("\n"); + sb.append(" travelRuleMessageId: ") + .append(toIndentedString(travelRuleMessageId)) + .append("\n"); sb.append("}"); return sb.toString(); } @@ -396,14 +1117,14 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getPayload())))); } - // add `bypassReason` to the URL query string - if (getBypassReason() != null) { + // add `timestamp` to the URL query string + if (getTimestamp() != null) { joiner.add( String.format( - "%sbypassReason%s=%s", + "%stimestamp%s=%s", prefix, suffix, - ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); } // add `screeningStatus` to the URL query string @@ -416,14 +1137,255 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getScreeningStatus())))); } - // add `timestamp` to the URL query string - if (getTimestamp() != null) { + // add `bypassReason` to the URL query string + if (getBypassReason() != null) { joiner.add( String.format( - "%stimestamp%s=%s", + "%sbypassReason%s=%s", prefix, suffix, - ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + } + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `prevStatus` to the URL query string + if (getPrevStatus() != null) { + joiner.add( + String.format( + "%sprevStatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPrevStatus())))); + } + + // add `prevBypassReason` to the URL query string + if (getPrevBypassReason() != null) { + joiner.add( + String.format( + "%sprevBypassReason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPrevBypassReason())))); + } + + // add `verdict` to the URL query string + if (getVerdict() != null) { + joiner.add( + String.format( + "%sverdict%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getVerdict())))); + } + + // add `risk` to the URL query string + if (getRisk() != null) { + joiner.add( + String.format( + "%srisk%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRisk())))); + } + + // add `extendedRisk` to the URL query string + if (getExtendedRisk() != null) { + joiner.add( + String.format( + "%sextendedRisk%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExtendedRisk())))); + } + + // add `externalId` to the URL query string + if (getExternalId() != null) { + joiner.add( + String.format( + "%sexternalId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExternalId())))); + } + + // add `customerRefId` to the URL query string + if (getCustomerRefId() != null) { + joiner.add( + String.format( + "%scustomerRefId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerRefId())))); + } + + // add `refId` to the URL query string + if (getRefId() != null) { + joiner.add( + String.format( + "%srefId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRefId())))); + } + + // add `category` to the URL query string + if (getCategory() != null) { + joiner.add( + String.format( + "%scategory%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategory())))); + } + + // add `categoryId` to the URL query string + if (getCategoryId() != null) { + joiner.add( + String.format( + "%scategoryId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategoryId())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `destTag` to the URL query string + if (getDestTag() != null) { + joiner.add( + String.format( + "%sdestTag%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestTag())))); + } + + // add `destRecordId` to the URL query string + if (getDestRecordId() != null) { + joiner.add( + String.format( + "%sdestRecordId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestRecordId())))); + } + + // add `addressResolutionSignature` to the URL query string + if (getAddressResolutionSignature() != null) { + joiner.add( + String.format( + "%saddressResolutionSignature%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getAddressResolutionSignature())))); + } + + // add `amlResult` to the URL query string + if (getAmlResult() != null) { + joiner.add(getAmlResult().toUrlQueryString(prefix + "amlResult" + suffix)); + } + + // add `result` to the URL query string + if (getResult() != null) { + joiner.add(getResult().toUrlQueryString(prefix + "result" + suffix)); + } + + // add `detailsMessage` to the URL query string + if (getDetailsMessage() != null) { + joiner.add( + String.format( + "%sdetailsMessage%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDetailsMessage())))); + } + + // add `matchedAlert` to the URL query string + if (getMatchedAlert() != null) { + joiner.add( + String.format( + "%smatchedAlert%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMatchedAlert())))); + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add( + String.format( + "%smatchedRule%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMatchedRule())))); + } + + // add `matchedPrescreeningRule` to the URL query string + if (getMatchedPrescreeningRule() != null) { + joiner.add( + getMatchedPrescreeningRule() + .toUrlQueryString(prefix + "matchedPrescreeningRule" + suffix)); + } + + // add `matchedNoTrmScreeningRule` to the URL query string + if (getMatchedNoTrmScreeningRule() != null) { + joiner.add( + String.format( + "%smatchedNoTrmScreeningRule%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getMatchedNoTrmScreeningRule())))); + } + + // add `customerIntegrationId` to the URL query string + if (getCustomerIntegrationId() != null) { + joiner.add( + String.format( + "%scustomerIntegrationId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getCustomerIntegrationId())))); + } + + // add `customerShortName` to the URL query string + if (getCustomerShortName() != null) { + joiner.add( + String.format( + "%scustomerShortName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerShortName())))); + } + + // add `travelRuleMessageId` to the URL query string + if (getTravelRuleMessageId() != null) { + joiner.add( + String.format( + "%stravelRuleMessageId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTravelRuleMessageId())))); } return joiner.toString(); diff --git a/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayload.java b/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayload.java index f7c2ff2f..6fe22c4e 100644 --- a/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayload.java +++ b/src/main/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayload.java @@ -23,13 +23,42 @@ import java.util.Objects; import java.util.StringJoiner; -/** The result of the Travel Rule screening. */ +/** + * The result of the AML/Travel Rule screening. This unified schema contains all fields that may be + * returned for both AML and Travel Rule screening results. Not all fields will be present in every + * response - the actual fields depend on the screening type and provider. + */ @JsonPropertyOrder({ ComplianceScreeningResultFullPayload.JSON_PROPERTY_PROVIDER, ComplianceScreeningResultFullPayload.JSON_PROPERTY_PAYLOAD, - ComplianceScreeningResultFullPayload.JSON_PROPERTY_BYPASS_REASON, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_TIMESTAMP, ComplianceScreeningResultFullPayload.JSON_PROPERTY_SCREENING_STATUS, - ComplianceScreeningResultFullPayload.JSON_PROPERTY_TIMESTAMP + ComplianceScreeningResultFullPayload.JSON_PROPERTY_BYPASS_REASON, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_STATUS, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_PREV_STATUS, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_PREV_BYPASS_REASON, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_VERDICT, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_RISK, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_EXTENDED_RISK, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_EXTERNAL_ID, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_CUSTOMER_REF_ID, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_REF_ID, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_CATEGORY, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_CATEGORY_ID, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_DEST_ADDRESS, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_DEST_TAG, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_DEST_RECORD_ID, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_AML_RESULT, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_RESULT, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_DETAILS_MESSAGE, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_MATCHED_ALERT, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_MATCHED_RULE, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_MATCHED_PRESCREENING_RULE, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_CUSTOMER_INTEGRATION_ID, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_CUSTOMER_SHORT_NAME, + ComplianceScreeningResultFullPayload.JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", @@ -41,10 +70,10 @@ public class ComplianceScreeningResultFullPayload { public static final String JSON_PROPERTY_PAYLOAD = "payload"; @jakarta.annotation.Nullable private Object payload; - public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; - @jakarta.annotation.Nullable private String bypassReason; + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nullable private BigDecimal timestamp; - /** Gets or Sets screeningStatus */ + /** Current status of the screening process */ public enum ScreeningStatusEnum { COMPLETED(String.valueOf("COMPLETED")), @@ -72,145 +101,836 @@ public String toString() { return String.valueOf(value); } - @JsonCreator - public static ScreeningStatusEnum fromValue(String value) { - for (ScreeningStatusEnum b : ScreeningStatusEnum.values()) { - if (b.value.equals(value)) { - return b; - } - } - throw new IllegalArgumentException("Unexpected value '" + value + "'"); - } + @JsonCreator + public static ScreeningStatusEnum fromValue(String value) { + for (ScreeningStatusEnum b : ScreeningStatusEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_SCREENING_STATUS = "screeningStatus"; + @jakarta.annotation.Nullable private ScreeningStatusEnum screeningStatus; + + public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; + @jakarta.annotation.Nullable private String bypassReason; + + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nullable private AmlStatusEnum status; + + public static final String JSON_PROPERTY_PREV_STATUS = "prevStatus"; + @jakarta.annotation.Nullable private AmlStatusEnum prevStatus; + + public static final String JSON_PROPERTY_PREV_BYPASS_REASON = "prevBypassReason"; + @jakarta.annotation.Nullable private String prevBypassReason; + + public static final String JSON_PROPERTY_VERDICT = "verdict"; + @jakarta.annotation.Nullable private ScreeningVerdictEnum verdict; + + public static final String JSON_PROPERTY_RISK = "risk"; + @jakarta.annotation.Nullable private ScreeningRiskLevelEnum risk; + + public static final String JSON_PROPERTY_EXTENDED_RISK = "extendedRisk"; + @jakarta.annotation.Nullable private ScreeningRiskLevelEnum extendedRisk; + + public static final String JSON_PROPERTY_EXTERNAL_ID = "externalId"; + @jakarta.annotation.Nullable private String externalId; + + public static final String JSON_PROPERTY_CUSTOMER_REF_ID = "customerRefId"; + @jakarta.annotation.Nullable private String customerRefId; + + public static final String JSON_PROPERTY_REF_ID = "refId"; + @jakarta.annotation.Nullable private String refId; + + public static final String JSON_PROPERTY_CATEGORY = "category"; + @jakarta.annotation.Nullable private String category; + + public static final String JSON_PROPERTY_CATEGORY_ID = "categoryId"; + @jakarta.annotation.Nullable private BigDecimal categoryId; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_DEST_TAG = "destTag"; + @jakarta.annotation.Nullable private String destTag; + + public static final String JSON_PROPERTY_DEST_RECORD_ID = "destRecordId"; + @jakarta.annotation.Nullable private String destRecordId; + + public static final String JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE = + "addressResolutionSignature"; + @jakarta.annotation.Nullable private String addressResolutionSignature; + + public static final String JSON_PROPERTY_AML_RESULT = "amlResult"; + @jakarta.annotation.Nullable private ScreeningAmlResult amlResult; + + public static final String JSON_PROPERTY_RESULT = "result"; + @jakarta.annotation.Nullable private ScreeningTravelRuleResult result; + + public static final String JSON_PROPERTY_DETAILS_MESSAGE = "detailsMessage"; + @jakarta.annotation.Nullable private String detailsMessage; + + public static final String JSON_PROPERTY_MATCHED_ALERT = "matchedAlert"; + @jakarta.annotation.Nullable private Object matchedAlert; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private Object matchedRule; + + public static final String JSON_PROPERTY_MATCHED_PRESCREENING_RULE = "matchedPrescreeningRule"; + + @jakarta.annotation.Nullable + private ScreeningTravelRulePrescreeningRule matchedPrescreeningRule; + + public static final String JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE = + "matchedNoTrmScreeningRule"; + @jakarta.annotation.Nullable private Object matchedNoTrmScreeningRule; + + public static final String JSON_PROPERTY_CUSTOMER_INTEGRATION_ID = "customerIntegrationId"; + @jakarta.annotation.Nullable private String customerIntegrationId; + + public static final String JSON_PROPERTY_CUSTOMER_SHORT_NAME = "customerShortName"; + @jakarta.annotation.Nullable private String customerShortName; + + public static final String JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID = "travelRuleMessageId"; + @jakarta.annotation.Nullable private String travelRuleMessageId; + + public ComplianceScreeningResultFullPayload() {} + + public ComplianceScreeningResultFullPayload provider( + @jakarta.annotation.Nullable String provider) { + this.provider = provider; + return this; + } + + /** + * The AML/Travel Rule provider name. For AML: ELLIPTIC, CHAINALYSIS, etc. For Travel Rule: + * NOTABENE, SUMSUB, or any TRLink provider name + * + * @return provider + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getProvider() { + return provider; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProvider(@jakarta.annotation.Nullable String provider) { + this.provider = provider; + } + + public ComplianceScreeningResultFullPayload payload( + @jakarta.annotation.Nullable Object payload) { + this.payload = payload; + return this; + } + + /** + * The raw payload of the screening result from the provider. The payload is a JSON object that + * contains the screening result. The payload structure is different for each screening + * provider. This field contains the complete, unmodified response from the screening service. + * + * @return payload + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getPayload() { + return payload; + } + + @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPayload(@jakarta.annotation.Nullable Object payload) { + this.payload = payload; + } + + public ComplianceScreeningResultFullPayload timestamp( + @jakarta.annotation.Nullable BigDecimal timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Unix timestamp in milliseconds when the screening result was generated + * + * @return timestamp + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimestamp(@jakarta.annotation.Nullable BigDecimal timestamp) { + this.timestamp = timestamp; + } + + public ComplianceScreeningResultFullPayload screeningStatus( + @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { + this.screeningStatus = screeningStatus; + return this; + } + + /** + * Current status of the screening process + * + * @return screeningStatus + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningStatusEnum getScreeningStatus() { + return screeningStatus; + } + + @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setScreeningStatus( + @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { + this.screeningStatus = screeningStatus; + } + + public ComplianceScreeningResultFullPayload bypassReason( + @jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + return this; + } + + /** + * Reason for bypassing the screening, if applicable. For AML: SANCTIONS_SCREENING_BYPASS, + * SANCTIONS_RECIPIENT_BYPASS, etc. For Travel Rule: BELOW_THRESHOLD, NO_TRM_AVAILABLE, etc. + * + * @return bypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBypassReason() { + return bypassReason; + } + + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + } + + public ComplianceScreeningResultFullPayload status( + @jakarta.annotation.Nullable AmlStatusEnum status) { + this.status = status; + return this; + } + + /** + * Get status + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmlStatusEnum getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setStatus(@jakarta.annotation.Nullable AmlStatusEnum status) { + this.status = status; + } + + public ComplianceScreeningResultFullPayload prevStatus( + @jakarta.annotation.Nullable AmlStatusEnum prevStatus) { + this.prevStatus = prevStatus; + return this; + } + + /** + * Get prevStatus + * + * @return prevStatus + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PREV_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmlStatusEnum getPrevStatus() { + return prevStatus; + } + + @JsonProperty(JSON_PROPERTY_PREV_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPrevStatus(@jakarta.annotation.Nullable AmlStatusEnum prevStatus) { + this.prevStatus = prevStatus; + } + + public ComplianceScreeningResultFullPayload prevBypassReason( + @jakarta.annotation.Nullable String prevBypassReason) { + this.prevBypassReason = prevBypassReason; + return this; + } + + /** + * Previous bypass reason before the current bypass reason change + * + * @return prevBypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PREV_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getPrevBypassReason() { + return prevBypassReason; + } + + @JsonProperty(JSON_PROPERTY_PREV_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPrevBypassReason(@jakarta.annotation.Nullable String prevBypassReason) { + this.prevBypassReason = prevBypassReason; + } + + public ComplianceScreeningResultFullPayload verdict( + @jakarta.annotation.Nullable ScreeningVerdictEnum verdict) { + this.verdict = verdict; + return this; + } + + /** + * Get verdict + * + * @return verdict + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningVerdictEnum getVerdict() { + return verdict; + } + + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVerdict(@jakarta.annotation.Nullable ScreeningVerdictEnum verdict) { + this.verdict = verdict; + } + + public ComplianceScreeningResultFullPayload risk( + @jakarta.annotation.Nullable ScreeningRiskLevelEnum risk) { + this.risk = risk; + return this; + } + + /** + * Get risk + * + * @return risk + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningRiskLevelEnum getRisk() { + return risk; + } + + @JsonProperty(JSON_PROPERTY_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRisk(@jakarta.annotation.Nullable ScreeningRiskLevelEnum risk) { + this.risk = risk; + } + + public ComplianceScreeningResultFullPayload extendedRisk( + @jakarta.annotation.Nullable ScreeningRiskLevelEnum extendedRisk) { + this.extendedRisk = extendedRisk; + return this; + } + + /** + * Get extendedRisk + * + * @return extendedRisk + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTENDED_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningRiskLevelEnum getExtendedRisk() { + return extendedRisk; + } + + @JsonProperty(JSON_PROPERTY_EXTENDED_RISK) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExtendedRisk(@jakarta.annotation.Nullable ScreeningRiskLevelEnum extendedRisk) { + this.extendedRisk = extendedRisk; + } + + public ComplianceScreeningResultFullPayload externalId( + @jakarta.annotation.Nullable String externalId) { + this.externalId = externalId; + return this; + } + + /** + * External identifier for the screening (provider-specific) + * + * @return externalId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getExternalId() { + return externalId; + } + + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExternalId(@jakarta.annotation.Nullable String externalId) { + this.externalId = externalId; + } + + public ComplianceScreeningResultFullPayload customerRefId( + @jakarta.annotation.Nullable String customerRefId) { + this.customerRefId = customerRefId; + return this; + } + + /** + * Customer-provided reference identifier for tracking + * + * @return customerRefId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerRefId() { + return customerRefId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerRefId(@jakarta.annotation.Nullable String customerRefId) { + this.customerRefId = customerRefId; + } + + public ComplianceScreeningResultFullPayload refId(@jakarta.annotation.Nullable String refId) { + this.refId = refId; + return this; + } + + /** + * Internal reference identifier + * + * @return refId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getRefId() { + return refId; + } + + @JsonProperty(JSON_PROPERTY_REF_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRefId(@jakarta.annotation.Nullable String refId) { + this.refId = refId; + } + + public ComplianceScreeningResultFullPayload category( + @jakarta.annotation.Nullable String category) { + this.category = category; + return this; + } + + /** + * Risk category classification. Examples: EXCHANGE, GAMBLING, MIXER, DARKNET_SERVICE, + * SANCTIONED_ENTITY + * + * @return category + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCategory() { + return category; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategory(@jakarta.annotation.Nullable String category) { + this.category = category; + } + + public ComplianceScreeningResultFullPayload categoryId( + @jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + return this; + } + + /** + * Numeric identifier for the risk category + * + * @return categoryId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getCategoryId() { + return categoryId; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategoryId(@jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + } + + public ComplianceScreeningResultFullPayload destAddress( + @jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * The destination blockchain address associated with the screening + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ComplianceScreeningResultFullPayload destTag( + @jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + return this; + } + + /** + * Destination tag or memo (for chains that support it like XRP, XLM) + * + * @return destTag + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestTag() { + return destTag; + } + + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestTag(@jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + } + + public ComplianceScreeningResultFullPayload destRecordId( + @jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + return this; + } + + /** + * The destination record identifier used by the screening provider + * + * @return destRecordId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestRecordId() { + return destRecordId; + } + + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestRecordId(@jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + } + + public ComplianceScreeningResultFullPayload addressResolutionSignature( + @jakarta.annotation.Nullable String addressResolutionSignature) { + this.addressResolutionSignature = addressResolutionSignature; + return this; + } + + /** + * Cryptographic signature for address resolution verification + * + * @return addressResolutionSignature + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAddressResolutionSignature() { + return addressResolutionSignature; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS_RESOLUTION_SIGNATURE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAddressResolutionSignature( + @jakarta.annotation.Nullable String addressResolutionSignature) { + this.addressResolutionSignature = addressResolutionSignature; + } + + public ComplianceScreeningResultFullPayload amlResult( + @jakarta.annotation.Nullable ScreeningAmlResult amlResult) { + this.amlResult = amlResult; + return this; + } + + /** + * Get amlResult + * + * @return amlResult + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AML_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningAmlResult getAmlResult() { + return amlResult; + } + + @JsonProperty(JSON_PROPERTY_AML_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmlResult(@jakarta.annotation.Nullable ScreeningAmlResult amlResult) { + this.amlResult = amlResult; + } + + public ComplianceScreeningResultFullPayload result( + @jakarta.annotation.Nullable ScreeningTravelRuleResult result) { + this.result = result; + return this; + } + + /** + * Get result + * + * @return result + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTravelRuleResult getResult() { + return result; + } + + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setResult(@jakarta.annotation.Nullable ScreeningTravelRuleResult result) { + this.result = result; + } + + public ComplianceScreeningResultFullPayload detailsMessage( + @jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + return this; + } + + /** + * Additional human-readable details or message about the screening result + * + * @return detailsMessage + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDetailsMessage() { + return detailsMessage; + } + + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDetailsMessage(@jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + } + + public ComplianceScreeningResultFullPayload matchedAlert( + @jakarta.annotation.Nullable Object matchedAlert) { + this.matchedAlert = matchedAlert; + return this; + } + + /** + * Information about the AML alert that was matched, if any. Contains details about the specific + * alert that triggered during screening. + * + * @return matchedAlert + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getMatchedAlert() { + return matchedAlert; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedAlert(@jakarta.annotation.Nullable Object matchedAlert) { + this.matchedAlert = matchedAlert; } - public static final String JSON_PROPERTY_SCREENING_STATUS = "screeningStatus"; - @jakarta.annotation.Nullable private ScreeningStatusEnum screeningStatus; + public ComplianceScreeningResultFullPayload matchedRule( + @jakarta.annotation.Nullable Object matchedRule) { + this.matchedRule = matchedRule; + return this; + } - public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; - @jakarta.annotation.Nullable private BigDecimal timestamp; + /** + * The matched rule information for this screening result. Contains details about which + * screening rule was applied and matched. + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getMatchedRule() { + return matchedRule; + } - public ComplianceScreeningResultFullPayload() {} + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule(@jakarta.annotation.Nullable Object matchedRule) { + this.matchedRule = matchedRule; + } - public ComplianceScreeningResultFullPayload provider( - @jakarta.annotation.Nullable String provider) { - this.provider = provider; + public ComplianceScreeningResultFullPayload matchedPrescreeningRule( + @jakarta.annotation.Nullable + ScreeningTravelRulePrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; return this; } /** - * Get provider + * Get matchedPrescreeningRule * - * @return provider + * @return matchedPrescreeningRule */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public String getProvider() { - return provider; + public ScreeningTravelRulePrescreeningRule getMatchedPrescreeningRule() { + return matchedPrescreeningRule; } - @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setProvider(@jakarta.annotation.Nullable String provider) { - this.provider = provider; + public void setMatchedPrescreeningRule( + @jakarta.annotation.Nullable + ScreeningTravelRulePrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; } - public ComplianceScreeningResultFullPayload payload( - @jakarta.annotation.Nullable Object payload) { - this.payload = payload; + public ComplianceScreeningResultFullPayload matchedNoTrmScreeningRule( + @jakarta.annotation.Nullable Object matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; return this; } /** - * The payload of the screening result. The payload is a JSON object that contains the screening - * result. The payload is different for each screening provider. + * Matched no-TRM (Travel Rule Message) screening rule details. Used when TRLink screening + * detects a missing TRM scenario. * - * @return payload + * @return matchedNoTrmScreeningRule */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public Object getPayload() { - return payload; + public Object getMatchedNoTrmScreeningRule() { + return matchedNoTrmScreeningRule; } - @JsonProperty(JSON_PROPERTY_PAYLOAD) + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setPayload(@jakarta.annotation.Nullable Object payload) { - this.payload = payload; + public void setMatchedNoTrmScreeningRule( + @jakarta.annotation.Nullable Object matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; } - public ComplianceScreeningResultFullPayload bypassReason( - @jakarta.annotation.Nullable String bypassReason) { - this.bypassReason = bypassReason; + public ComplianceScreeningResultFullPayload customerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; return this; } /** - * Get bypassReason + * Customer integration identifier used by Travel Rule providers * - * @return bypassReason + * @return customerIntegrationId */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public String getBypassReason() { - return bypassReason; + public String getCustomerIntegrationId() { + return customerIntegrationId; } - @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setBypassReason(@jakarta.annotation.Nullable String bypassReason) { - this.bypassReason = bypassReason; + public void setCustomerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; } - public ComplianceScreeningResultFullPayload screeningStatus( - @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { - this.screeningStatus = screeningStatus; + public ComplianceScreeningResultFullPayload customerShortName( + @jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; return this; } /** - * Get screeningStatus + * Customer short name registered with Travel Rule providers * - * @return screeningStatus + * @return customerShortName */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public ScreeningStatusEnum getScreeningStatus() { - return screeningStatus; + public String getCustomerShortName() { + return customerShortName; } - @JsonProperty(JSON_PROPERTY_SCREENING_STATUS) + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setScreeningStatus( - @jakarta.annotation.Nullable ScreeningStatusEnum screeningStatus) { - this.screeningStatus = screeningStatus; + public void setCustomerShortName(@jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; } - public ComplianceScreeningResultFullPayload timestamp( - @jakarta.annotation.Nullable BigDecimal timestamp) { - this.timestamp = timestamp; + public ComplianceScreeningResultFullPayload travelRuleMessageId( + @jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; return this; } /** - * Get timestamp + * Travel rule message identifier for linking and tracking across providers * - * @return timestamp + * @return travelRuleMessageId */ @jakarta.annotation.Nullable - @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public BigDecimal getTimestamp() { - return timestamp; + public String getTravelRuleMessageId() { + return travelRuleMessageId; } - @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setTimestamp(@jakarta.annotation.Nullable BigDecimal timestamp) { - this.timestamp = timestamp; + public void setTravelRuleMessageId(@jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; } /** Return true if this ComplianceScreeningResultFullPayload object is equal to o. */ @@ -226,16 +946,92 @@ public boolean equals(Object o) { (ComplianceScreeningResultFullPayload) o; return Objects.equals(this.provider, complianceScreeningResultFullPayload.provider) && Objects.equals(this.payload, complianceScreeningResultFullPayload.payload) + && Objects.equals(this.timestamp, complianceScreeningResultFullPayload.timestamp) + && Objects.equals( + this.screeningStatus, complianceScreeningResultFullPayload.screeningStatus) && Objects.equals( this.bypassReason, complianceScreeningResultFullPayload.bypassReason) + && Objects.equals(this.status, complianceScreeningResultFullPayload.status) + && Objects.equals(this.prevStatus, complianceScreeningResultFullPayload.prevStatus) && Objects.equals( - this.screeningStatus, complianceScreeningResultFullPayload.screeningStatus) - && Objects.equals(this.timestamp, complianceScreeningResultFullPayload.timestamp); + this.prevBypassReason, + complianceScreeningResultFullPayload.prevBypassReason) + && Objects.equals(this.verdict, complianceScreeningResultFullPayload.verdict) + && Objects.equals(this.risk, complianceScreeningResultFullPayload.risk) + && Objects.equals( + this.extendedRisk, complianceScreeningResultFullPayload.extendedRisk) + && Objects.equals(this.externalId, complianceScreeningResultFullPayload.externalId) + && Objects.equals( + this.customerRefId, complianceScreeningResultFullPayload.customerRefId) + && Objects.equals(this.refId, complianceScreeningResultFullPayload.refId) + && Objects.equals(this.category, complianceScreeningResultFullPayload.category) + && Objects.equals(this.categoryId, complianceScreeningResultFullPayload.categoryId) + && Objects.equals( + this.destAddress, complianceScreeningResultFullPayload.destAddress) + && Objects.equals(this.destTag, complianceScreeningResultFullPayload.destTag) + && Objects.equals( + this.destRecordId, complianceScreeningResultFullPayload.destRecordId) + && Objects.equals( + this.addressResolutionSignature, + complianceScreeningResultFullPayload.addressResolutionSignature) + && Objects.equals(this.amlResult, complianceScreeningResultFullPayload.amlResult) + && Objects.equals(this.result, complianceScreeningResultFullPayload.result) + && Objects.equals( + this.detailsMessage, complianceScreeningResultFullPayload.detailsMessage) + && Objects.equals( + this.matchedAlert, complianceScreeningResultFullPayload.matchedAlert) + && Objects.equals( + this.matchedRule, complianceScreeningResultFullPayload.matchedRule) + && Objects.equals( + this.matchedPrescreeningRule, + complianceScreeningResultFullPayload.matchedPrescreeningRule) + && Objects.equals( + this.matchedNoTrmScreeningRule, + complianceScreeningResultFullPayload.matchedNoTrmScreeningRule) + && Objects.equals( + this.customerIntegrationId, + complianceScreeningResultFullPayload.customerIntegrationId) + && Objects.equals( + this.customerShortName, + complianceScreeningResultFullPayload.customerShortName) + && Objects.equals( + this.travelRuleMessageId, + complianceScreeningResultFullPayload.travelRuleMessageId); } @Override public int hashCode() { - return Objects.hash(provider, payload, bypassReason, screeningStatus, timestamp); + return Objects.hash( + provider, + payload, + timestamp, + screeningStatus, + bypassReason, + status, + prevStatus, + prevBypassReason, + verdict, + risk, + extendedRisk, + externalId, + customerRefId, + refId, + category, + categoryId, + destAddress, + destTag, + destRecordId, + addressResolutionSignature, + amlResult, + result, + detailsMessage, + matchedAlert, + matchedRule, + matchedPrescreeningRule, + matchedNoTrmScreeningRule, + customerIntegrationId, + customerShortName, + travelRuleMessageId); } @Override @@ -244,9 +1040,46 @@ public String toString() { sb.append("class ComplianceScreeningResultFullPayload {\n"); sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); sb.append(" payload: ").append(toIndentedString(payload)).append("\n"); - sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); - sb.append(" screeningStatus: ").append(toIndentedString(screeningStatus)).append("\n"); sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" screeningStatus: ").append(toIndentedString(screeningStatus)).append("\n"); + sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" prevStatus: ").append(toIndentedString(prevStatus)).append("\n"); + sb.append(" prevBypassReason: ").append(toIndentedString(prevBypassReason)).append("\n"); + sb.append(" verdict: ").append(toIndentedString(verdict)).append("\n"); + sb.append(" risk: ").append(toIndentedString(risk)).append("\n"); + sb.append(" extendedRisk: ").append(toIndentedString(extendedRisk)).append("\n"); + sb.append(" externalId: ").append(toIndentedString(externalId)).append("\n"); + sb.append(" customerRefId: ").append(toIndentedString(customerRefId)).append("\n"); + sb.append(" refId: ").append(toIndentedString(refId)).append("\n"); + sb.append(" category: ").append(toIndentedString(category)).append("\n"); + sb.append(" categoryId: ").append(toIndentedString(categoryId)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" destTag: ").append(toIndentedString(destTag)).append("\n"); + sb.append(" destRecordId: ").append(toIndentedString(destRecordId)).append("\n"); + sb.append(" addressResolutionSignature: ") + .append(toIndentedString(addressResolutionSignature)) + .append("\n"); + sb.append(" amlResult: ").append(toIndentedString(amlResult)).append("\n"); + sb.append(" result: ").append(toIndentedString(result)).append("\n"); + sb.append(" detailsMessage: ").append(toIndentedString(detailsMessage)).append("\n"); + sb.append(" matchedAlert: ").append(toIndentedString(matchedAlert)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append(" matchedPrescreeningRule: ") + .append(toIndentedString(matchedPrescreeningRule)) + .append("\n"); + sb.append(" matchedNoTrmScreeningRule: ") + .append(toIndentedString(matchedNoTrmScreeningRule)) + .append("\n"); + sb.append(" customerIntegrationId: ") + .append(toIndentedString(customerIntegrationId)) + .append("\n"); + sb.append(" customerShortName: ") + .append(toIndentedString(customerShortName)) + .append("\n"); + sb.append(" travelRuleMessageId: ") + .append(toIndentedString(travelRuleMessageId)) + .append("\n"); sb.append("}"); return sb.toString(); } @@ -314,14 +1147,14 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getPayload())))); } - // add `bypassReason` to the URL query string - if (getBypassReason() != null) { + // add `timestamp` to the URL query string + if (getTimestamp() != null) { joiner.add( String.format( - "%sbypassReason%s=%s", + "%stimestamp%s=%s", prefix, suffix, - ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); } // add `screeningStatus` to the URL query string @@ -334,14 +1167,255 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getScreeningStatus())))); } - // add `timestamp` to the URL query string - if (getTimestamp() != null) { + // add `bypassReason` to the URL query string + if (getBypassReason() != null) { joiner.add( String.format( - "%stimestamp%s=%s", + "%sbypassReason%s=%s", prefix, suffix, - ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + } + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `prevStatus` to the URL query string + if (getPrevStatus() != null) { + joiner.add( + String.format( + "%sprevStatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPrevStatus())))); + } + + // add `prevBypassReason` to the URL query string + if (getPrevBypassReason() != null) { + joiner.add( + String.format( + "%sprevBypassReason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPrevBypassReason())))); + } + + // add `verdict` to the URL query string + if (getVerdict() != null) { + joiner.add( + String.format( + "%sverdict%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getVerdict())))); + } + + // add `risk` to the URL query string + if (getRisk() != null) { + joiner.add( + String.format( + "%srisk%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRisk())))); + } + + // add `extendedRisk` to the URL query string + if (getExtendedRisk() != null) { + joiner.add( + String.format( + "%sextendedRisk%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExtendedRisk())))); + } + + // add `externalId` to the URL query string + if (getExternalId() != null) { + joiner.add( + String.format( + "%sexternalId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExternalId())))); + } + + // add `customerRefId` to the URL query string + if (getCustomerRefId() != null) { + joiner.add( + String.format( + "%scustomerRefId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerRefId())))); + } + + // add `refId` to the URL query string + if (getRefId() != null) { + joiner.add( + String.format( + "%srefId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRefId())))); + } + + // add `category` to the URL query string + if (getCategory() != null) { + joiner.add( + String.format( + "%scategory%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategory())))); + } + + // add `categoryId` to the URL query string + if (getCategoryId() != null) { + joiner.add( + String.format( + "%scategoryId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategoryId())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `destTag` to the URL query string + if (getDestTag() != null) { + joiner.add( + String.format( + "%sdestTag%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestTag())))); + } + + // add `destRecordId` to the URL query string + if (getDestRecordId() != null) { + joiner.add( + String.format( + "%sdestRecordId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestRecordId())))); + } + + // add `addressResolutionSignature` to the URL query string + if (getAddressResolutionSignature() != null) { + joiner.add( + String.format( + "%saddressResolutionSignature%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getAddressResolutionSignature())))); + } + + // add `amlResult` to the URL query string + if (getAmlResult() != null) { + joiner.add(getAmlResult().toUrlQueryString(prefix + "amlResult" + suffix)); + } + + // add `result` to the URL query string + if (getResult() != null) { + joiner.add(getResult().toUrlQueryString(prefix + "result" + suffix)); + } + + // add `detailsMessage` to the URL query string + if (getDetailsMessage() != null) { + joiner.add( + String.format( + "%sdetailsMessage%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDetailsMessage())))); + } + + // add `matchedAlert` to the URL query string + if (getMatchedAlert() != null) { + joiner.add( + String.format( + "%smatchedAlert%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMatchedAlert())))); + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add( + String.format( + "%smatchedRule%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMatchedRule())))); + } + + // add `matchedPrescreeningRule` to the URL query string + if (getMatchedPrescreeningRule() != null) { + joiner.add( + getMatchedPrescreeningRule() + .toUrlQueryString(prefix + "matchedPrescreeningRule" + suffix)); + } + + // add `matchedNoTrmScreeningRule` to the URL query string + if (getMatchedNoTrmScreeningRule() != null) { + joiner.add( + String.format( + "%smatchedNoTrmScreeningRule%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getMatchedNoTrmScreeningRule())))); + } + + // add `customerIntegrationId` to the URL query string + if (getCustomerIntegrationId() != null) { + joiner.add( + String.format( + "%scustomerIntegrationId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getCustomerIntegrationId())))); + } + + // add `customerShortName` to the URL query string + if (getCustomerShortName() != null) { + joiner.add( + String.format( + "%scustomerShortName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerShortName())))); + } + + // add `travelRuleMessageId` to the URL query string + if (getTravelRuleMessageId() != null) { + joiner.add( + String.format( + "%stravelRuleMessageId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTravelRuleMessageId())))); } return joiner.toString(); diff --git a/src/main/java/com/fireblocks/sdk/model/DAppAddressConfig.java b/src/main/java/com/fireblocks/sdk/model/DAppAddressConfig.java new file mode 100644 index 00000000..807daef9 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/DAppAddressConfig.java @@ -0,0 +1,326 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.StringJoiner; + +/** dApp address configuration for policy rules */ +@JsonPropertyOrder({ + DAppAddressConfig.JSON_PROPERTY_GLOBAL_WHITELISTED, + DAppAddressConfig.JSON_PROPERTY_TENANT_WHITELISTED, + DAppAddressConfig.JSON_PROPERTY_URLS, + DAppAddressConfig.JSON_PROPERTY_OPERATOR +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class DAppAddressConfig { + public static final String JSON_PROPERTY_GLOBAL_WHITELISTED = "globalWhitelisted"; + @jakarta.annotation.Nonnull private List globalWhitelisted; + + public static final String JSON_PROPERTY_TENANT_WHITELISTED = "tenantWhitelisted"; + @jakarta.annotation.Nonnull private List tenantWhitelisted; + + public static final String JSON_PROPERTY_URLS = "urls"; + @jakarta.annotation.Nonnull private List urls; + + public static final String JSON_PROPERTY_OPERATOR = "operator"; + @jakarta.annotation.Nonnull private PolicyOperator operator; + + public DAppAddressConfig() {} + + @JsonCreator + public DAppAddressConfig( + @JsonProperty(value = JSON_PROPERTY_GLOBAL_WHITELISTED, required = true) + List globalWhitelisted, + @JsonProperty(value = JSON_PROPERTY_TENANT_WHITELISTED, required = true) + List tenantWhitelisted, + @JsonProperty(value = JSON_PROPERTY_URLS, required = true) List urls, + @JsonProperty(value = JSON_PROPERTY_OPERATOR, required = true) + PolicyOperator operator) { + this.globalWhitelisted = globalWhitelisted; + this.tenantWhitelisted = tenantWhitelisted; + this.urls = urls; + this.operator = operator; + } + + public DAppAddressConfig globalWhitelisted( + @jakarta.annotation.Nonnull List globalWhitelisted) { + this.globalWhitelisted = globalWhitelisted; + return this; + } + + public DAppAddressConfig addGlobalWhitelistedItem(String globalWhitelistedItem) { + if (this.globalWhitelisted == null) { + this.globalWhitelisted = new ArrayList<>(); + } + this.globalWhitelisted.add(globalWhitelistedItem); + return this; + } + + /** + * Globally whitelisted addresses + * + * @return globalWhitelisted + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_GLOBAL_WHITELISTED) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public List getGlobalWhitelisted() { + return globalWhitelisted; + } + + @JsonProperty(JSON_PROPERTY_GLOBAL_WHITELISTED) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setGlobalWhitelisted(@jakarta.annotation.Nonnull List globalWhitelisted) { + this.globalWhitelisted = globalWhitelisted; + } + + public DAppAddressConfig tenantWhitelisted( + @jakarta.annotation.Nonnull List tenantWhitelisted) { + this.tenantWhitelisted = tenantWhitelisted; + return this; + } + + public DAppAddressConfig addTenantWhitelistedItem(String tenantWhitelistedItem) { + if (this.tenantWhitelisted == null) { + this.tenantWhitelisted = new ArrayList<>(); + } + this.tenantWhitelisted.add(tenantWhitelistedItem); + return this; + } + + /** + * Tenant whitelisted addresses + * + * @return tenantWhitelisted + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TENANT_WHITELISTED) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public List getTenantWhitelisted() { + return tenantWhitelisted; + } + + @JsonProperty(JSON_PROPERTY_TENANT_WHITELISTED) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTenantWhitelisted(@jakarta.annotation.Nonnull List tenantWhitelisted) { + this.tenantWhitelisted = tenantWhitelisted; + } + + public DAppAddressConfig urls(@jakarta.annotation.Nonnull List urls) { + this.urls = urls; + return this; + } + + public DAppAddressConfig addUrlsItem(String urlsItem) { + if (this.urls == null) { + this.urls = new ArrayList<>(); + } + this.urls.add(urlsItem); + return this; + } + + /** + * Allowed all address + * + * @return urls + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_URLS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public List getUrls() { + return urls; + } + + @JsonProperty(JSON_PROPERTY_URLS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setUrls(@jakarta.annotation.Nonnull List urls) { + this.urls = urls; + } + + public DAppAddressConfig operator(@jakarta.annotation.Nonnull PolicyOperator operator) { + this.operator = operator; + return this; + } + + /** + * Get operator + * + * @return operator + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_OPERATOR) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public PolicyOperator getOperator() { + return operator; + } + + @JsonProperty(JSON_PROPERTY_OPERATOR) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setOperator(@jakarta.annotation.Nonnull PolicyOperator operator) { + this.operator = operator; + } + + /** Return true if this DAppAddressConfig object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DAppAddressConfig dappAddressConfig = (DAppAddressConfig) o; + return Objects.equals(this.globalWhitelisted, dappAddressConfig.globalWhitelisted) + && Objects.equals(this.tenantWhitelisted, dappAddressConfig.tenantWhitelisted) + && Objects.equals(this.urls, dappAddressConfig.urls) + && Objects.equals(this.operator, dappAddressConfig.operator); + } + + @Override + public int hashCode() { + return Objects.hash(globalWhitelisted, tenantWhitelisted, urls, operator); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class DAppAddressConfig {\n"); + sb.append(" globalWhitelisted: ") + .append(toIndentedString(globalWhitelisted)) + .append("\n"); + sb.append(" tenantWhitelisted: ") + .append(toIndentedString(tenantWhitelisted)) + .append("\n"); + sb.append(" urls: ").append(toIndentedString(urls)).append("\n"); + sb.append(" operator: ").append(toIndentedString(operator)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `globalWhitelisted` to the URL query string + if (getGlobalWhitelisted() != null) { + for (int i = 0; i < getGlobalWhitelisted().size(); i++) { + joiner.add( + String.format( + "%sglobalWhitelisted%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getGlobalWhitelisted().get(i))))); + } + } + + // add `tenantWhitelisted` to the URL query string + if (getTenantWhitelisted() != null) { + for (int i = 0; i < getTenantWhitelisted().size(); i++) { + joiner.add( + String.format( + "%stenantWhitelisted%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getTenantWhitelisted().get(i))))); + } + } + + // add `urls` to the URL query string + if (getUrls() != null) { + for (int i = 0; i < getUrls().size(); i++) { + joiner.add( + String.format( + "%surls%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode(ApiClient.valueToString(getUrls().get(i))))); + } + } + + // add `operator` to the URL query string + if (getOperator() != null) { + joiner.add( + String.format( + "%soperator%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperator())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/DestinationConfig.java b/src/main/java/com/fireblocks/sdk/model/DestinationConfig.java index 4441bd9e..64f9679e 100644 --- a/src/main/java/com/fireblocks/sdk/model/DestinationConfig.java +++ b/src/main/java/com/fireblocks/sdk/model/DestinationConfig.java @@ -29,6 +29,7 @@ DestinationConfig.JSON_PROPERTY_TYPE, DestinationConfig.JSON_PROPERTY_SUB_TYPE, DestinationConfig.JSON_PROPERTY_IDS, + DestinationConfig.JSON_PROPERTY_TAGS, DestinationConfig.JSON_PROPERTY_OPERATOR, DestinationConfig.JSON_PROPERTY_MATCH_FROM, DestinationConfig.JSON_PROPERTY_ADDRESS_TYPE @@ -38,7 +39,7 @@ comments = "Generator version: 7.14.0") public class DestinationConfig { public static final String JSON_PROPERTY_TYPE = "type"; - @jakarta.annotation.Nonnull private AccountType2 type; + @jakarta.annotation.Nullable private List type; public static final String JSON_PROPERTY_SUB_TYPE = "subType"; @jakarta.annotation.Nullable private List subType; @@ -46,10 +47,16 @@ public class DestinationConfig { public static final String JSON_PROPERTY_IDS = "ids"; @jakarta.annotation.Nullable private List ids; + public static final String JSON_PROPERTY_TAGS = "tags"; + @jakarta.annotation.Nullable private List tags; + public static final String JSON_PROPERTY_OPERATOR = "operator"; @jakarta.annotation.Nonnull private PolicyOperator operator; - /** Whether to match from account or source */ + /** + * Whether to match from account or source (relevant only for ORDER policy type). If set to + * ACCOUNT, only matchFrom is allowed and other fields are not required. + */ public enum MatchFromEnum { ACCOUNT(String.valueOf("ACCOUNT")), @@ -87,15 +94,11 @@ public static MatchFromEnum fromValue(String value) { /** Type of destination addresses allowed */ public enum AddressTypeEnum { - ALL(String.valueOf("ALL")), - STAR(String.valueOf("*")), WHITELISTED(String.valueOf("WHITELISTED")), - ONE_TIME(String.valueOf("ONE_TIME")), - - OEC_PARTNER(String.valueOf("OEC_PARTNER")); + ONE_TIME(String.valueOf("ONE_TIME")); private String value; @@ -131,35 +134,41 @@ public DestinationConfig() {} @JsonCreator public DestinationConfig( - @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) AccountType2 type, @JsonProperty(value = JSON_PROPERTY_OPERATOR, required = true) PolicyOperator operator, @JsonProperty(value = JSON_PROPERTY_ADDRESS_TYPE, required = true) AddressTypeEnum addressType) { - this.type = type; this.operator = operator; this.addressType = addressType; } - public DestinationConfig type(@jakarta.annotation.Nonnull AccountType2 type) { + public DestinationConfig type(@jakarta.annotation.Nullable List type) { this.type = type; return this; } + public DestinationConfig addTypeItem(AccountType2 typeItem) { + if (this.type == null) { + this.type = new ArrayList<>(); + } + this.type.add(typeItem); + return this; + } + /** - * Get type + * Destination account types * * @return type */ - @jakarta.annotation.Nonnull + @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public AccountType2 getType() { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getType() { return type; } @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setType(@jakarta.annotation.Nonnull AccountType2 type) { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setType(@jakarta.annotation.Nullable List type) { this.type = type; } @@ -225,6 +234,37 @@ public void setIds(@jakarta.annotation.Nullable List ids) { this.ids = ids; } + public DestinationConfig tags(@jakarta.annotation.Nullable List tags) { + this.tags = tags; + return this; + } + + public DestinationConfig addTagsItem(PolicyTag tagsItem) { + if (this.tags == null) { + this.tags = new ArrayList<>(); + } + this.tags.add(tagsItem); + return this; + } + + /** + * Tags for destination matching + * + * @return tags + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TAGS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getTags() { + return tags; + } + + @JsonProperty(JSON_PROPERTY_TAGS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTags(@jakarta.annotation.Nullable List tags) { + this.tags = tags; + } + public DestinationConfig operator(@jakarta.annotation.Nonnull PolicyOperator operator) { this.operator = operator; return this; @@ -254,7 +294,8 @@ public DestinationConfig matchFrom(@jakarta.annotation.Nullable MatchFromEnum ma } /** - * Whether to match from account or source + * Whether to match from account or source (relevant only for ORDER policy type). If set to + * ACCOUNT, only matchFrom is allowed and other fields are not required. * * @return matchFrom */ @@ -307,6 +348,7 @@ public boolean equals(Object o) { return Objects.equals(this.type, destinationConfig.type) && Objects.equals(this.subType, destinationConfig.subType) && Objects.equals(this.ids, destinationConfig.ids) + && Objects.equals(this.tags, destinationConfig.tags) && Objects.equals(this.operator, destinationConfig.operator) && Objects.equals(this.matchFrom, destinationConfig.matchFrom) && Objects.equals(this.addressType, destinationConfig.addressType); @@ -314,7 +356,7 @@ public boolean equals(Object o) { @Override public int hashCode() { - return Objects.hash(type, subType, ids, operator, matchFrom, addressType); + return Objects.hash(type, subType, ids, tags, operator, matchFrom, addressType); } @Override @@ -324,6 +366,7 @@ public String toString() { sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append(" subType: ").append(toIndentedString(subType)).append("\n"); sb.append(" ids: ").append(toIndentedString(ids)).append("\n"); + sb.append(" tags: ").append(toIndentedString(tags)).append("\n"); sb.append(" operator: ").append(toIndentedString(operator)).append("\n"); sb.append(" matchFrom: ").append(toIndentedString(matchFrom)).append("\n"); sb.append(" addressType: ").append(toIndentedString(addressType)).append("\n"); @@ -376,12 +419,21 @@ public String toUrlQueryString(String prefix) { // add `type` to the URL query string if (getType() != null) { - joiner.add( - String.format( - "%stype%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getType())))); + for (int i = 0; i < getType().size(); i++) { + if (getType().get(i) != null) { + joiner.add( + String.format( + "%stype%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getType().get(i))))); + } + } } // add `subType` to the URL query string @@ -429,6 +481,29 @@ public String toUrlQueryString(String prefix) { } } + // add `tags` to the URL query string + if (getTags() != null) { + for (int i = 0; i < getTags().size(); i++) { + if (getTags().get(i) != null) { + joiner.add( + getTags() + .get(i) + .toUrlQueryString( + String.format( + "%stags%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + // add `operator` to the URL query string if (getOperator() != null) { joiner.add( diff --git a/src/main/java/com/fireblocks/sdk/model/DirectAccessProviderDetails.java b/src/main/java/com/fireblocks/sdk/model/DirectAccessProviderDetails.java new file mode 100644 index 00000000..fda3844b --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/DirectAccessProviderDetails.java @@ -0,0 +1,235 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** DirectAccessProviderDetails */ +@JsonPropertyOrder({ + DirectAccessProviderDetails.JSON_PROPERTY_APPROVED, + DirectAccessProviderDetails.JSON_PROPERTY_HAS_TERMS_OF_SERVICE, + DirectAccessProviderDetails.JSON_PROPERTY_TERMS_OF_SERVICE_URL +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class DirectAccessProviderDetails { + public static final String JSON_PROPERTY_APPROVED = "approved"; + @jakarta.annotation.Nullable private Boolean approved; + + public static final String JSON_PROPERTY_HAS_TERMS_OF_SERVICE = "hasTermsOfService"; + @jakarta.annotation.Nonnull private Boolean hasTermsOfService; + + public static final String JSON_PROPERTY_TERMS_OF_SERVICE_URL = "termsOfServiceUrl"; + @jakarta.annotation.Nullable private String termsOfServiceUrl; + + public DirectAccessProviderDetails() {} + + @JsonCreator + public DirectAccessProviderDetails( + @JsonProperty(value = JSON_PROPERTY_HAS_TERMS_OF_SERVICE, required = true) + Boolean hasTermsOfService) { + this.hasTermsOfService = hasTermsOfService; + } + + public DirectAccessProviderDetails approved(@jakarta.annotation.Nullable Boolean approved) { + this.approved = approved; + return this; + } + + /** + * Whether the provider was approved for use + * + * @return approved + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_APPROVED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getApproved() { + return approved; + } + + @JsonProperty(JSON_PROPERTY_APPROVED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setApproved(@jakarta.annotation.Nullable Boolean approved) { + this.approved = approved; + } + + public DirectAccessProviderDetails hasTermsOfService( + @jakarta.annotation.Nonnull Boolean hasTermsOfService) { + this.hasTermsOfService = hasTermsOfService; + return this; + } + + /** + * Whether the provider has terms of service + * + * @return hasTermsOfService + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_HAS_TERMS_OF_SERVICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public Boolean getHasTermsOfService() { + return hasTermsOfService; + } + + @JsonProperty(JSON_PROPERTY_HAS_TERMS_OF_SERVICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setHasTermsOfService(@jakarta.annotation.Nonnull Boolean hasTermsOfService) { + this.hasTermsOfService = hasTermsOfService; + } + + public DirectAccessProviderDetails termsOfServiceUrl( + @jakarta.annotation.Nullable String termsOfServiceUrl) { + this.termsOfServiceUrl = termsOfServiceUrl; + return this; + } + + /** + * URL to the terms of service document + * + * @return termsOfServiceUrl + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TERMS_OF_SERVICE_URL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTermsOfServiceUrl() { + return termsOfServiceUrl; + } + + @JsonProperty(JSON_PROPERTY_TERMS_OF_SERVICE_URL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTermsOfServiceUrl(@jakarta.annotation.Nullable String termsOfServiceUrl) { + this.termsOfServiceUrl = termsOfServiceUrl; + } + + /** Return true if this DirectAccessProviderDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DirectAccessProviderDetails directAccessProviderDetails = (DirectAccessProviderDetails) o; + return Objects.equals(this.approved, directAccessProviderDetails.approved) + && Objects.equals( + this.hasTermsOfService, directAccessProviderDetails.hasTermsOfService) + && Objects.equals( + this.termsOfServiceUrl, directAccessProviderDetails.termsOfServiceUrl); + } + + @Override + public int hashCode() { + return Objects.hash(approved, hasTermsOfService, termsOfServiceUrl); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class DirectAccessProviderDetails {\n"); + sb.append(" approved: ").append(toIndentedString(approved)).append("\n"); + sb.append(" hasTermsOfService: ") + .append(toIndentedString(hasTermsOfService)) + .append("\n"); + sb.append(" termsOfServiceUrl: ") + .append(toIndentedString(termsOfServiceUrl)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `approved` to the URL query string + if (getApproved() != null) { + joiner.add( + String.format( + "%sapproved%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getApproved())))); + } + + // add `hasTermsOfService` to the URL query string + if (getHasTermsOfService() != null) { + joiner.add( + String.format( + "%shasTermsOfService%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getHasTermsOfService())))); + } + + // add `termsOfServiceUrl` to the URL query string + if (getTermsOfServiceUrl() != null) { + joiner.add( + String.format( + "%stermsOfServiceUrl%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTermsOfServiceUrl())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ExecutionStepType.java b/src/main/java/com/fireblocks/sdk/model/ExecutionStepType.java index 4fafdc4e..10fc1ba9 100644 --- a/src/main/java/com/fireblocks/sdk/model/ExecutionStepType.java +++ b/src/main/java/com/fireblocks/sdk/model/ExecutionStepType.java @@ -26,7 +26,9 @@ public enum ExecutionStepType { EXECUTE("EXECUTE"), - SETTLEMENT("SETTLEMENT"); + SETTLEMENT("SETTLEMENT"), + + DELIVERY("DELIVERY"); private String value; diff --git a/src/main/java/com/fireblocks/sdk/model/FeePropertiesDetails.java b/src/main/java/com/fireblocks/sdk/model/FeePropertiesDetails.java new file mode 100644 index 00000000..dcff876c --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/FeePropertiesDetails.java @@ -0,0 +1,306 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** FeePropertiesDetails */ +@JsonPropertyOrder({ + FeePropertiesDetails.JSON_PROPERTY_FEE_TYPE, + FeePropertiesDetails.JSON_PROPERTY_ASSET_ID, + FeePropertiesDetails.JSON_PROPERTY_AMOUNT_TYPE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class FeePropertiesDetails { + /** + * The type of fee, such as ORDER, NETWORK, or SPREAD. ORDER - Fee for executing the order. + * NETWORK - Fee for network transactions. SPREAD - Fee for the difference between buy and sell + * prices. + */ + public enum FeeTypeEnum { + ORDER(String.valueOf("ORDER")), + + NETWORK(String.valueOf("NETWORK")), + + SPREAD(String.valueOf("SPREAD")); + + private String value; + + FeeTypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static FeeTypeEnum fromValue(String value) { + for (FeeTypeEnum b : FeeTypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_FEE_TYPE = "feeType"; + @jakarta.annotation.Nonnull private FeeTypeEnum feeType; + + public static final String JSON_PROPERTY_ASSET_ID = "assetId"; + @jakarta.annotation.Nonnull private String assetId; + + /** The type of amount for the fee, either FIXED or BPS (basis points). */ + public enum AmountTypeEnum { + FIXED(String.valueOf("FIXED")), + + BPS(String.valueOf("BPS")); + + private String value; + + AmountTypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static AmountTypeEnum fromValue(String value) { + for (AmountTypeEnum b : AmountTypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_AMOUNT_TYPE = "amountType"; + @jakarta.annotation.Nonnull private AmountTypeEnum amountType; + + public FeePropertiesDetails() {} + + @JsonCreator + public FeePropertiesDetails( + @JsonProperty(value = JSON_PROPERTY_FEE_TYPE, required = true) FeeTypeEnum feeType, + @JsonProperty(value = JSON_PROPERTY_ASSET_ID, required = true) String assetId, + @JsonProperty(value = JSON_PROPERTY_AMOUNT_TYPE, required = true) + AmountTypeEnum amountType) { + this.feeType = feeType; + this.assetId = assetId; + this.amountType = amountType; + } + + public FeePropertiesDetails feeType(@jakarta.annotation.Nonnull FeeTypeEnum feeType) { + this.feeType = feeType; + return this; + } + + /** + * The type of fee, such as ORDER, NETWORK, or SPREAD. ORDER - Fee for executing the order. + * NETWORK - Fee for network transactions. SPREAD - Fee for the difference between buy and sell + * prices. + * + * @return feeType + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_FEE_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public FeeTypeEnum getFeeType() { + return feeType; + } + + @JsonProperty(JSON_PROPERTY_FEE_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setFeeType(@jakarta.annotation.Nonnull FeeTypeEnum feeType) { + this.feeType = feeType; + } + + public FeePropertiesDetails assetId(@jakarta.annotation.Nonnull String assetId) { + this.assetId = assetId; + return this; + } + + /** + * The asset identifier for the fee. + * + * @return assetId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ASSET_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getAssetId() { + return assetId; + } + + @JsonProperty(JSON_PROPERTY_ASSET_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAssetId(@jakarta.annotation.Nonnull String assetId) { + this.assetId = assetId; + } + + public FeePropertiesDetails amountType(@jakarta.annotation.Nonnull AmountTypeEnum amountType) { + this.amountType = amountType; + return this; + } + + /** + * The type of amount for the fee, either FIXED or BPS (basis points). + * + * @return amountType + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_AMOUNT_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AmountTypeEnum getAmountType() { + return amountType; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAmountType(@jakarta.annotation.Nonnull AmountTypeEnum amountType) { + this.amountType = amountType; + } + + /** Return true if this FeePropertiesDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + FeePropertiesDetails feePropertiesDetails = (FeePropertiesDetails) o; + return Objects.equals(this.feeType, feePropertiesDetails.feeType) + && Objects.equals(this.assetId, feePropertiesDetails.assetId) + && Objects.equals(this.amountType, feePropertiesDetails.amountType); + } + + @Override + public int hashCode() { + return Objects.hash(feeType, assetId, amountType); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class FeePropertiesDetails {\n"); + sb.append(" feeType: ").append(toIndentedString(feeType)).append("\n"); + sb.append(" assetId: ").append(toIndentedString(assetId)).append("\n"); + sb.append(" amountType: ").append(toIndentedString(amountType)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `feeType` to the URL query string + if (getFeeType() != null) { + joiner.add( + String.format( + "%sfeeType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getFeeType())))); + } + + // add `assetId` to the URL query string + if (getAssetId() != null) { + joiner.add( + String.format( + "%sassetId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAssetId())))); + } + + // add `amountType` to the URL query string + if (getAmountType() != null) { + joiner.add( + String.format( + "%samountType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmountType())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/FiatDestination.java b/src/main/java/com/fireblocks/sdk/model/FiatDestination.java new file mode 100644 index 00000000..379a11fb --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/FiatDestination.java @@ -0,0 +1,847 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.core.JsonGenerator; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.JsonToken; +import com.fasterxml.jackson.databind.DeserializationContext; +import com.fasterxml.jackson.databind.JsonMappingException; +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.MapperFeature; +import com.fasterxml.jackson.databind.SerializerProvider; +import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.deser.std.StdDeserializer; +import com.fasterxml.jackson.databind.ser.std.StdSerializer; +import com.fireblocks.sdk.JSON; +import java.io.IOException; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.StringJoiner; +import java.util.logging.Level; +import java.util.logging.Logger; + +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +@JsonDeserialize(using = FiatDestination.FiatDestinationDeserializer.class) +@JsonSerialize(using = FiatDestination.FiatDestinationSerializer.class) +public class FiatDestination extends AbstractOpenApiSchema { + private static final Logger log = Logger.getLogger(FiatDestination.class.getName()); + + public static class FiatDestinationSerializer extends StdSerializer { + public FiatDestinationSerializer(Class t) { + super(t); + } + + public FiatDestinationSerializer() { + this(null); + } + + @Override + public void serialize( + FiatDestination value, JsonGenerator jgen, SerializerProvider provider) + throws IOException, JsonProcessingException { + jgen.writeObject(value.getActualInstance()); + } + } + + public static class FiatDestinationDeserializer extends StdDeserializer { + public FiatDestinationDeserializer() { + this(FiatDestination.class); + } + + public FiatDestinationDeserializer(Class vc) { + super(vc); + } + + @Override + public FiatDestination deserialize(JsonParser jp, DeserializationContext ctxt) + throws IOException, JsonProcessingException { + JsonNode tree = jp.readValueAsTree(); + Object deserialized = null; + boolean typeCoercion = ctxt.isEnabled(MapperFeature.ALLOW_COERCION_OF_SCALARS); + int match = 0; + JsonToken token = tree.traverse(jp.getCodec()).nextToken(); + // deserialize AchDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (AchDestination.class.equals(Integer.class) + || AchDestination.class.equals(Long.class) + || AchDestination.class.equals(Float.class) + || AchDestination.class.equals(Double.class) + || AchDestination.class.equals(Boolean.class) + || AchDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((AchDestination.class.equals(Integer.class) + || AchDestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((AchDestination.class.equals(Float.class) + || AchDestination.class.equals(Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (AchDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (AchDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = tree.traverse(jp.getCodec()).readValueAs(AchDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'AchDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log(Level.FINER, "Input data does not match schema 'AchDestination'", e); + } + + // deserialize IbanDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (IbanDestination.class.equals(Integer.class) + || IbanDestination.class.equals(Long.class) + || IbanDestination.class.equals(Float.class) + || IbanDestination.class.equals(Double.class) + || IbanDestination.class.equals(Boolean.class) + || IbanDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((IbanDestination.class.equals(Integer.class) + || IbanDestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((IbanDestination.class.equals(Float.class) + || IbanDestination.class.equals(Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (IbanDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (IbanDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = tree.traverse(jp.getCodec()).readValueAs(IbanDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'IbanDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log(Level.FINER, "Input data does not match schema 'IbanDestination'", e); + } + + // deserialize LocalBankTransferAfricaDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (LocalBankTransferAfricaDestination.class.equals(Integer.class) + || LocalBankTransferAfricaDestination.class.equals(Long.class) + || LocalBankTransferAfricaDestination.class.equals(Float.class) + || LocalBankTransferAfricaDestination.class.equals(Double.class) + || LocalBankTransferAfricaDestination.class.equals(Boolean.class) + || LocalBankTransferAfricaDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((LocalBankTransferAfricaDestination.class.equals(Integer.class) + || LocalBankTransferAfricaDestination.class.equals( + Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((LocalBankTransferAfricaDestination.class.equals(Float.class) + || LocalBankTransferAfricaDestination.class.equals( + Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (LocalBankTransferAfricaDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (LocalBankTransferAfricaDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = + tree.traverse(jp.getCodec()) + .readValueAs(LocalBankTransferAfricaDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log( + Level.FINER, + "Input data matches schema 'LocalBankTransferAfricaDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log( + Level.FINER, + "Input data does not match schema 'LocalBankTransferAfricaDestination'", + e); + } + + // deserialize MobileMoneyDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (MobileMoneyDestination.class.equals(Integer.class) + || MobileMoneyDestination.class.equals(Long.class) + || MobileMoneyDestination.class.equals(Float.class) + || MobileMoneyDestination.class.equals(Double.class) + || MobileMoneyDestination.class.equals(Boolean.class) + || MobileMoneyDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((MobileMoneyDestination.class.equals(Integer.class) + || MobileMoneyDestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((MobileMoneyDestination.class.equals(Float.class) + || MobileMoneyDestination.class.equals( + Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (MobileMoneyDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (MobileMoneyDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = + tree.traverse(jp.getCodec()).readValueAs(MobileMoneyDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'MobileMoneyDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log( + Level.FINER, + "Input data does not match schema 'MobileMoneyDestination'", + e); + } + + // deserialize PixDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (PixDestination.class.equals(Integer.class) + || PixDestination.class.equals(Long.class) + || PixDestination.class.equals(Float.class) + || PixDestination.class.equals(Double.class) + || PixDestination.class.equals(Boolean.class) + || PixDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((PixDestination.class.equals(Integer.class) + || PixDestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((PixDestination.class.equals(Float.class) + || PixDestination.class.equals(Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (PixDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (PixDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = tree.traverse(jp.getCodec()).readValueAs(PixDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'PixDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log(Level.FINER, "Input data does not match schema 'PixDestination'", e); + } + + // deserialize SEPADestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (SEPADestination.class.equals(Integer.class) + || SEPADestination.class.equals(Long.class) + || SEPADestination.class.equals(Float.class) + || SEPADestination.class.equals(Double.class) + || SEPADestination.class.equals(Boolean.class) + || SEPADestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((SEPADestination.class.equals(Integer.class) + || SEPADestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((SEPADestination.class.equals(Float.class) + || SEPADestination.class.equals(Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (SEPADestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (SEPADestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = tree.traverse(jp.getCodec()).readValueAs(SEPADestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'SEPADestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log(Level.FINER, "Input data does not match schema 'SEPADestination'", e); + } + + // deserialize SpeiDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (SpeiDestination.class.equals(Integer.class) + || SpeiDestination.class.equals(Long.class) + || SpeiDestination.class.equals(Float.class) + || SpeiDestination.class.equals(Double.class) + || SpeiDestination.class.equals(Boolean.class) + || SpeiDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((SpeiDestination.class.equals(Integer.class) + || SpeiDestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((SpeiDestination.class.equals(Float.class) + || SpeiDestination.class.equals(Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (SpeiDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (SpeiDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = tree.traverse(jp.getCodec()).readValueAs(SpeiDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'SpeiDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log(Level.FINER, "Input data does not match schema 'SpeiDestination'", e); + } + + // deserialize SwiftDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (SwiftDestination.class.equals(Integer.class) + || SwiftDestination.class.equals(Long.class) + || SwiftDestination.class.equals(Float.class) + || SwiftDestination.class.equals(Double.class) + || SwiftDestination.class.equals(Boolean.class) + || SwiftDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((SwiftDestination.class.equals(Integer.class) + || SwiftDestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((SwiftDestination.class.equals(Float.class) + || SwiftDestination.class.equals(Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (SwiftDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (SwiftDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = tree.traverse(jp.getCodec()).readValueAs(SwiftDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'SwiftDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log(Level.FINER, "Input data does not match schema 'SwiftDestination'", e); + } + + // deserialize USWireDestination + try { + boolean attemptParsing = true; + // ensure that we respect type coercion as set on the client ObjectMapper + if (USWireDestination.class.equals(Integer.class) + || USWireDestination.class.equals(Long.class) + || USWireDestination.class.equals(Float.class) + || USWireDestination.class.equals(Double.class) + || USWireDestination.class.equals(Boolean.class) + || USWireDestination.class.equals(String.class)) { + attemptParsing = typeCoercion; + if (!attemptParsing) { + attemptParsing |= + ((USWireDestination.class.equals(Integer.class) + || USWireDestination.class.equals(Long.class)) + && token == JsonToken.VALUE_NUMBER_INT); + attemptParsing |= + ((USWireDestination.class.equals(Float.class) + || USWireDestination.class.equals(Double.class)) + && token == JsonToken.VALUE_NUMBER_FLOAT); + attemptParsing |= + (USWireDestination.class.equals(Boolean.class) + && (token == JsonToken.VALUE_FALSE + || token == JsonToken.VALUE_TRUE)); + attemptParsing |= + (USWireDestination.class.equals(String.class) + && token == JsonToken.VALUE_STRING); + } + } + if (attemptParsing) { + deserialized = + tree.traverse(jp.getCodec()).readValueAs(USWireDestination.class); + // TODO: there is no validation against JSON schema constraints + // (min, max, enum, pattern...), this does not perform a strict JSON + // validation, which means the 'match' count may be higher than it should be. + match++; + log.log(Level.FINER, "Input data matches schema 'USWireDestination'"); + } + } catch (Exception e) { + // deserialization failed, continue + log.log(Level.FINER, "Input data does not match schema 'USWireDestination'", e); + } + + if (match == 1) { + FiatDestination ret = new FiatDestination(); + ret.setActualInstance(deserialized); + return ret; + } + throw new IOException( + String.format( + "Failed deserialization for FiatDestination: %d classes match result," + + " expected 1", + match)); + } + + /** Handle deserialization of the 'null' value. */ + @Override + public FiatDestination getNullValue(DeserializationContext ctxt) + throws JsonMappingException { + throw new JsonMappingException(ctxt.getParser(), "FiatDestination cannot be null"); + } + } + + // store a list of schema names defined in oneOf + public static final Map> schemas = new HashMap<>(); + + public FiatDestination() { + super("oneOf", Boolean.FALSE); + } + + public FiatDestination(AchDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(IbanDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(LocalBankTransferAfricaDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(MobileMoneyDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(PixDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(SEPADestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(SpeiDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(SwiftDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + public FiatDestination(USWireDestination o) { + super("oneOf", Boolean.FALSE); + setActualInstance(o); + } + + static { + schemas.put("AchDestination", AchDestination.class); + schemas.put("IbanDestination", IbanDestination.class); + schemas.put("LocalBankTransferAfricaDestination", LocalBankTransferAfricaDestination.class); + schemas.put("MobileMoneyDestination", MobileMoneyDestination.class); + schemas.put("PixDestination", PixDestination.class); + schemas.put("SEPADestination", SEPADestination.class); + schemas.put("SpeiDestination", SpeiDestination.class); + schemas.put("SwiftDestination", SwiftDestination.class); + schemas.put("USWireDestination", USWireDestination.class); + JSON.registerDescendants(FiatDestination.class, Collections.unmodifiableMap(schemas)); + } + + @Override + public Map> getSchemas() { + return FiatDestination.schemas; + } + + /** + * Set the instance that matches the oneOf child schema, check the instance parameter is valid + * against the oneOf child schemas: AchDestination, IbanDestination, + * LocalBankTransferAfricaDestination, MobileMoneyDestination, PixDestination, SEPADestination, + * SpeiDestination, SwiftDestination, USWireDestination + * + *

It could be an instance of the 'oneOf' schemas. The oneOf child schemas may themselves be + * a composed schema (allOf, anyOf, oneOf). + */ + @Override + public void setActualInstance(Object instance) { + if (JSON.isInstanceOf(AchDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf(IbanDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf( + LocalBankTransferAfricaDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf(MobileMoneyDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf(PixDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf(SEPADestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf(SpeiDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf(SwiftDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + if (JSON.isInstanceOf(USWireDestination.class, instance, new HashSet>())) { + super.setActualInstance(instance); + return; + } + + throw new RuntimeException( + "Invalid instance type. Must be AchDestination, IbanDestination," + + " LocalBankTransferAfricaDestination, MobileMoneyDestination, PixDestination," + + " SEPADestination, SpeiDestination, SwiftDestination, USWireDestination"); + } + + /** + * Get the actual instance, which can be the following: AchDestination, IbanDestination, + * LocalBankTransferAfricaDestination, MobileMoneyDestination, PixDestination, SEPADestination, + * SpeiDestination, SwiftDestination, USWireDestination + * + * @return The actual instance (AchDestination, IbanDestination, + * LocalBankTransferAfricaDestination, MobileMoneyDestination, PixDestination, + * SEPADestination, SpeiDestination, SwiftDestination, USWireDestination) + */ + @Override + public Object getActualInstance() { + return super.getActualInstance(); + } + + /** + * Get the actual instance of `AchDestination`. If the actual instance is not `AchDestination`, + * the ClassCastException will be thrown. + * + * @return The actual instance of `AchDestination` + * @throws ClassCastException if the instance is not `AchDestination` + */ + public AchDestination getAchDestination() throws ClassCastException { + return (AchDestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `IbanDestination`. If the actual instance is not + * `IbanDestination`, the ClassCastException will be thrown. + * + * @return The actual instance of `IbanDestination` + * @throws ClassCastException if the instance is not `IbanDestination` + */ + public IbanDestination getIbanDestination() throws ClassCastException { + return (IbanDestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `LocalBankTransferAfricaDestination`. If the actual instance is + * not `LocalBankTransferAfricaDestination`, the ClassCastException will be thrown. + * + * @return The actual instance of `LocalBankTransferAfricaDestination` + * @throws ClassCastException if the instance is not `LocalBankTransferAfricaDestination` + */ + public LocalBankTransferAfricaDestination getLocalBankTransferAfricaDestination() + throws ClassCastException { + return (LocalBankTransferAfricaDestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `MobileMoneyDestination`. If the actual instance is not + * `MobileMoneyDestination`, the ClassCastException will be thrown. + * + * @return The actual instance of `MobileMoneyDestination` + * @throws ClassCastException if the instance is not `MobileMoneyDestination` + */ + public MobileMoneyDestination getMobileMoneyDestination() throws ClassCastException { + return (MobileMoneyDestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `PixDestination`. If the actual instance is not `PixDestination`, + * the ClassCastException will be thrown. + * + * @return The actual instance of `PixDestination` + * @throws ClassCastException if the instance is not `PixDestination` + */ + public PixDestination getPixDestination() throws ClassCastException { + return (PixDestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `SEPADestination`. If the actual instance is not + * `SEPADestination`, the ClassCastException will be thrown. + * + * @return The actual instance of `SEPADestination` + * @throws ClassCastException if the instance is not `SEPADestination` + */ + public SEPADestination getSEPADestination() throws ClassCastException { + return (SEPADestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `SpeiDestination`. If the actual instance is not + * `SpeiDestination`, the ClassCastException will be thrown. + * + * @return The actual instance of `SpeiDestination` + * @throws ClassCastException if the instance is not `SpeiDestination` + */ + public SpeiDestination getSpeiDestination() throws ClassCastException { + return (SpeiDestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `SwiftDestination`. If the actual instance is not + * `SwiftDestination`, the ClassCastException will be thrown. + * + * @return The actual instance of `SwiftDestination` + * @throws ClassCastException if the instance is not `SwiftDestination` + */ + public SwiftDestination getSwiftDestination() throws ClassCastException { + return (SwiftDestination) super.getActualInstance(); + } + + /** + * Get the actual instance of `USWireDestination`. If the actual instance is not + * `USWireDestination`, the ClassCastException will be thrown. + * + * @return The actual instance of `USWireDestination` + * @throws ClassCastException if the instance is not `USWireDestination` + */ + public USWireDestination getUSWireDestination() throws ClassCastException { + return (USWireDestination) super.getActualInstance(); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + if (getActualInstance() instanceof IbanDestination) { + if (getActualInstance() != null) { + joiner.add( + ((IbanDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_0" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof SwiftDestination) { + if (getActualInstance() != null) { + joiner.add( + ((SwiftDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_1" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof AchDestination) { + if (getActualInstance() != null) { + joiner.add( + ((AchDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_2" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof USWireDestination) { + if (getActualInstance() != null) { + joiner.add( + ((USWireDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_3" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof SpeiDestination) { + if (getActualInstance() != null) { + joiner.add( + ((SpeiDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_4" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof SEPADestination) { + if (getActualInstance() != null) { + joiner.add( + ((SEPADestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_5" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof PixDestination) { + if (getActualInstance() != null) { + joiner.add( + ((PixDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_6" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof LocalBankTransferAfricaDestination) { + if (getActualInstance() != null) { + joiner.add( + ((LocalBankTransferAfricaDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_7" + suffix)); + } + return joiner.toString(); + } + if (getActualInstance() instanceof MobileMoneyDestination) { + if (getActualInstance() != null) { + joiner.add( + ((MobileMoneyDestination) getActualInstance()) + .toUrlQueryString(prefix + "one_of_8" + suffix)); + } + return joiner.toString(); + } + return null; + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/IbanAddress.java b/src/main/java/com/fireblocks/sdk/model/IbanAddress.java new file mode 100644 index 00000000..acf83ae1 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/IbanAddress.java @@ -0,0 +1,183 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** IbanAddress */ +@JsonPropertyOrder({IbanAddress.JSON_PROPERTY_ACCOUNT_HOLDER, IbanAddress.JSON_PROPERTY_IBAN}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class IbanAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_IBAN = "iban"; + @jakarta.annotation.Nonnull private String iban; + + public IbanAddress() {} + + @JsonCreator + public IbanAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_IBAN, required = true) String iban) { + this.accountHolder = accountHolder; + this.iban = iban; + } + + public IbanAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public IbanAddress iban(@jakarta.annotation.Nonnull String iban) { + this.iban = iban; + return this; + } + + /** + * Get iban + * + * @return iban + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_IBAN) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getIban() { + return iban; + } + + @JsonProperty(JSON_PROPERTY_IBAN) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setIban(@jakarta.annotation.Nonnull String iban) { + this.iban = iban; + } + + /** Return true if this IbanAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + IbanAddress ibanAddress = (IbanAddress) o; + return Objects.equals(this.accountHolder, ibanAddress.accountHolder) + && Objects.equals(this.iban, ibanAddress.iban); + } + + @Override + public int hashCode() { + return Objects.hash(accountHolder, iban); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class IbanAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" iban: ").append(toIndentedString(iban)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `iban` to the URL query string + if (getIban() != null) { + joiner.add( + String.format( + "%siban%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIban())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/IbanDestination.java b/src/main/java/com/fireblocks/sdk/model/IbanDestination.java new file mode 100644 index 00000000..5c24e46a --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/IbanDestination.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** IbanDestination */ +@JsonPropertyOrder({IbanDestination.JSON_PROPERTY_TYPE, IbanDestination.JSON_PROPERTY_ADDRESS}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class IbanDestination { + /** Gets or Sets type */ + public enum TypeEnum { + IBAN(String.valueOf("IBAN")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private IbanAddress address; + + public IbanDestination() {} + + @JsonCreator + public IbanDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) IbanAddress address) { + this.type = type; + this.address = address; + } + + public IbanDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public IbanDestination address(@jakarta.annotation.Nonnull IbanAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public IbanAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull IbanAddress address) { + this.address = address; + } + + /** Return true if this IbanDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + IbanDestination ibanDestination = (IbanDestination) o; + return Objects.equals(this.type, ibanDestination.type) + && Objects.equals(this.address, ibanDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class IbanDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/InitiatorConfig.java b/src/main/java/com/fireblocks/sdk/model/InitiatorConfig.java index 973c8cbe..4ac94f02 100644 --- a/src/main/java/com/fireblocks/sdk/model/InitiatorConfig.java +++ b/src/main/java/com/fireblocks/sdk/model/InitiatorConfig.java @@ -13,7 +13,6 @@ package com.fireblocks.sdk.model; -import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonPropertyOrder; @@ -52,17 +51,10 @@ public class InitiatorConfig { @jakarta.annotation.Nullable private List exchange; public static final String JSON_PROPERTY_OPERATOR = "operator"; - @jakarta.annotation.Nonnull private PolicyOperator operator; + @jakarta.annotation.Nullable private PolicyOperator operator; public InitiatorConfig() {} - @JsonCreator - public InitiatorConfig( - @JsonProperty(value = JSON_PROPERTY_OPERATOR, required = true) - PolicyOperator operator) { - this.operator = operator; - } - public InitiatorConfig users(@jakarta.annotation.Nullable List users) { this.users = users; return this; @@ -218,7 +210,7 @@ public void setExchange(@jakarta.annotation.Nullable List exchange) { this.exchange = exchange; } - public InitiatorConfig operator(@jakarta.annotation.Nonnull PolicyOperator operator) { + public InitiatorConfig operator(@jakarta.annotation.Nullable PolicyOperator operator) { this.operator = operator; return this; } @@ -228,16 +220,16 @@ public InitiatorConfig operator(@jakarta.annotation.Nonnull PolicyOperator opera * * @return operator */ - @jakarta.annotation.Nonnull + @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_OPERATOR) - @JsonInclude(value = JsonInclude.Include.ALWAYS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) public PolicyOperator getOperator() { return operator; } @JsonProperty(JSON_PROPERTY_OPERATOR) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setOperator(@jakarta.annotation.Nonnull PolicyOperator operator) { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperator(@jakarta.annotation.Nullable PolicyOperator operator) { this.operator = operator; } diff --git a/src/main/java/com/fireblocks/sdk/model/LimitExecutionRequestDetails.java b/src/main/java/com/fireblocks/sdk/model/LimitExecutionRequestDetails.java index a0d71feb..7eefa6e2 100644 --- a/src/main/java/com/fireblocks/sdk/model/LimitExecutionRequestDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/LimitExecutionRequestDetails.java @@ -24,29 +24,27 @@ /** LimitExecutionRequestDetails */ @JsonPropertyOrder({ + LimitExecutionRequestDetails.JSON_PROPERTY_TYPE, + LimitExecutionRequestDetails.JSON_PROPERTY_TIME_IN_FORCE, + LimitExecutionRequestDetails.JSON_PROPERTY_LIMIT_PRICE, LimitExecutionRequestDetails.JSON_PROPERTY_SIDE, LimitExecutionRequestDetails.JSON_PROPERTY_BASE_AMOUNT, LimitExecutionRequestDetails.JSON_PROPERTY_BASE_ASSET_ID, LimitExecutionRequestDetails.JSON_PROPERTY_BASE_ASSET_RAIL, LimitExecutionRequestDetails.JSON_PROPERTY_QUOTE_ASSET_ID, - LimitExecutionRequestDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL, - LimitExecutionRequestDetails.JSON_PROPERTY_TYPE, - LimitExecutionRequestDetails.JSON_PROPERTY_TIME_IN_FORCE, - LimitExecutionRequestDetails.JSON_PROPERTY_LIMIT_PRICE + LimitExecutionRequestDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class LimitExecutionRequestDetails { - /** Side of the order */ - public enum SideEnum { - BUY(String.valueOf("BUY")), - - SELL(String.valueOf("SELL")); + /** Order type for limit orders */ + public enum TypeEnum { + LIMIT(String.valueOf("LIMIT")); private String value; - SideEnum(String value) { + TypeEnum(String value) { this.value = value; } @@ -61,8 +59,8 @@ public String toString() { } @JsonCreator - public static SideEnum fromValue(String value) { - for (SideEnum b : SideEnum.values()) { + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { if (b.value.equals(value)) { return b; } @@ -71,31 +69,24 @@ public static SideEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_SIDE = "side"; - @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - - public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; - @jakarta.annotation.Nonnull private String baseAmount; - - public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; - @jakarta.annotation.Nonnull private String baseAssetId; + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; - public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; - @jakarta.annotation.Nullable private TransferRail baseAssetRail; + public static final String JSON_PROPERTY_TIME_IN_FORCE = "timeInForce"; + @jakarta.annotation.Nonnull private TimeInForce timeInForce; - public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; - @jakarta.annotation.Nonnull private String quoteAssetId; + public static final String JSON_PROPERTY_LIMIT_PRICE = "limitPrice"; + @jakarta.annotation.Nonnull private String limitPrice; - public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; - @jakarta.annotation.Nullable private TransferRail quoteAssetRail; + /** Side of the order */ + public enum SideEnum { + BUY(String.valueOf("BUY")), - /** Order type for limit orders */ - public enum TypeEnum { - LIMIT(String.valueOf("LIMIT")); + SELL(String.valueOf("SELL")); private String value; - TypeEnum(String value) { + SideEnum(String value) { this.value = value; } @@ -110,8 +101,8 @@ public String toString() { } @JsonCreator - public static TypeEnum fromValue(String value) { - for (TypeEnum b : TypeEnum.values()) { + public static SideEnum fromValue(String value) { + for (SideEnum b : SideEnum.values()) { if (b.value.equals(value)) { return b; } @@ -120,34 +111,113 @@ public static TypeEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_TYPE = "type"; - @jakarta.annotation.Nonnull private TypeEnum type; + public static final String JSON_PROPERTY_SIDE = "side"; + @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - public static final String JSON_PROPERTY_TIME_IN_FORCE = "timeInForce"; - @jakarta.annotation.Nonnull private TimeInForce timeInForce; + public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; + @jakarta.annotation.Nonnull private String baseAmount; - public static final String JSON_PROPERTY_LIMIT_PRICE = "limitPrice"; - @jakarta.annotation.Nonnull private String limitPrice; + public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; + @jakarta.annotation.Nonnull private String baseAssetId; + + public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; + @jakarta.annotation.Nullable private TransferRail baseAssetRail; + + public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; + @jakarta.annotation.Nonnull private String quoteAssetId; + + public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; + @jakarta.annotation.Nullable private TransferRail quoteAssetRail; public LimitExecutionRequestDetails() {} @JsonCreator public LimitExecutionRequestDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_TIME_IN_FORCE, required = true) + TimeInForce timeInForce, + @JsonProperty(value = JSON_PROPERTY_LIMIT_PRICE, required = true) String limitPrice, @JsonProperty(value = JSON_PROPERTY_SIDE, required = true) SideEnum side, @JsonProperty(value = JSON_PROPERTY_BASE_AMOUNT, required = true) String baseAmount, @JsonProperty(value = JSON_PROPERTY_BASE_ASSET_ID, required = true) String baseAssetId, @JsonProperty(value = JSON_PROPERTY_QUOTE_ASSET_ID, required = true) - String quoteAssetId, - @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, - @JsonProperty(value = JSON_PROPERTY_TIME_IN_FORCE, required = true) - TimeInForce timeInForce, - @JsonProperty(value = JSON_PROPERTY_LIMIT_PRICE, required = true) String limitPrice) { + String quoteAssetId) { + this.type = type; + this.timeInForce = timeInForce; + this.limitPrice = limitPrice; this.side = side; this.baseAmount = baseAmount; this.baseAssetId = baseAssetId; this.quoteAssetId = quoteAssetId; + } + + public LimitExecutionRequestDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for limit orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { this.type = type; + } + + public LimitExecutionRequestDetails timeInForce( + @jakarta.annotation.Nonnull TimeInForce timeInForce) { + this.timeInForce = timeInForce; + return this; + } + + /** + * Get timeInForce + * + * @return timeInForce + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TimeInForce getTimeInForce() { + return timeInForce; + } + + @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTimeInForce(@jakarta.annotation.Nonnull TimeInForce timeInForce) { this.timeInForce = timeInForce; + } + + public LimitExecutionRequestDetails limitPrice(@jakarta.annotation.Nonnull String limitPrice) { + this.limitPrice = limitPrice; + return this; + } + + /** + * Price for limit orders + * + * @return limitPrice + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getLimitPrice() { + return limitPrice; + } + + @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setLimitPrice(@jakarta.annotation.Nonnull String limitPrice) { this.limitPrice = limitPrice; } @@ -293,76 +363,6 @@ public void setQuoteAssetRail(@jakarta.annotation.Nullable TransferRail quoteAss this.quoteAssetRail = quoteAssetRail; } - public LimitExecutionRequestDetails type(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - return this; - } - - /** - * Order type for limit orders - * - * @return type - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public TypeEnum getType() { - return type; - } - - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setType(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - } - - public LimitExecutionRequestDetails timeInForce( - @jakarta.annotation.Nonnull TimeInForce timeInForce) { - this.timeInForce = timeInForce; - return this; - } - - /** - * Get timeInForce - * - * @return timeInForce - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public TimeInForce getTimeInForce() { - return timeInForce; - } - - @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setTimeInForce(@jakarta.annotation.Nonnull TimeInForce timeInForce) { - this.timeInForce = timeInForce; - } - - public LimitExecutionRequestDetails limitPrice(@jakarta.annotation.Nonnull String limitPrice) { - this.limitPrice = limitPrice; - return this; - } - - /** - * Price for limit orders - * - * @return limitPrice - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public String getLimitPrice() { - return limitPrice; - } - - @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setLimitPrice(@jakarta.annotation.Nonnull String limitPrice) { - this.limitPrice = limitPrice; - } - /** Return true if this LimitExecutionRequestDetails object is equal to o. */ @Override public boolean equals(Object o) { @@ -374,44 +374,44 @@ public boolean equals(Object o) { } LimitExecutionRequestDetails limitExecutionRequestDetails = (LimitExecutionRequestDetails) o; - return Objects.equals(this.side, limitExecutionRequestDetails.side) + return Objects.equals(this.type, limitExecutionRequestDetails.type) + && Objects.equals(this.timeInForce, limitExecutionRequestDetails.timeInForce) + && Objects.equals(this.limitPrice, limitExecutionRequestDetails.limitPrice) + && Objects.equals(this.side, limitExecutionRequestDetails.side) && Objects.equals(this.baseAmount, limitExecutionRequestDetails.baseAmount) && Objects.equals(this.baseAssetId, limitExecutionRequestDetails.baseAssetId) && Objects.equals(this.baseAssetRail, limitExecutionRequestDetails.baseAssetRail) && Objects.equals(this.quoteAssetId, limitExecutionRequestDetails.quoteAssetId) - && Objects.equals(this.quoteAssetRail, limitExecutionRequestDetails.quoteAssetRail) - && Objects.equals(this.type, limitExecutionRequestDetails.type) - && Objects.equals(this.timeInForce, limitExecutionRequestDetails.timeInForce) - && Objects.equals(this.limitPrice, limitExecutionRequestDetails.limitPrice); + && Objects.equals(this.quoteAssetRail, limitExecutionRequestDetails.quoteAssetRail); } @Override public int hashCode() { return Objects.hash( + type, + timeInForce, + limitPrice, side, baseAmount, baseAssetId, baseAssetRail, quoteAssetId, - quoteAssetRail, - type, - timeInForce, - limitPrice); + quoteAssetRail); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class LimitExecutionRequestDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" timeInForce: ").append(toIndentedString(timeInForce)).append("\n"); + sb.append(" limitPrice: ").append(toIndentedString(limitPrice)).append("\n"); sb.append(" side: ").append(toIndentedString(side)).append("\n"); sb.append(" baseAmount: ").append(toIndentedString(baseAmount)).append("\n"); sb.append(" baseAssetId: ").append(toIndentedString(baseAssetId)).append("\n"); sb.append(" baseAssetRail: ").append(toIndentedString(baseAssetRail)).append("\n"); sb.append(" quoteAssetId: ").append(toIndentedString(quoteAssetId)).append("\n"); sb.append(" quoteAssetRail: ").append(toIndentedString(quoteAssetRail)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append(" timeInForce: ").append(toIndentedString(timeInForce)).append("\n"); - sb.append(" limitPrice: ").append(toIndentedString(limitPrice)).append("\n"); sb.append("}"); return sb.toString(); } @@ -459,6 +459,36 @@ public String toUrlQueryString(String prefix) { StringJoiner joiner = new StringJoiner("&"); + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `timeInForce` to the URL query string + if (getTimeInForce() != null) { + joiner.add( + String.format( + "%stimeInForce%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimeInForce())))); + } + + // add `limitPrice` to the URL query string + if (getLimitPrice() != null) { + joiner.add( + String.format( + "%slimitPrice%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getLimitPrice())))); + } + // add `side` to the URL query string if (getSide() != null) { joiner.add( @@ -519,36 +549,6 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getQuoteAssetRail())))); } - // add `type` to the URL query string - if (getType() != null) { - joiner.add( - String.format( - "%stype%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getType())))); - } - - // add `timeInForce` to the URL query string - if (getTimeInForce() != null) { - joiner.add( - String.format( - "%stimeInForce%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getTimeInForce())))); - } - - // add `limitPrice` to the URL query string - if (getLimitPrice() != null) { - joiner.add( - String.format( - "%slimitPrice%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getLimitPrice())))); - } - return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/LimitExecutionResponseDetails.java b/src/main/java/com/fireblocks/sdk/model/LimitExecutionResponseDetails.java index 62b8039a..faef0453 100644 --- a/src/main/java/com/fireblocks/sdk/model/LimitExecutionResponseDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/LimitExecutionResponseDetails.java @@ -24,29 +24,27 @@ /** LimitExecutionResponseDetails */ @JsonPropertyOrder({ + LimitExecutionResponseDetails.JSON_PROPERTY_TYPE, + LimitExecutionResponseDetails.JSON_PROPERTY_TIME_IN_FORCE, + LimitExecutionResponseDetails.JSON_PROPERTY_LIMIT_PRICE, LimitExecutionResponseDetails.JSON_PROPERTY_SIDE, LimitExecutionResponseDetails.JSON_PROPERTY_BASE_AMOUNT, LimitExecutionResponseDetails.JSON_PROPERTY_BASE_ASSET_ID, LimitExecutionResponseDetails.JSON_PROPERTY_BASE_ASSET_RAIL, LimitExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_ID, - LimitExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL, - LimitExecutionResponseDetails.JSON_PROPERTY_TYPE, - LimitExecutionResponseDetails.JSON_PROPERTY_TIME_IN_FORCE, - LimitExecutionResponseDetails.JSON_PROPERTY_LIMIT_PRICE + LimitExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class LimitExecutionResponseDetails { - /** Side of the order */ - public enum SideEnum { - BUY(String.valueOf("BUY")), - - SELL(String.valueOf("SELL")); + /** Order type for limit orders */ + public enum TypeEnum { + LIMIT(String.valueOf("LIMIT")); private String value; - SideEnum(String value) { + TypeEnum(String value) { this.value = value; } @@ -61,8 +59,8 @@ public String toString() { } @JsonCreator - public static SideEnum fromValue(String value) { - for (SideEnum b : SideEnum.values()) { + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { if (b.value.equals(value)) { return b; } @@ -71,31 +69,24 @@ public static SideEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_SIDE = "side"; - @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - - public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; - @jakarta.annotation.Nonnull private String baseAmount; - - public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; - @jakarta.annotation.Nonnull private String baseAssetId; + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; - public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; - @jakarta.annotation.Nullable private TransferRail baseAssetRail; + public static final String JSON_PROPERTY_TIME_IN_FORCE = "timeInForce"; + @jakarta.annotation.Nonnull private TimeInForce timeInForce; - public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; - @jakarta.annotation.Nonnull private String quoteAssetId; + public static final String JSON_PROPERTY_LIMIT_PRICE = "limitPrice"; + @jakarta.annotation.Nonnull private String limitPrice; - public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; - @jakarta.annotation.Nullable private TransferRail quoteAssetRail; + /** Side of the order */ + public enum SideEnum { + BUY(String.valueOf("BUY")), - /** Order type for limit orders */ - public enum TypeEnum { - LIMIT(String.valueOf("LIMIT")); + SELL(String.valueOf("SELL")); private String value; - TypeEnum(String value) { + SideEnum(String value) { this.value = value; } @@ -110,8 +101,8 @@ public String toString() { } @JsonCreator - public static TypeEnum fromValue(String value) { - for (TypeEnum b : TypeEnum.values()) { + public static SideEnum fromValue(String value) { + for (SideEnum b : SideEnum.values()) { if (b.value.equals(value)) { return b; } @@ -120,34 +111,113 @@ public static TypeEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_TYPE = "type"; - @jakarta.annotation.Nonnull private TypeEnum type; + public static final String JSON_PROPERTY_SIDE = "side"; + @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - public static final String JSON_PROPERTY_TIME_IN_FORCE = "timeInForce"; - @jakarta.annotation.Nonnull private TimeInForce timeInForce; + public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; + @jakarta.annotation.Nonnull private String baseAmount; - public static final String JSON_PROPERTY_LIMIT_PRICE = "limitPrice"; - @jakarta.annotation.Nonnull private String limitPrice; + public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; + @jakarta.annotation.Nonnull private String baseAssetId; + + public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; + @jakarta.annotation.Nullable private TransferRail baseAssetRail; + + public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; + @jakarta.annotation.Nonnull private String quoteAssetId; + + public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; + @jakarta.annotation.Nullable private TransferRail quoteAssetRail; public LimitExecutionResponseDetails() {} @JsonCreator public LimitExecutionResponseDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_TIME_IN_FORCE, required = true) + TimeInForce timeInForce, + @JsonProperty(value = JSON_PROPERTY_LIMIT_PRICE, required = true) String limitPrice, @JsonProperty(value = JSON_PROPERTY_SIDE, required = true) SideEnum side, @JsonProperty(value = JSON_PROPERTY_BASE_AMOUNT, required = true) String baseAmount, @JsonProperty(value = JSON_PROPERTY_BASE_ASSET_ID, required = true) String baseAssetId, @JsonProperty(value = JSON_PROPERTY_QUOTE_ASSET_ID, required = true) - String quoteAssetId, - @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, - @JsonProperty(value = JSON_PROPERTY_TIME_IN_FORCE, required = true) - TimeInForce timeInForce, - @JsonProperty(value = JSON_PROPERTY_LIMIT_PRICE, required = true) String limitPrice) { + String quoteAssetId) { + this.type = type; + this.timeInForce = timeInForce; + this.limitPrice = limitPrice; this.side = side; this.baseAmount = baseAmount; this.baseAssetId = baseAssetId; this.quoteAssetId = quoteAssetId; + } + + public LimitExecutionResponseDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for limit orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { this.type = type; + } + + public LimitExecutionResponseDetails timeInForce( + @jakarta.annotation.Nonnull TimeInForce timeInForce) { + this.timeInForce = timeInForce; + return this; + } + + /** + * Get timeInForce + * + * @return timeInForce + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TimeInForce getTimeInForce() { + return timeInForce; + } + + @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTimeInForce(@jakarta.annotation.Nonnull TimeInForce timeInForce) { this.timeInForce = timeInForce; + } + + public LimitExecutionResponseDetails limitPrice(@jakarta.annotation.Nonnull String limitPrice) { + this.limitPrice = limitPrice; + return this; + } + + /** + * Price for limit orders + * + * @return limitPrice + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getLimitPrice() { + return limitPrice; + } + + @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setLimitPrice(@jakarta.annotation.Nonnull String limitPrice) { this.limitPrice = limitPrice; } @@ -293,76 +363,6 @@ public void setQuoteAssetRail(@jakarta.annotation.Nullable TransferRail quoteAss this.quoteAssetRail = quoteAssetRail; } - public LimitExecutionResponseDetails type(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - return this; - } - - /** - * Order type for limit orders - * - * @return type - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public TypeEnum getType() { - return type; - } - - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setType(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - } - - public LimitExecutionResponseDetails timeInForce( - @jakarta.annotation.Nonnull TimeInForce timeInForce) { - this.timeInForce = timeInForce; - return this; - } - - /** - * Get timeInForce - * - * @return timeInForce - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public TimeInForce getTimeInForce() { - return timeInForce; - } - - @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setTimeInForce(@jakarta.annotation.Nonnull TimeInForce timeInForce) { - this.timeInForce = timeInForce; - } - - public LimitExecutionResponseDetails limitPrice(@jakarta.annotation.Nonnull String limitPrice) { - this.limitPrice = limitPrice; - return this; - } - - /** - * Price for limit orders - * - * @return limitPrice - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public String getLimitPrice() { - return limitPrice; - } - - @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setLimitPrice(@jakarta.annotation.Nonnull String limitPrice) { - this.limitPrice = limitPrice; - } - /** Return true if this LimitExecutionResponseDetails object is equal to o. */ @Override public boolean equals(Object o) { @@ -374,44 +374,45 @@ public boolean equals(Object o) { } LimitExecutionResponseDetails limitExecutionResponseDetails = (LimitExecutionResponseDetails) o; - return Objects.equals(this.side, limitExecutionResponseDetails.side) + return Objects.equals(this.type, limitExecutionResponseDetails.type) + && Objects.equals(this.timeInForce, limitExecutionResponseDetails.timeInForce) + && Objects.equals(this.limitPrice, limitExecutionResponseDetails.limitPrice) + && Objects.equals(this.side, limitExecutionResponseDetails.side) && Objects.equals(this.baseAmount, limitExecutionResponseDetails.baseAmount) && Objects.equals(this.baseAssetId, limitExecutionResponseDetails.baseAssetId) && Objects.equals(this.baseAssetRail, limitExecutionResponseDetails.baseAssetRail) && Objects.equals(this.quoteAssetId, limitExecutionResponseDetails.quoteAssetId) - && Objects.equals(this.quoteAssetRail, limitExecutionResponseDetails.quoteAssetRail) - && Objects.equals(this.type, limitExecutionResponseDetails.type) - && Objects.equals(this.timeInForce, limitExecutionResponseDetails.timeInForce) - && Objects.equals(this.limitPrice, limitExecutionResponseDetails.limitPrice); + && Objects.equals( + this.quoteAssetRail, limitExecutionResponseDetails.quoteAssetRail); } @Override public int hashCode() { return Objects.hash( + type, + timeInForce, + limitPrice, side, baseAmount, baseAssetId, baseAssetRail, quoteAssetId, - quoteAssetRail, - type, - timeInForce, - limitPrice); + quoteAssetRail); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class LimitExecutionResponseDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" timeInForce: ").append(toIndentedString(timeInForce)).append("\n"); + sb.append(" limitPrice: ").append(toIndentedString(limitPrice)).append("\n"); sb.append(" side: ").append(toIndentedString(side)).append("\n"); sb.append(" baseAmount: ").append(toIndentedString(baseAmount)).append("\n"); sb.append(" baseAssetId: ").append(toIndentedString(baseAssetId)).append("\n"); sb.append(" baseAssetRail: ").append(toIndentedString(baseAssetRail)).append("\n"); sb.append(" quoteAssetId: ").append(toIndentedString(quoteAssetId)).append("\n"); sb.append(" quoteAssetRail: ").append(toIndentedString(quoteAssetRail)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append(" timeInForce: ").append(toIndentedString(timeInForce)).append("\n"); - sb.append(" limitPrice: ").append(toIndentedString(limitPrice)).append("\n"); sb.append("}"); return sb.toString(); } @@ -459,6 +460,36 @@ public String toUrlQueryString(String prefix) { StringJoiner joiner = new StringJoiner("&"); + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `timeInForce` to the URL query string + if (getTimeInForce() != null) { + joiner.add( + String.format( + "%stimeInForce%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimeInForce())))); + } + + // add `limitPrice` to the URL query string + if (getLimitPrice() != null) { + joiner.add( + String.format( + "%slimitPrice%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getLimitPrice())))); + } + // add `side` to the URL query string if (getSide() != null) { joiner.add( @@ -519,36 +550,6 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getQuoteAssetRail())))); } - // add `type` to the URL query string - if (getType() != null) { - joiner.add( - String.format( - "%stype%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getType())))); - } - - // add `timeInForce` to the URL query string - if (getTimeInForce() != null) { - joiner.add( - String.format( - "%stimeInForce%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getTimeInForce())))); - } - - // add `limitPrice` to the URL query string - if (getLimitPrice() != null) { - joiner.add( - String.format( - "%slimitPrice%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getLimitPrice())))); - } - return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/LimitTypeDetails.java b/src/main/java/com/fireblocks/sdk/model/LimitTypeDetails.java new file mode 100644 index 00000000..117023d1 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/LimitTypeDetails.java @@ -0,0 +1,263 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** LimitTypeDetails */ +@JsonPropertyOrder({ + LimitTypeDetails.JSON_PROPERTY_TYPE, + LimitTypeDetails.JSON_PROPERTY_TIME_IN_FORCE, + LimitTypeDetails.JSON_PROPERTY_LIMIT_PRICE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class LimitTypeDetails { + /** Order type for limit orders */ + public enum TypeEnum { + LIMIT(String.valueOf("LIMIT")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_TIME_IN_FORCE = "timeInForce"; + @jakarta.annotation.Nonnull private TimeInForce timeInForce; + + public static final String JSON_PROPERTY_LIMIT_PRICE = "limitPrice"; + @jakarta.annotation.Nonnull private String limitPrice; + + public LimitTypeDetails() {} + + @JsonCreator + public LimitTypeDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_TIME_IN_FORCE, required = true) + TimeInForce timeInForce, + @JsonProperty(value = JSON_PROPERTY_LIMIT_PRICE, required = true) String limitPrice) { + this.type = type; + this.timeInForce = timeInForce; + this.limitPrice = limitPrice; + } + + public LimitTypeDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for limit orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public LimitTypeDetails timeInForce(@jakarta.annotation.Nonnull TimeInForce timeInForce) { + this.timeInForce = timeInForce; + return this; + } + + /** + * Get timeInForce + * + * @return timeInForce + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TimeInForce getTimeInForce() { + return timeInForce; + } + + @JsonProperty(JSON_PROPERTY_TIME_IN_FORCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTimeInForce(@jakarta.annotation.Nonnull TimeInForce timeInForce) { + this.timeInForce = timeInForce; + } + + public LimitTypeDetails limitPrice(@jakarta.annotation.Nonnull String limitPrice) { + this.limitPrice = limitPrice; + return this; + } + + /** + * Price for limit orders + * + * @return limitPrice + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getLimitPrice() { + return limitPrice; + } + + @JsonProperty(JSON_PROPERTY_LIMIT_PRICE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setLimitPrice(@jakarta.annotation.Nonnull String limitPrice) { + this.limitPrice = limitPrice; + } + + /** Return true if this LimitTypeDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + LimitTypeDetails limitTypeDetails = (LimitTypeDetails) o; + return Objects.equals(this.type, limitTypeDetails.type) + && Objects.equals(this.timeInForce, limitTypeDetails.timeInForce) + && Objects.equals(this.limitPrice, limitTypeDetails.limitPrice); + } + + @Override + public int hashCode() { + return Objects.hash(type, timeInForce, limitPrice); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class LimitTypeDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" timeInForce: ").append(toIndentedString(timeInForce)).append("\n"); + sb.append(" limitPrice: ").append(toIndentedString(limitPrice)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `timeInForce` to the URL query string + if (getTimeInForce() != null) { + joiner.add( + String.format( + "%stimeInForce%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimeInForce())))); + } + + // add `limitPrice` to the URL query string + if (getLimitPrice() != null) { + joiner.add( + String.format( + "%slimitPrice%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getLimitPrice())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddress.java b/src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddress.java new file mode 100644 index 00000000..8453e214 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddress.java @@ -0,0 +1,271 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** LocalBankTransferAfricaAddress */ +@JsonPropertyOrder({ + LocalBankTransferAfricaAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + LocalBankTransferAfricaAddress.JSON_PROPERTY_ACCOUNT_NUMBER, + LocalBankTransferAfricaAddress.JSON_PROPERTY_BANK_NAME, + LocalBankTransferAfricaAddress.JSON_PROPERTY_BANK_CODE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class LocalBankTransferAfricaAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_ACCOUNT_NUMBER = "accountNumber"; + @jakarta.annotation.Nonnull private String accountNumber; + + public static final String JSON_PROPERTY_BANK_NAME = "bankName"; + @jakarta.annotation.Nonnull private String bankName; + + public static final String JSON_PROPERTY_BANK_CODE = "bankCode"; + @jakarta.annotation.Nonnull private String bankCode; + + public LocalBankTransferAfricaAddress() {} + + @JsonCreator + public LocalBankTransferAfricaAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_NUMBER, required = true) + String accountNumber, + @JsonProperty(value = JSON_PROPERTY_BANK_NAME, required = true) String bankName, + @JsonProperty(value = JSON_PROPERTY_BANK_CODE, required = true) String bankCode) { + this.accountHolder = accountHolder; + this.accountNumber = accountNumber; + this.bankName = bankName; + this.bankCode = bankCode; + } + + public LocalBankTransferAfricaAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public LocalBankTransferAfricaAddress accountNumber( + @jakarta.annotation.Nonnull String accountNumber) { + this.accountNumber = accountNumber; + return this; + } + + /** + * Get accountNumber + * + * @return accountNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getAccountNumber() { + return accountNumber; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountNumber(@jakarta.annotation.Nonnull String accountNumber) { + this.accountNumber = accountNumber; + } + + public LocalBankTransferAfricaAddress bankName(@jakarta.annotation.Nonnull String bankName) { + this.bankName = bankName; + return this; + } + + /** + * Name of the bank + * + * @return bankName + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getBankName() { + return bankName; + } + + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setBankName(@jakarta.annotation.Nonnull String bankName) { + this.bankName = bankName; + } + + public LocalBankTransferAfricaAddress bankCode(@jakarta.annotation.Nonnull String bankCode) { + this.bankCode = bankCode; + return this; + } + + /** + * Internal bank identifier + * + * @return bankCode + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_BANK_CODE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getBankCode() { + return bankCode; + } + + @JsonProperty(JSON_PROPERTY_BANK_CODE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setBankCode(@jakarta.annotation.Nonnull String bankCode) { + this.bankCode = bankCode; + } + + /** Return true if this LocalBankTransferAfricaAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + LocalBankTransferAfricaAddress localBankTransferAfricaAddress = + (LocalBankTransferAfricaAddress) o; + return Objects.equals(this.accountHolder, localBankTransferAfricaAddress.accountHolder) + && Objects.equals(this.accountNumber, localBankTransferAfricaAddress.accountNumber) + && Objects.equals(this.bankName, localBankTransferAfricaAddress.bankName) + && Objects.equals(this.bankCode, localBankTransferAfricaAddress.bankCode); + } + + @Override + public int hashCode() { + return Objects.hash(accountHolder, accountNumber, bankName, bankCode); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class LocalBankTransferAfricaAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" accountNumber: ").append(toIndentedString(accountNumber)).append("\n"); + sb.append(" bankName: ").append(toIndentedString(bankName)).append("\n"); + sb.append(" bankCode: ").append(toIndentedString(bankCode)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `accountNumber` to the URL query string + if (getAccountNumber() != null) { + joiner.add( + String.format( + "%saccountNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAccountNumber())))); + } + + // add `bankName` to the URL query string + if (getBankName() != null) { + joiner.add( + String.format( + "%sbankName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankName())))); + } + + // add `bankCode` to the URL query string + if (getBankCode() != null) { + joiner.add( + String.format( + "%sbankCode%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankCode())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestination.java b/src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestination.java new file mode 100644 index 00000000..1c8d6ae8 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestination.java @@ -0,0 +1,219 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** LocalBankTransferAfricaDestination */ +@JsonPropertyOrder({ + LocalBankTransferAfricaDestination.JSON_PROPERTY_TYPE, + LocalBankTransferAfricaDestination.JSON_PROPERTY_ADDRESS +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class LocalBankTransferAfricaDestination { + /** Gets or Sets type */ + public enum TypeEnum { + LOCAL_BANK_TRANSFER_AFRICA(String.valueOf("LOCAL_BANK_TRANSFER_AFRICA")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private LocalBankTransferAfricaAddress address; + + public LocalBankTransferAfricaDestination() {} + + @JsonCreator + public LocalBankTransferAfricaDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) + LocalBankTransferAfricaAddress address) { + this.type = type; + this.address = address; + } + + public LocalBankTransferAfricaDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public LocalBankTransferAfricaDestination address( + @jakarta.annotation.Nonnull LocalBankTransferAfricaAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public LocalBankTransferAfricaAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull LocalBankTransferAfricaAddress address) { + this.address = address; + } + + /** Return true if this LocalBankTransferAfricaDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + LocalBankTransferAfricaDestination localBankTransferAfricaDestination = + (LocalBankTransferAfricaDestination) o; + return Objects.equals(this.type, localBankTransferAfricaDestination.type) + && Objects.equals(this.address, localBankTransferAfricaDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class LocalBankTransferAfricaDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/MarketExecutionRequestDetails.java b/src/main/java/com/fireblocks/sdk/model/MarketExecutionRequestDetails.java index 1170ec0e..d54b7b0a 100644 --- a/src/main/java/com/fireblocks/sdk/model/MarketExecutionRequestDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/MarketExecutionRequestDetails.java @@ -24,27 +24,25 @@ /** MarketExecutionRequestDetails */ @JsonPropertyOrder({ + MarketExecutionRequestDetails.JSON_PROPERTY_TYPE, MarketExecutionRequestDetails.JSON_PROPERTY_SIDE, MarketExecutionRequestDetails.JSON_PROPERTY_BASE_AMOUNT, MarketExecutionRequestDetails.JSON_PROPERTY_BASE_ASSET_ID, MarketExecutionRequestDetails.JSON_PROPERTY_BASE_ASSET_RAIL, MarketExecutionRequestDetails.JSON_PROPERTY_QUOTE_ASSET_ID, - MarketExecutionRequestDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL, - MarketExecutionRequestDetails.JSON_PROPERTY_TYPE + MarketExecutionRequestDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class MarketExecutionRequestDetails { - /** Side of the order */ - public enum SideEnum { - BUY(String.valueOf("BUY")), - - SELL(String.valueOf("SELL")); + /** Order type for market orders */ + public enum TypeEnum { + MARKET(String.valueOf("MARKET")); private String value; - SideEnum(String value) { + TypeEnum(String value) { this.value = value; } @@ -59,8 +57,8 @@ public String toString() { } @JsonCreator - public static SideEnum fromValue(String value) { - for (SideEnum b : SideEnum.values()) { + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { if (b.value.equals(value)) { return b; } @@ -69,31 +67,18 @@ public static SideEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_SIDE = "side"; - @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - - public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; - @jakarta.annotation.Nonnull private String baseAmount; - - public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; - @jakarta.annotation.Nonnull private String baseAssetId; - - public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; - @jakarta.annotation.Nullable private TransferRail baseAssetRail; - - public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; - @jakarta.annotation.Nonnull private String quoteAssetId; + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; - public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; - @jakarta.annotation.Nullable private TransferRail quoteAssetRail; + /** Side of the order */ + public enum SideEnum { + BUY(String.valueOf("BUY")), - /** Order type for market orders */ - public enum TypeEnum { - MARKET(String.valueOf("MARKET")); + SELL(String.valueOf("SELL")); private String value; - TypeEnum(String value) { + SideEnum(String value) { this.value = value; } @@ -108,8 +93,8 @@ public String toString() { } @JsonCreator - public static TypeEnum fromValue(String value) { - for (TypeEnum b : TypeEnum.values()) { + public static SideEnum fromValue(String value) { + for (SideEnum b : SideEnum.values()) { if (b.value.equals(value)) { return b; } @@ -118,23 +103,61 @@ public static TypeEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_TYPE = "type"; - @jakarta.annotation.Nonnull private TypeEnum type; + public static final String JSON_PROPERTY_SIDE = "side"; + @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; + + public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; + @jakarta.annotation.Nonnull private String baseAmount; + + public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; + @jakarta.annotation.Nonnull private String baseAssetId; + + public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; + @jakarta.annotation.Nullable private TransferRail baseAssetRail; + + public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; + @jakarta.annotation.Nonnull private String quoteAssetId; + + public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; + @jakarta.annotation.Nullable private TransferRail quoteAssetRail; public MarketExecutionRequestDetails() {} @JsonCreator public MarketExecutionRequestDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, @JsonProperty(value = JSON_PROPERTY_SIDE, required = true) SideEnum side, @JsonProperty(value = JSON_PROPERTY_BASE_AMOUNT, required = true) String baseAmount, @JsonProperty(value = JSON_PROPERTY_BASE_ASSET_ID, required = true) String baseAssetId, @JsonProperty(value = JSON_PROPERTY_QUOTE_ASSET_ID, required = true) - String quoteAssetId, - @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type) { + String quoteAssetId) { + this.type = type; this.side = side; this.baseAmount = baseAmount; this.baseAssetId = baseAssetId; this.quoteAssetId = quoteAssetId; + } + + public MarketExecutionRequestDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for market orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { this.type = type; } @@ -280,29 +303,6 @@ public void setQuoteAssetRail(@jakarta.annotation.Nullable TransferRail quoteAss this.quoteAssetRail = quoteAssetRail; } - public MarketExecutionRequestDetails type(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - return this; - } - - /** - * Order type for market orders - * - * @return type - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public TypeEnum getType() { - return type; - } - - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setType(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - } - /** Return true if this MarketExecutionRequestDetails object is equal to o. */ @Override public boolean equals(Object o) { @@ -314,32 +314,33 @@ public boolean equals(Object o) { } MarketExecutionRequestDetails marketExecutionRequestDetails = (MarketExecutionRequestDetails) o; - return Objects.equals(this.side, marketExecutionRequestDetails.side) + return Objects.equals(this.type, marketExecutionRequestDetails.type) + && Objects.equals(this.side, marketExecutionRequestDetails.side) && Objects.equals(this.baseAmount, marketExecutionRequestDetails.baseAmount) && Objects.equals(this.baseAssetId, marketExecutionRequestDetails.baseAssetId) && Objects.equals(this.baseAssetRail, marketExecutionRequestDetails.baseAssetRail) && Objects.equals(this.quoteAssetId, marketExecutionRequestDetails.quoteAssetId) - && Objects.equals(this.quoteAssetRail, marketExecutionRequestDetails.quoteAssetRail) - && Objects.equals(this.type, marketExecutionRequestDetails.type); + && Objects.equals( + this.quoteAssetRail, marketExecutionRequestDetails.quoteAssetRail); } @Override public int hashCode() { return Objects.hash( - side, baseAmount, baseAssetId, baseAssetRail, quoteAssetId, quoteAssetRail, type); + type, side, baseAmount, baseAssetId, baseAssetRail, quoteAssetId, quoteAssetRail); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class MarketExecutionRequestDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append(" side: ").append(toIndentedString(side)).append("\n"); sb.append(" baseAmount: ").append(toIndentedString(baseAmount)).append("\n"); sb.append(" baseAssetId: ").append(toIndentedString(baseAssetId)).append("\n"); sb.append(" baseAssetRail: ").append(toIndentedString(baseAssetRail)).append("\n"); sb.append(" quoteAssetId: ").append(toIndentedString(quoteAssetId)).append("\n"); sb.append(" quoteAssetRail: ").append(toIndentedString(quoteAssetRail)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append("}"); return sb.toString(); } @@ -387,6 +388,16 @@ public String toUrlQueryString(String prefix) { StringJoiner joiner = new StringJoiner("&"); + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + // add `side` to the URL query string if (getSide() != null) { joiner.add( @@ -447,16 +458,6 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getQuoteAssetRail())))); } - // add `type` to the URL query string - if (getType() != null) { - joiner.add( - String.format( - "%stype%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getType())))); - } - return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/MarketExecutionResponseDetails.java b/src/main/java/com/fireblocks/sdk/model/MarketExecutionResponseDetails.java index 74951048..0741164f 100644 --- a/src/main/java/com/fireblocks/sdk/model/MarketExecutionResponseDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/MarketExecutionResponseDetails.java @@ -24,27 +24,25 @@ /** MarketExecutionResponseDetails */ @JsonPropertyOrder({ + MarketExecutionResponseDetails.JSON_PROPERTY_TYPE, MarketExecutionResponseDetails.JSON_PROPERTY_SIDE, MarketExecutionResponseDetails.JSON_PROPERTY_BASE_AMOUNT, MarketExecutionResponseDetails.JSON_PROPERTY_BASE_ASSET_ID, MarketExecutionResponseDetails.JSON_PROPERTY_BASE_ASSET_RAIL, MarketExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_ID, - MarketExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL, - MarketExecutionResponseDetails.JSON_PROPERTY_TYPE + MarketExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class MarketExecutionResponseDetails { - /** Side of the order */ - public enum SideEnum { - BUY(String.valueOf("BUY")), - - SELL(String.valueOf("SELL")); + /** Order type for market orders */ + public enum TypeEnum { + MARKET(String.valueOf("MARKET")); private String value; - SideEnum(String value) { + TypeEnum(String value) { this.value = value; } @@ -59,8 +57,8 @@ public String toString() { } @JsonCreator - public static SideEnum fromValue(String value) { - for (SideEnum b : SideEnum.values()) { + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { if (b.value.equals(value)) { return b; } @@ -69,31 +67,18 @@ public static SideEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_SIDE = "side"; - @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - - public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; - @jakarta.annotation.Nonnull private String baseAmount; - - public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; - @jakarta.annotation.Nonnull private String baseAssetId; - - public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; - @jakarta.annotation.Nullable private TransferRail baseAssetRail; - - public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; - @jakarta.annotation.Nonnull private String quoteAssetId; + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; - public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; - @jakarta.annotation.Nullable private TransferRail quoteAssetRail; + /** Side of the order */ + public enum SideEnum { + BUY(String.valueOf("BUY")), - /** Order type for market orders */ - public enum TypeEnum { - MARKET(String.valueOf("MARKET")); + SELL(String.valueOf("SELL")); private String value; - TypeEnum(String value) { + SideEnum(String value) { this.value = value; } @@ -108,8 +93,8 @@ public String toString() { } @JsonCreator - public static TypeEnum fromValue(String value) { - for (TypeEnum b : TypeEnum.values()) { + public static SideEnum fromValue(String value) { + for (SideEnum b : SideEnum.values()) { if (b.value.equals(value)) { return b; } @@ -118,23 +103,61 @@ public static TypeEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_TYPE = "type"; - @jakarta.annotation.Nonnull private TypeEnum type; + public static final String JSON_PROPERTY_SIDE = "side"; + @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; + + public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; + @jakarta.annotation.Nonnull private String baseAmount; + + public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; + @jakarta.annotation.Nonnull private String baseAssetId; + + public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; + @jakarta.annotation.Nullable private TransferRail baseAssetRail; + + public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; + @jakarta.annotation.Nonnull private String quoteAssetId; + + public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; + @jakarta.annotation.Nullable private TransferRail quoteAssetRail; public MarketExecutionResponseDetails() {} @JsonCreator public MarketExecutionResponseDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, @JsonProperty(value = JSON_PROPERTY_SIDE, required = true) SideEnum side, @JsonProperty(value = JSON_PROPERTY_BASE_AMOUNT, required = true) String baseAmount, @JsonProperty(value = JSON_PROPERTY_BASE_ASSET_ID, required = true) String baseAssetId, @JsonProperty(value = JSON_PROPERTY_QUOTE_ASSET_ID, required = true) - String quoteAssetId, - @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type) { + String quoteAssetId) { + this.type = type; this.side = side; this.baseAmount = baseAmount; this.baseAssetId = baseAssetId; this.quoteAssetId = quoteAssetId; + } + + public MarketExecutionResponseDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for market orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { this.type = type; } @@ -281,29 +304,6 @@ public void setQuoteAssetRail(@jakarta.annotation.Nullable TransferRail quoteAss this.quoteAssetRail = quoteAssetRail; } - public MarketExecutionResponseDetails type(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - return this; - } - - /** - * Order type for market orders - * - * @return type - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public TypeEnum getType() { - return type; - } - - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setType(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - } - /** Return true if this MarketExecutionResponseDetails object is equal to o. */ @Override public boolean equals(Object o) { @@ -315,33 +315,33 @@ public boolean equals(Object o) { } MarketExecutionResponseDetails marketExecutionResponseDetails = (MarketExecutionResponseDetails) o; - return Objects.equals(this.side, marketExecutionResponseDetails.side) + return Objects.equals(this.type, marketExecutionResponseDetails.type) + && Objects.equals(this.side, marketExecutionResponseDetails.side) && Objects.equals(this.baseAmount, marketExecutionResponseDetails.baseAmount) && Objects.equals(this.baseAssetId, marketExecutionResponseDetails.baseAssetId) && Objects.equals(this.baseAssetRail, marketExecutionResponseDetails.baseAssetRail) && Objects.equals(this.quoteAssetId, marketExecutionResponseDetails.quoteAssetId) && Objects.equals( - this.quoteAssetRail, marketExecutionResponseDetails.quoteAssetRail) - && Objects.equals(this.type, marketExecutionResponseDetails.type); + this.quoteAssetRail, marketExecutionResponseDetails.quoteAssetRail); } @Override public int hashCode() { return Objects.hash( - side, baseAmount, baseAssetId, baseAssetRail, quoteAssetId, quoteAssetRail, type); + type, side, baseAmount, baseAssetId, baseAssetRail, quoteAssetId, quoteAssetRail); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class MarketExecutionResponseDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append(" side: ").append(toIndentedString(side)).append("\n"); sb.append(" baseAmount: ").append(toIndentedString(baseAmount)).append("\n"); sb.append(" baseAssetId: ").append(toIndentedString(baseAssetId)).append("\n"); sb.append(" baseAssetRail: ").append(toIndentedString(baseAssetRail)).append("\n"); sb.append(" quoteAssetId: ").append(toIndentedString(quoteAssetId)).append("\n"); sb.append(" quoteAssetRail: ").append(toIndentedString(quoteAssetRail)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); sb.append("}"); return sb.toString(); } @@ -389,6 +389,16 @@ public String toUrlQueryString(String prefix) { StringJoiner joiner = new StringJoiner("&"); + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + // add `side` to the URL query string if (getSide() != null) { joiner.add( @@ -449,16 +459,6 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getQuoteAssetRail())))); } - // add `type` to the URL query string - if (getType() != null) { - joiner.add( - String.format( - "%stype%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getType())))); - } - return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/MarketTypeDetails.java b/src/main/java/com/fireblocks/sdk/model/MarketTypeDetails.java new file mode 100644 index 00000000..8b6e41bd --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/MarketTypeDetails.java @@ -0,0 +1,178 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** MarketTypeDetails */ +@JsonPropertyOrder({MarketTypeDetails.JSON_PROPERTY_TYPE}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class MarketTypeDetails { + /** Order type for market orders */ + public enum TypeEnum { + MARKET(String.valueOf("MARKET")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public MarketTypeDetails() {} + + @JsonCreator + public MarketTypeDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type) { + this.type = type; + } + + public MarketTypeDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for market orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + /** Return true if this MarketTypeDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MarketTypeDetails marketTypeDetails = (MarketTypeDetails) o; + return Objects.equals(this.type, marketTypeDetails.type); + } + + @Override + public int hashCode() { + return Objects.hash(type); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MarketTypeDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/MobileMoneyAddress.java b/src/main/java/com/fireblocks/sdk/model/MobileMoneyAddress.java new file mode 100644 index 00000000..15ce8c2c --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/MobileMoneyAddress.java @@ -0,0 +1,366 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** MobileMoneyAddress */ +@JsonPropertyOrder({ + MobileMoneyAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + MobileMoneyAddress.JSON_PROPERTY_MOBILE_PHONE_NUMBER, + MobileMoneyAddress.JSON_PROPERTY_PROVIDER, + MobileMoneyAddress.JSON_PROPERTY_BENEFICIARY_DOCUMENT_ID, + MobileMoneyAddress.JSON_PROPERTY_BENEFICIARY_RELATIONSHIP +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class MobileMoneyAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_MOBILE_PHONE_NUMBER = "mobilePhoneNumber"; + @jakarta.annotation.Nonnull private String mobilePhoneNumber; + + /** Mobile money provider */ + public enum ProviderEnum { + M_PESA(String.valueOf("m-pesa")), + + AIRTEL(String.valueOf("airtel")), + + MTN(String.valueOf("mtn")), + + TIGO(String.valueOf("tigo")), + + ORANGE(String.valueOf("orange")); + + private String value; + + ProviderEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static ProviderEnum fromValue(String value) { + for (ProviderEnum b : ProviderEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_PROVIDER = "provider"; + @jakarta.annotation.Nonnull private ProviderEnum provider; + + public static final String JSON_PROPERTY_BENEFICIARY_DOCUMENT_ID = "beneficiaryDocumentId"; + @jakarta.annotation.Nullable private String beneficiaryDocumentId; + + public static final String JSON_PROPERTY_BENEFICIARY_RELATIONSHIP = "beneficiaryRelationship"; + @jakarta.annotation.Nullable private String beneficiaryRelationship; + + public MobileMoneyAddress() {} + + @JsonCreator + public MobileMoneyAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_MOBILE_PHONE_NUMBER, required = true) + String mobilePhoneNumber, + @JsonProperty(value = JSON_PROPERTY_PROVIDER, required = true) ProviderEnum provider) { + this.accountHolder = accountHolder; + this.mobilePhoneNumber = mobilePhoneNumber; + this.provider = provider; + } + + public MobileMoneyAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public MobileMoneyAddress mobilePhoneNumber( + @jakarta.annotation.Nonnull String mobilePhoneNumber) { + this.mobilePhoneNumber = mobilePhoneNumber; + return this; + } + + /** + * Mobile phone number in E.164 format + * + * @return mobilePhoneNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_MOBILE_PHONE_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getMobilePhoneNumber() { + return mobilePhoneNumber; + } + + @JsonProperty(JSON_PROPERTY_MOBILE_PHONE_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setMobilePhoneNumber(@jakarta.annotation.Nonnull String mobilePhoneNumber) { + this.mobilePhoneNumber = mobilePhoneNumber; + } + + public MobileMoneyAddress provider(@jakarta.annotation.Nonnull ProviderEnum provider) { + this.provider = provider; + return this; + } + + /** + * Mobile money provider + * + * @return provider + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public ProviderEnum getProvider() { + return provider; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setProvider(@jakarta.annotation.Nonnull ProviderEnum provider) { + this.provider = provider; + } + + public MobileMoneyAddress beneficiaryDocumentId( + @jakarta.annotation.Nullable String beneficiaryDocumentId) { + this.beneficiaryDocumentId = beneficiaryDocumentId; + return this; + } + + /** + * Beneficiary document identification (may be required) + * + * @return beneficiaryDocumentId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BENEFICIARY_DOCUMENT_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBeneficiaryDocumentId() { + return beneficiaryDocumentId; + } + + @JsonProperty(JSON_PROPERTY_BENEFICIARY_DOCUMENT_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBeneficiaryDocumentId( + @jakarta.annotation.Nullable String beneficiaryDocumentId) { + this.beneficiaryDocumentId = beneficiaryDocumentId; + } + + public MobileMoneyAddress beneficiaryRelationship( + @jakarta.annotation.Nullable String beneficiaryRelationship) { + this.beneficiaryRelationship = beneficiaryRelationship; + return this; + } + + /** + * Relationship to beneficiary for AML purposes + * + * @return beneficiaryRelationship + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BENEFICIARY_RELATIONSHIP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBeneficiaryRelationship() { + return beneficiaryRelationship; + } + + @JsonProperty(JSON_PROPERTY_BENEFICIARY_RELATIONSHIP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBeneficiaryRelationship( + @jakarta.annotation.Nullable String beneficiaryRelationship) { + this.beneficiaryRelationship = beneficiaryRelationship; + } + + /** Return true if this MobileMoneyAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MobileMoneyAddress mobileMoneyAddress = (MobileMoneyAddress) o; + return Objects.equals(this.accountHolder, mobileMoneyAddress.accountHolder) + && Objects.equals(this.mobilePhoneNumber, mobileMoneyAddress.mobilePhoneNumber) + && Objects.equals(this.provider, mobileMoneyAddress.provider) + && Objects.equals( + this.beneficiaryDocumentId, mobileMoneyAddress.beneficiaryDocumentId) + && Objects.equals( + this.beneficiaryRelationship, mobileMoneyAddress.beneficiaryRelationship); + } + + @Override + public int hashCode() { + return Objects.hash( + accountHolder, + mobilePhoneNumber, + provider, + beneficiaryDocumentId, + beneficiaryRelationship); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MobileMoneyAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" mobilePhoneNumber: ") + .append(toIndentedString(mobilePhoneNumber)) + .append("\n"); + sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); + sb.append(" beneficiaryDocumentId: ") + .append(toIndentedString(beneficiaryDocumentId)) + .append("\n"); + sb.append(" beneficiaryRelationship: ") + .append(toIndentedString(beneficiaryRelationship)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `mobilePhoneNumber` to the URL query string + if (getMobilePhoneNumber() != null) { + joiner.add( + String.format( + "%smobilePhoneNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMobilePhoneNumber())))); + } + + // add `provider` to the URL query string + if (getProvider() != null) { + joiner.add( + String.format( + "%sprovider%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProvider())))); + } + + // add `beneficiaryDocumentId` to the URL query string + if (getBeneficiaryDocumentId() != null) { + joiner.add( + String.format( + "%sbeneficiaryDocumentId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getBeneficiaryDocumentId())))); + } + + // add `beneficiaryRelationship` to the URL query string + if (getBeneficiaryRelationship() != null) { + joiner.add( + String.format( + "%sbeneficiaryRelationship%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getBeneficiaryRelationship())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/MobileMoneyDestination.java b/src/main/java/com/fireblocks/sdk/model/MobileMoneyDestination.java new file mode 100644 index 00000000..88c2a851 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/MobileMoneyDestination.java @@ -0,0 +1,217 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** MobileMoneyDestination */ +@JsonPropertyOrder({ + MobileMoneyDestination.JSON_PROPERTY_TYPE, + MobileMoneyDestination.JSON_PROPERTY_ADDRESS +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class MobileMoneyDestination { + /** Gets or Sets type */ + public enum TypeEnum { + MOBILE_MONEY(String.valueOf("MOBILE_MONEY")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private MobileMoneyAddress address; + + public MobileMoneyDestination() {} + + @JsonCreator + public MobileMoneyDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) + MobileMoneyAddress address) { + this.type = type; + this.address = address; + } + + public MobileMoneyDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public MobileMoneyDestination address(@jakarta.annotation.Nonnull MobileMoneyAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public MobileMoneyAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull MobileMoneyAddress address) { + this.address = address; + } + + /** Return true if this MobileMoneyDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MobileMoneyDestination mobileMoneyDestination = (MobileMoneyDestination) o; + return Objects.equals(this.type, mobileMoneyDestination.type) + && Objects.equals(this.address, mobileMoneyDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class MobileMoneyDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/OrderSide.java b/src/main/java/com/fireblocks/sdk/model/OrderSide.java new file mode 100644 index 00000000..7441aa5e --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/OrderSide.java @@ -0,0 +1,66 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Order side for trading operations */ +public enum OrderSide { + BUY("BUY"), + + SELL("SELL"), + + ANY("ANY"); + + private String value; + + OrderSide(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static OrderSide fromValue(String value) { + for (OrderSide b : OrderSide.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/OrderStatus.java b/src/main/java/com/fireblocks/sdk/model/OrderStatus.java index 39bb359a..575a98d2 100644 --- a/src/main/java/com/fireblocks/sdk/model/OrderStatus.java +++ b/src/main/java/com/fireblocks/sdk/model/OrderStatus.java @@ -20,6 +20,8 @@ public enum OrderStatus { CREATED("CREATED"), + AWAITING_PAYMENT("AWAITING_PAYMENT"), + PENDING_USER_ACTION("PENDING_USER_ACTION"), PROCESSING("PROCESSING"), diff --git a/src/main/java/com/fireblocks/sdk/model/PaymentInstructions.java b/src/main/java/com/fireblocks/sdk/model/PaymentInstructions.java index bd925050..844c320a 100644 --- a/src/main/java/com/fireblocks/sdk/model/PaymentInstructions.java +++ b/src/main/java/com/fireblocks/sdk/model/PaymentInstructions.java @@ -34,22 +34,6 @@ public class PaymentInstructions { /** Gets or Sets type */ public enum TypeEnum { - IBAN(String.valueOf("IBAN")), - - SWIFT(String.valueOf("SWIFT")), - - ACH(String.valueOf("ACH")), - - US_WIRE(String.valueOf("US_WIRE")), - - SPEI(String.valueOf("SPEI")), - - SEPA(String.valueOf("SEPA")), - - PIX(String.valueOf("PIX")), - - LOCAL_BANK_TRANSFER_AFRICA(String.valueOf("LOCAL_BANK_TRANSFER_AFRICA")), - MOBILE_MONEY(String.valueOf("MOBILE_MONEY")); private String value; @@ -83,10 +67,10 @@ public static TypeEnum fromValue(String value) { @jakarta.annotation.Nonnull private TypeEnum type; public static final String JSON_PROPERTY_ADDRESS = "address"; - @jakarta.annotation.Nonnull private AccountHolderDetails address; + @jakarta.annotation.Nonnull private MobileMoneyAddress address; public static final String JSON_PROPERTY_REFERENCE_ID = "referenceId"; - @jakarta.annotation.Nonnull private String referenceId; + @jakarta.annotation.Nullable private String referenceId; public PaymentInstructions() {} @@ -94,11 +78,9 @@ public PaymentInstructions() {} public PaymentInstructions( @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) - AccountHolderDetails address, - @JsonProperty(value = JSON_PROPERTY_REFERENCE_ID, required = true) String referenceId) { + MobileMoneyAddress address) { this.type = type; this.address = address; - this.referenceId = referenceId; } public PaymentInstructions type(@jakarta.annotation.Nonnull TypeEnum type) { @@ -124,7 +106,7 @@ public void setType(@jakarta.annotation.Nonnull TypeEnum type) { this.type = type; } - public PaymentInstructions address(@jakarta.annotation.Nonnull AccountHolderDetails address) { + public PaymentInstructions address(@jakarta.annotation.Nonnull MobileMoneyAddress address) { this.address = address; return this; } @@ -137,17 +119,17 @@ public PaymentInstructions address(@jakarta.annotation.Nonnull AccountHolderDeta @jakarta.annotation.Nonnull @JsonProperty(JSON_PROPERTY_ADDRESS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public AccountHolderDetails getAddress() { + public MobileMoneyAddress getAddress() { return address; } @JsonProperty(JSON_PROPERTY_ADDRESS) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setAddress(@jakarta.annotation.Nonnull AccountHolderDetails address) { + public void setAddress(@jakarta.annotation.Nonnull MobileMoneyAddress address) { this.address = address; } - public PaymentInstructions referenceId(@jakarta.annotation.Nonnull String referenceId) { + public PaymentInstructions referenceId(@jakarta.annotation.Nullable String referenceId) { this.referenceId = referenceId; return this; } @@ -157,16 +139,16 @@ public PaymentInstructions referenceId(@jakarta.annotation.Nonnull String refere * * @return referenceId */ - @jakarta.annotation.Nonnull + @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_REFERENCE_ID) - @JsonInclude(value = JsonInclude.Include.ALWAYS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) public String getReferenceId() { return referenceId; } @JsonProperty(JSON_PROPERTY_REFERENCE_ID) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setReferenceId(@jakarta.annotation.Nonnull String referenceId) { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setReferenceId(@jakarta.annotation.Nullable String referenceId) { this.referenceId = referenceId; } diff --git a/src/main/java/com/fireblocks/sdk/model/PaymentInstructionsDetails.java b/src/main/java/com/fireblocks/sdk/model/PaymentInstructionsDetails.java new file mode 100644 index 00000000..be1b12f2 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/PaymentInstructionsDetails.java @@ -0,0 +1,139 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** PaymentInstructionsDetails */ +@JsonPropertyOrder({PaymentInstructionsDetails.JSON_PROPERTY_REFERENCE_ID}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class PaymentInstructionsDetails { + public static final String JSON_PROPERTY_REFERENCE_ID = "referenceId"; + @jakarta.annotation.Nullable private String referenceId; + + public PaymentInstructionsDetails() {} + + public PaymentInstructionsDetails referenceId(@jakarta.annotation.Nullable String referenceId) { + this.referenceId = referenceId; + return this; + } + + /** + * Get referenceId + * + * @return referenceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_REFERENCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getReferenceId() { + return referenceId; + } + + @JsonProperty(JSON_PROPERTY_REFERENCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setReferenceId(@jakarta.annotation.Nullable String referenceId) { + this.referenceId = referenceId; + } + + /** Return true if this PaymentInstructionsDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PaymentInstructionsDetails paymentInstructionsDetails = (PaymentInstructionsDetails) o; + return Objects.equals(this.referenceId, paymentInstructionsDetails.referenceId); + } + + @Override + public int hashCode() { + return Objects.hash(referenceId); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PaymentInstructionsDetails {\n"); + sb.append(" referenceId: ").append(toIndentedString(referenceId)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `referenceId` to the URL query string + if (getReferenceId() != null) { + joiner.add( + String.format( + "%sreferenceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getReferenceId())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/PixAddress.java b/src/main/java/com/fireblocks/sdk/model/PixAddress.java new file mode 100644 index 00000000..54a2c3fe --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/PixAddress.java @@ -0,0 +1,345 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** PixAddress */ +@JsonPropertyOrder({ + PixAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + PixAddress.JSON_PROPERTY_PIX_KEY, + PixAddress.JSON_PROPERTY_KEY_TYPE, + PixAddress.JSON_PROPERTY_BANK_NAME, + PixAddress.JSON_PROPERTY_BANK_CODE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class PixAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_PIX_KEY = "pixKey"; + @jakarta.annotation.Nonnull private String pixKey; + + /** Gets or Sets keyType */ + public enum KeyTypeEnum { + CPF(String.valueOf("cpf")), + + CNPJ(String.valueOf("cnpj")), + + EMAIL(String.valueOf("email")), + + PHONE(String.valueOf("phone")), + + RANDOM(String.valueOf("random")); + + private String value; + + KeyTypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static KeyTypeEnum fromValue(String value) { + for (KeyTypeEnum b : KeyTypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_KEY_TYPE = "keyType"; + @jakarta.annotation.Nonnull private KeyTypeEnum keyType; + + public static final String JSON_PROPERTY_BANK_NAME = "bankName"; + @jakarta.annotation.Nullable private String bankName; + + public static final String JSON_PROPERTY_BANK_CODE = "bankCode"; + @jakarta.annotation.Nullable private String bankCode; + + public PixAddress() {} + + @JsonCreator + public PixAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_PIX_KEY, required = true) String pixKey, + @JsonProperty(value = JSON_PROPERTY_KEY_TYPE, required = true) KeyTypeEnum keyType) { + this.accountHolder = accountHolder; + this.pixKey = pixKey; + this.keyType = keyType; + } + + public PixAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public PixAddress pixKey(@jakarta.annotation.Nonnull String pixKey) { + this.pixKey = pixKey; + return this; + } + + /** + * Get pixKey + * + * @return pixKey + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_PIX_KEY) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getPixKey() { + return pixKey; + } + + @JsonProperty(JSON_PROPERTY_PIX_KEY) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setPixKey(@jakarta.annotation.Nonnull String pixKey) { + this.pixKey = pixKey; + } + + public PixAddress keyType(@jakarta.annotation.Nonnull KeyTypeEnum keyType) { + this.keyType = keyType; + return this; + } + + /** + * Get keyType + * + * @return keyType + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_KEY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public KeyTypeEnum getKeyType() { + return keyType; + } + + @JsonProperty(JSON_PROPERTY_KEY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setKeyType(@jakarta.annotation.Nonnull KeyTypeEnum keyType) { + this.keyType = keyType; + } + + public PixAddress bankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + return this; + } + + /** + * Get bankName + * + * @return bankName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankName() { + return bankName; + } + + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + } + + public PixAddress bankCode(@jakarta.annotation.Nullable String bankCode) { + this.bankCode = bankCode; + return this; + } + + /** + * Get bankCode + * + * @return bankCode + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankCode() { + return bankCode; + } + + @JsonProperty(JSON_PROPERTY_BANK_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankCode(@jakarta.annotation.Nullable String bankCode) { + this.bankCode = bankCode; + } + + /** Return true if this PixAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PixAddress pixAddress = (PixAddress) o; + return Objects.equals(this.accountHolder, pixAddress.accountHolder) + && Objects.equals(this.pixKey, pixAddress.pixKey) + && Objects.equals(this.keyType, pixAddress.keyType) + && Objects.equals(this.bankName, pixAddress.bankName) + && Objects.equals(this.bankCode, pixAddress.bankCode); + } + + @Override + public int hashCode() { + return Objects.hash(accountHolder, pixKey, keyType, bankName, bankCode); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PixAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" pixKey: ").append(toIndentedString(pixKey)).append("\n"); + sb.append(" keyType: ").append(toIndentedString(keyType)).append("\n"); + sb.append(" bankName: ").append(toIndentedString(bankName)).append("\n"); + sb.append(" bankCode: ").append(toIndentedString(bankCode)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `pixKey` to the URL query string + if (getPixKey() != null) { + joiner.add( + String.format( + "%spixKey%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPixKey())))); + } + + // add `keyType` to the URL query string + if (getKeyType() != null) { + joiner.add( + String.format( + "%skeyType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getKeyType())))); + } + + // add `bankName` to the URL query string + if (getBankName() != null) { + joiner.add( + String.format( + "%sbankName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankName())))); + } + + // add `bankCode` to the URL query string + if (getBankCode() != null) { + joiner.add( + String.format( + "%sbankCode%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankCode())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/PixDestination.java b/src/main/java/com/fireblocks/sdk/model/PixDestination.java new file mode 100644 index 00000000..0711f4c6 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/PixDestination.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** PixDestination */ +@JsonPropertyOrder({PixDestination.JSON_PROPERTY_TYPE, PixDestination.JSON_PROPERTY_ADDRESS}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class PixDestination { + /** Gets or Sets type */ + public enum TypeEnum { + PIX(String.valueOf("PIX")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private PixAddress address; + + public PixDestination() {} + + @JsonCreator + public PixDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) PixAddress address) { + this.type = type; + this.address = address; + } + + public PixDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public PixDestination address(@jakarta.annotation.Nonnull PixAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public PixAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull PixAddress address) { + this.address = address; + } + + /** Return true if this PixDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PixDestination pixDestination = (PixDestination) o; + return Objects.equals(this.type, pixDestination.type) + && Objects.equals(this.address, pixDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PixDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/PolicyCurrency.java b/src/main/java/com/fireblocks/sdk/model/PolicyCurrency.java new file mode 100644 index 00000000..05aadc02 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/PolicyCurrency.java @@ -0,0 +1,66 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Currency for the amount */ +public enum PolicyCurrency { + NATIVE("NATIVE"), + + USD("USD"), + + EUR("EUR"); + + private String value; + + PolicyCurrency(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static PolicyCurrency fromValue(String value) { + for (PolicyCurrency b : PolicyCurrency.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/PolicyOperator.java b/src/main/java/com/fireblocks/sdk/model/PolicyOperator.java index 82f843b0..4f7dac11 100644 --- a/src/main/java/com/fireblocks/sdk/model/PolicyOperator.java +++ b/src/main/java/com/fireblocks/sdk/model/PolicyOperator.java @@ -18,9 +18,7 @@ /** Operator for selection */ public enum PolicyOperator { - INCLUDES("INCLUDES"), - - EXCLUDES("EXCLUDES"); + INCLUDES("INCLUDES"); private String value; diff --git a/src/main/java/com/fireblocks/sdk/model/PolicyRule.java b/src/main/java/com/fireblocks/sdk/model/PolicyRule.java index eec18ee1..f3f7c8de 100644 --- a/src/main/java/com/fireblocks/sdk/model/PolicyRule.java +++ b/src/main/java/com/fireblocks/sdk/model/PolicyRule.java @@ -35,6 +35,7 @@ PolicyRule.JSON_PROPERTY_SOURCE, PolicyRule.JSON_PROPERTY_DESTINATION, PolicyRule.JSON_PROPERTY_ACCOUNT, + PolicyRule.JSON_PROPERTY_SIDE, PolicyRule.JSON_PROPERTY_VERDICT, PolicyRule.JSON_PROPERTY_AMOUNT_OVER_TIME, PolicyRule.JSON_PROPERTY_AMOUNT, @@ -47,6 +48,7 @@ PolicyRule.JSON_PROPERTY_BASE_ASSET, PolicyRule.JSON_PROPERTY_QUOTE_AMOUNT, PolicyRule.JSON_PROPERTY_BASE_AMOUNT, + PolicyRule.JSON_PROPERTY_D_APP_ADDRESS, PolicyRule.JSON_PROPERTY_DERIVATION_PATH, PolicyRule.JSON_PROPERTY_INDEX }) @@ -104,10 +106,10 @@ public static PolicyEngineVersionEnum fromValue(String value) { @jakarta.annotation.Nonnull private InitiatorConfigPattern initiator; public static final String JSON_PROPERTY_ASSET = "asset"; - @jakarta.annotation.Nonnull private AssetConfig asset; + @jakarta.annotation.Nullable private AssetConfig asset; public static final String JSON_PROPERTY_SOURCE = "source"; - @jakarta.annotation.Nonnull private AccountConfig source; + @jakarta.annotation.Nonnull private SourceConfig source; public static final String JSON_PROPERTY_DESTINATION = "destination"; @jakarta.annotation.Nullable private DestinationConfig destination; @@ -115,6 +117,9 @@ public static PolicyEngineVersionEnum fromValue(String value) { public static final String JSON_PROPERTY_ACCOUNT = "account"; @jakarta.annotation.Nullable private AccountConfig account; + public static final String JSON_PROPERTY_SIDE = "side"; + @jakarta.annotation.Nullable private OrderSide side; + public static final String JSON_PROPERTY_VERDICT = "verdict"; @jakarta.annotation.Nonnull private VerdictConfig verdict; @@ -122,7 +127,7 @@ public static PolicyEngineVersionEnum fromValue(String value) { @jakarta.annotation.Nullable private AmountOverTimeConfig amountOverTime; public static final String JSON_PROPERTY_AMOUNT = "amount"; - @jakarta.annotation.Nullable private AmountRange amount; + @jakarta.annotation.Nullable private AmountConfig amount; public static final String JSON_PROPERTY_EXTERNAL_DESCRIPTOR = "externalDescriptor"; @jakarta.annotation.Nullable private String externalDescriptor; @@ -151,6 +156,9 @@ public static PolicyEngineVersionEnum fromValue(String value) { public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; @jakarta.annotation.Nullable private AmountRange baseAmount; + public static final String JSON_PROPERTY_D_APP_ADDRESS = "dAppAddress"; + @jakarta.annotation.Nullable private DAppAddressConfig dAppAddress; + public static final String JSON_PROPERTY_DERIVATION_PATH = "derivationPath"; @jakarta.annotation.Nullable private DerivationPathConfig derivationPath; @@ -168,15 +176,13 @@ public PolicyRule( @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) PolicyType type, @JsonProperty(value = JSON_PROPERTY_INITIATOR, required = true) InitiatorConfigPattern initiator, - @JsonProperty(value = JSON_PROPERTY_ASSET, required = true) AssetConfig asset, - @JsonProperty(value = JSON_PROPERTY_SOURCE, required = true) AccountConfig source, + @JsonProperty(value = JSON_PROPERTY_SOURCE, required = true) SourceConfig source, @JsonProperty(value = JSON_PROPERTY_VERDICT, required = true) VerdictConfig verdict) { this.name = name; this.id = id; this.policyEngineVersion = policyEngineVersion; this.type = type; this.initiator = initiator; - this.asset = asset; this.source = source; this.verdict = verdict; } @@ -321,7 +327,7 @@ public void setInitiator(@jakarta.annotation.Nonnull InitiatorConfigPattern init this.initiator = initiator; } - public PolicyRule asset(@jakarta.annotation.Nonnull AssetConfig asset) { + public PolicyRule asset(@jakarta.annotation.Nullable AssetConfig asset) { this.asset = asset; return this; } @@ -331,20 +337,20 @@ public PolicyRule asset(@jakarta.annotation.Nonnull AssetConfig asset) { * * @return asset */ - @jakarta.annotation.Nonnull + @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_ASSET) - @JsonInclude(value = JsonInclude.Include.ALWAYS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) public AssetConfig getAsset() { return asset; } @JsonProperty(JSON_PROPERTY_ASSET) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setAsset(@jakarta.annotation.Nonnull AssetConfig asset) { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable AssetConfig asset) { this.asset = asset; } - public PolicyRule source(@jakarta.annotation.Nonnull AccountConfig source) { + public PolicyRule source(@jakarta.annotation.Nonnull SourceConfig source) { this.source = source; return this; } @@ -357,13 +363,13 @@ public PolicyRule source(@jakarta.annotation.Nonnull AccountConfig source) { @jakarta.annotation.Nonnull @JsonProperty(JSON_PROPERTY_SOURCE) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public AccountConfig getSource() { + public SourceConfig getSource() { return source; } @JsonProperty(JSON_PROPERTY_SOURCE) @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setSource(@jakarta.annotation.Nonnull AccountConfig source) { + public void setSource(@jakarta.annotation.Nonnull SourceConfig source) { this.source = source; } @@ -413,6 +419,29 @@ public void setAccount(@jakarta.annotation.Nullable AccountConfig account) { this.account = account; } + public PolicyRule side(@jakarta.annotation.Nullable OrderSide side) { + this.side = side; + return this; + } + + /** + * Get side + * + * @return side + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SIDE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public OrderSide getSide() { + return side; + } + + @JsonProperty(JSON_PROPERTY_SIDE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSide(@jakarta.annotation.Nullable OrderSide side) { + this.side = side; + } + public PolicyRule verdict(@jakarta.annotation.Nonnull VerdictConfig verdict) { this.verdict = verdict; return this; @@ -461,7 +490,7 @@ public void setAmountOverTime( this.amountOverTime = amountOverTime; } - public PolicyRule amount(@jakarta.annotation.Nullable AmountRange amount) { + public PolicyRule amount(@jakarta.annotation.Nullable AmountConfig amount) { this.amount = amount; return this; } @@ -474,13 +503,13 @@ public PolicyRule amount(@jakarta.annotation.Nullable AmountRange amount) { @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_AMOUNT) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public AmountRange getAmount() { + public AmountConfig getAmount() { return amount; } @JsonProperty(JSON_PROPERTY_AMOUNT) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setAmount(@jakarta.annotation.Nullable AmountRange amount) { + public void setAmount(@jakarta.annotation.Nullable AmountConfig amount) { this.amount = amount; } @@ -693,6 +722,29 @@ public void setBaseAmount(@jakarta.annotation.Nullable AmountRange baseAmount) { this.baseAmount = baseAmount; } + public PolicyRule dAppAddress(@jakarta.annotation.Nullable DAppAddressConfig dAppAddress) { + this.dAppAddress = dAppAddress; + return this; + } + + /** + * Get dAppAddress + * + * @return dAppAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_D_APP_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public DAppAddressConfig getdAppAddress() { + return dAppAddress; + } + + @JsonProperty(JSON_PROPERTY_D_APP_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setdAppAddress(@jakarta.annotation.Nullable DAppAddressConfig dAppAddress) { + this.dAppAddress = dAppAddress; + } + public PolicyRule derivationPath( @jakarta.annotation.Nullable DerivationPathConfig derivationPath) { this.derivationPath = derivationPath; @@ -761,6 +813,7 @@ public boolean equals(Object o) { && Objects.equals(this.source, policyRule.source) && Objects.equals(this.destination, policyRule.destination) && Objects.equals(this.account, policyRule.account) + && Objects.equals(this.side, policyRule.side) && Objects.equals(this.verdict, policyRule.verdict) && Objects.equals(this.amountOverTime, policyRule.amountOverTime) && Objects.equals(this.amount, policyRule.amount) @@ -773,6 +826,7 @@ public boolean equals(Object o) { && Objects.equals(this.baseAsset, policyRule.baseAsset) && Objects.equals(this.quoteAmount, policyRule.quoteAmount) && Objects.equals(this.baseAmount, policyRule.baseAmount) + && Objects.equals(this.dAppAddress, policyRule.dAppAddress) && Objects.equals(this.derivationPath, policyRule.derivationPath) && Objects.equals(this.index, policyRule.index); } @@ -790,6 +844,7 @@ public int hashCode() { source, destination, account, + side, verdict, amountOverTime, amount, @@ -802,6 +857,7 @@ public int hashCode() { baseAsset, quoteAmount, baseAmount, + dAppAddress, derivationPath, index); } @@ -822,6 +878,7 @@ public String toString() { sb.append(" source: ").append(toIndentedString(source)).append("\n"); sb.append(" destination: ").append(toIndentedString(destination)).append("\n"); sb.append(" account: ").append(toIndentedString(account)).append("\n"); + sb.append(" side: ").append(toIndentedString(side)).append("\n"); sb.append(" verdict: ").append(toIndentedString(verdict)).append("\n"); sb.append(" amountOverTime: ").append(toIndentedString(amountOverTime)).append("\n"); sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); @@ -838,6 +895,7 @@ public String toString() { sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); sb.append(" quoteAmount: ").append(toIndentedString(quoteAmount)).append("\n"); sb.append(" baseAmount: ").append(toIndentedString(baseAmount)).append("\n"); + sb.append(" dAppAddress: ").append(toIndentedString(dAppAddress)).append("\n"); sb.append(" derivationPath: ").append(toIndentedString(derivationPath)).append("\n"); sb.append(" index: ").append(toIndentedString(index)).append("\n"); sb.append("}"); @@ -961,6 +1019,16 @@ public String toUrlQueryString(String prefix) { joiner.add(getAccount().toUrlQueryString(prefix + "account" + suffix)); } + // add `side` to the URL query string + if (getSide() != null) { + joiner.add( + String.format( + "%sside%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSide())))); + } + // add `verdict` to the URL query string if (getVerdict() != null) { joiner.add(getVerdict().toUrlQueryString(prefix + "verdict" + suffix)); @@ -1032,6 +1100,11 @@ public String toUrlQueryString(String prefix) { joiner.add(getBaseAmount().toUrlQueryString(prefix + "baseAmount" + suffix)); } + // add `dAppAddress` to the URL query string + if (getdAppAddress() != null) { + joiner.add(getdAppAddress().toUrlQueryString(prefix + "dAppAddress" + suffix)); + } + // add `derivationPath` to the URL query string if (getDerivationPath() != null) { joiner.add(getDerivationPath().toUrlQueryString(prefix + "derivationPath" + suffix)); diff --git a/src/main/java/com/fireblocks/sdk/model/PolicyTag.java b/src/main/java/com/fireblocks/sdk/model/PolicyTag.java new file mode 100644 index 00000000..780dca54 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/PolicyTag.java @@ -0,0 +1,143 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Policy tag for matching */ +@JsonPropertyOrder({PolicyTag.JSON_PROPERTY_ID}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class PolicyTag { + public static final String JSON_PROPERTY_ID = "id"; + @jakarta.annotation.Nonnull private String id; + + public PolicyTag() {} + + @JsonCreator + public PolicyTag(@JsonProperty(value = JSON_PROPERTY_ID, required = true) String id) { + this.id = id; + } + + public PolicyTag id(@jakarta.annotation.Nonnull String id) { + this.id = id; + return this; + } + + /** + * Tag identifier + * + * @return id + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getId() { + return id; + } + + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setId(@jakarta.annotation.Nonnull String id) { + this.id = id; + } + + /** Return true if this PolicyTag object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PolicyTag policyTag = (PolicyTag) o; + return Objects.equals(this.id, policyTag.id); + } + + @Override + public int hashCode() { + return Objects.hash(id); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class PolicyTag {\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `id` to the URL query string + if (getId() != null) { + joiner.add( + String.format( + "%sid%s=%s", + prefix, suffix, ApiClient.urlEncode(ApiClient.valueToString(getId())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum.java b/src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum.java new file mode 100644 index 00000000..5e667690 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum.java @@ -0,0 +1,80 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Policy verdict action */ +public enum PolicyVerdictActionEnum { + ALLOW("ALLOW"), + + BLOCK("BLOCK"), + + _2_TIER("2-TIER"), + + SCREEN("SCREEN"), + + ACCEPT("ACCEPT"), + + REJECT("REJECT"), + + ALERT("ALERT"), + + WAIT("WAIT"), + + FREEZE("FREEZE"), + + CANCEL("CANCEL"); + + private String value; + + PolicyVerdictActionEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static PolicyVerdictActionEnum fromValue(String value) { + for (PolicyVerdictActionEnum b : PolicyVerdictActionEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2.java b/src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2.java new file mode 100644 index 00000000..b48c4057 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2.java @@ -0,0 +1,78 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Policy verdict action */ +public enum PolicyVerdictActionEnum2 { + ALLOW("ALLOW"), + + BLOCK("BLOCK"), + + SCREEN("SCREEN"), + + ACCEPT("ACCEPT"), + + REJECT("REJECT"), + + ALERT("ALERT"), + + WAIT("WAIT"), + + FREEZE("FREEZE"), + + CANCEL("CANCEL"); + + private String value; + + PolicyVerdictActionEnum2(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static PolicyVerdictActionEnum2 fromValue(String value) { + for (PolicyVerdictActionEnum2 b : PolicyVerdictActionEnum2.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetails.java b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetails.java index a6b0fc13..7afbd4a1 100644 --- a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetails.java @@ -24,29 +24,27 @@ /** QuoteExecutionResponseDetails */ @JsonPropertyOrder({ + QuoteExecutionResponseDetails.JSON_PROPERTY_TYPE, + QuoteExecutionResponseDetails.JSON_PROPERTY_QUOTE_ID, + QuoteExecutionResponseDetails.JSON_PROPERTY_QUOTE_AMOUNT, QuoteExecutionResponseDetails.JSON_PROPERTY_SIDE, QuoteExecutionResponseDetails.JSON_PROPERTY_BASE_AMOUNT, QuoteExecutionResponseDetails.JSON_PROPERTY_BASE_ASSET_ID, QuoteExecutionResponseDetails.JSON_PROPERTY_BASE_ASSET_RAIL, QuoteExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_ID, - QuoteExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL, - QuoteExecutionResponseDetails.JSON_PROPERTY_TYPE, - QuoteExecutionResponseDetails.JSON_PROPERTY_QUOTE_ID, - QuoteExecutionResponseDetails.JSON_PROPERTY_QUOTE_AMOUNT + QuoteExecutionResponseDetails.JSON_PROPERTY_QUOTE_ASSET_RAIL }) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") public class QuoteExecutionResponseDetails { - /** Side of the order */ - public enum SideEnum { - BUY(String.valueOf("BUY")), - - SELL(String.valueOf("SELL")); + /** Order type for quote orders */ + public enum TypeEnum { + QUOTE(String.valueOf("QUOTE")); private String value; - SideEnum(String value) { + TypeEnum(String value) { this.value = value; } @@ -61,8 +59,8 @@ public String toString() { } @JsonCreator - public static SideEnum fromValue(String value) { - for (SideEnum b : SideEnum.values()) { + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { if (b.value.equals(value)) { return b; } @@ -71,31 +69,24 @@ public static SideEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_SIDE = "side"; - @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - - public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; - @jakarta.annotation.Nonnull private String baseAmount; - - public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; - @jakarta.annotation.Nonnull private String baseAssetId; + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; - public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; - @jakarta.annotation.Nullable private TransferRail baseAssetRail; + public static final String JSON_PROPERTY_QUOTE_ID = "quoteId"; + @jakarta.annotation.Nonnull private String quoteId; - public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; - @jakarta.annotation.Nonnull private String quoteAssetId; + public static final String JSON_PROPERTY_QUOTE_AMOUNT = "quoteAmount"; + @jakarta.annotation.Nonnull private String quoteAmount; - public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; - @jakarta.annotation.Nullable private TransferRail quoteAssetRail; + /** Side of the order */ + public enum SideEnum { + BUY(String.valueOf("BUY")), - /** Order type for quote orders */ - public enum TypeEnum { - QUOTE(String.valueOf("QUOTE")); + SELL(String.valueOf("SELL")); private String value; - TypeEnum(String value) { + SideEnum(String value) { this.value = value; } @@ -110,8 +101,8 @@ public String toString() { } @JsonCreator - public static TypeEnum fromValue(String value) { - for (TypeEnum b : TypeEnum.values()) { + public static SideEnum fromValue(String value) { + for (SideEnum b : SideEnum.values()) { if (b.value.equals(value)) { return b; } @@ -120,33 +111,112 @@ public static TypeEnum fromValue(String value) { } } - public static final String JSON_PROPERTY_TYPE = "type"; - @jakarta.annotation.Nonnull private TypeEnum type; + public static final String JSON_PROPERTY_SIDE = "side"; + @jakarta.annotation.Nonnull private SideEnum side = SideEnum.BUY; - public static final String JSON_PROPERTY_QUOTE_ID = "quoteId"; - @jakarta.annotation.Nonnull private String quoteId; + public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; + @jakarta.annotation.Nonnull private String baseAmount; - public static final String JSON_PROPERTY_QUOTE_AMOUNT = "quoteAmount"; - @jakarta.annotation.Nonnull private String quoteAmount; + public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; + @jakarta.annotation.Nonnull private String baseAssetId; + + public static final String JSON_PROPERTY_BASE_ASSET_RAIL = "baseAssetRail"; + @jakarta.annotation.Nullable private TransferRail baseAssetRail; + + public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; + @jakarta.annotation.Nonnull private String quoteAssetId; + + public static final String JSON_PROPERTY_QUOTE_ASSET_RAIL = "quoteAssetRail"; + @jakarta.annotation.Nullable private TransferRail quoteAssetRail; public QuoteExecutionResponseDetails() {} @JsonCreator public QuoteExecutionResponseDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_QUOTE_ID, required = true) String quoteId, + @JsonProperty(value = JSON_PROPERTY_QUOTE_AMOUNT, required = true) String quoteAmount, @JsonProperty(value = JSON_PROPERTY_SIDE, required = true) SideEnum side, @JsonProperty(value = JSON_PROPERTY_BASE_AMOUNT, required = true) String baseAmount, @JsonProperty(value = JSON_PROPERTY_BASE_ASSET_ID, required = true) String baseAssetId, @JsonProperty(value = JSON_PROPERTY_QUOTE_ASSET_ID, required = true) - String quoteAssetId, - @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, - @JsonProperty(value = JSON_PROPERTY_QUOTE_ID, required = true) String quoteId, - @JsonProperty(value = JSON_PROPERTY_QUOTE_AMOUNT, required = true) String quoteAmount) { + String quoteAssetId) { + this.type = type; + this.quoteId = quoteId; + this.quoteAmount = quoteAmount; this.side = side; this.baseAmount = baseAmount; this.baseAssetId = baseAssetId; this.quoteAssetId = quoteAssetId; + } + + public QuoteExecutionResponseDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for quote orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { this.type = type; + } + + public QuoteExecutionResponseDetails quoteId(@jakarta.annotation.Nonnull String quoteId) { + this.quoteId = quoteId; + return this; + } + + /** + * Quote ID for quote orders + * + * @return quoteId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_QUOTE_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getQuoteId() { + return quoteId; + } + + @JsonProperty(JSON_PROPERTY_QUOTE_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setQuoteId(@jakarta.annotation.Nonnull String quoteId) { this.quoteId = quoteId; + } + + public QuoteExecutionResponseDetails quoteAmount( + @jakarta.annotation.Nonnull String quoteAmount) { + this.quoteAmount = quoteAmount; + return this; + } + + /** + * Quote amount for quote orders + * + * @return quoteAmount + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getQuoteAmount() { + return quoteAmount; + } + + @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setQuoteAmount(@jakarta.annotation.Nonnull String quoteAmount) { this.quoteAmount = quoteAmount; } @@ -292,76 +362,6 @@ public void setQuoteAssetRail(@jakarta.annotation.Nullable TransferRail quoteAss this.quoteAssetRail = quoteAssetRail; } - public QuoteExecutionResponseDetails type(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - return this; - } - - /** - * Order type for quote orders - * - * @return type - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public TypeEnum getType() { - return type; - } - - @JsonProperty(JSON_PROPERTY_TYPE) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setType(@jakarta.annotation.Nonnull TypeEnum type) { - this.type = type; - } - - public QuoteExecutionResponseDetails quoteId(@jakarta.annotation.Nonnull String quoteId) { - this.quoteId = quoteId; - return this; - } - - /** - * Quote ID for quote orders - * - * @return quoteId - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_QUOTE_ID) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public String getQuoteId() { - return quoteId; - } - - @JsonProperty(JSON_PROPERTY_QUOTE_ID) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setQuoteId(@jakarta.annotation.Nonnull String quoteId) { - this.quoteId = quoteId; - } - - public QuoteExecutionResponseDetails quoteAmount( - @jakarta.annotation.Nonnull String quoteAmount) { - this.quoteAmount = quoteAmount; - return this; - } - - /** - * Quote amount for quote orders - * - * @return quoteAmount - */ - @jakarta.annotation.Nonnull - @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public String getQuoteAmount() { - return quoteAmount; - } - - @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setQuoteAmount(@jakarta.annotation.Nonnull String quoteAmount) { - this.quoteAmount = quoteAmount; - } - /** Return true if this QuoteExecutionResponseDetails object is equal to o. */ @Override public boolean equals(Object o) { @@ -373,44 +373,45 @@ public boolean equals(Object o) { } QuoteExecutionResponseDetails quoteExecutionResponseDetails = (QuoteExecutionResponseDetails) o; - return Objects.equals(this.side, quoteExecutionResponseDetails.side) + return Objects.equals(this.type, quoteExecutionResponseDetails.type) + && Objects.equals(this.quoteId, quoteExecutionResponseDetails.quoteId) + && Objects.equals(this.quoteAmount, quoteExecutionResponseDetails.quoteAmount) + && Objects.equals(this.side, quoteExecutionResponseDetails.side) && Objects.equals(this.baseAmount, quoteExecutionResponseDetails.baseAmount) && Objects.equals(this.baseAssetId, quoteExecutionResponseDetails.baseAssetId) && Objects.equals(this.baseAssetRail, quoteExecutionResponseDetails.baseAssetRail) && Objects.equals(this.quoteAssetId, quoteExecutionResponseDetails.quoteAssetId) - && Objects.equals(this.quoteAssetRail, quoteExecutionResponseDetails.quoteAssetRail) - && Objects.equals(this.type, quoteExecutionResponseDetails.type) - && Objects.equals(this.quoteId, quoteExecutionResponseDetails.quoteId) - && Objects.equals(this.quoteAmount, quoteExecutionResponseDetails.quoteAmount); + && Objects.equals( + this.quoteAssetRail, quoteExecutionResponseDetails.quoteAssetRail); } @Override public int hashCode() { return Objects.hash( + type, + quoteId, + quoteAmount, side, baseAmount, baseAssetId, baseAssetRail, quoteAssetId, - quoteAssetRail, - type, - quoteId, - quoteAmount); + quoteAssetRail); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("class QuoteExecutionResponseDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" quoteId: ").append(toIndentedString(quoteId)).append("\n"); + sb.append(" quoteAmount: ").append(toIndentedString(quoteAmount)).append("\n"); sb.append(" side: ").append(toIndentedString(side)).append("\n"); sb.append(" baseAmount: ").append(toIndentedString(baseAmount)).append("\n"); sb.append(" baseAssetId: ").append(toIndentedString(baseAssetId)).append("\n"); sb.append(" baseAssetRail: ").append(toIndentedString(baseAssetRail)).append("\n"); sb.append(" quoteAssetId: ").append(toIndentedString(quoteAssetId)).append("\n"); sb.append(" quoteAssetRail: ").append(toIndentedString(quoteAssetRail)).append("\n"); - sb.append(" type: ").append(toIndentedString(type)).append("\n"); - sb.append(" quoteId: ").append(toIndentedString(quoteId)).append("\n"); - sb.append(" quoteAmount: ").append(toIndentedString(quoteAmount)).append("\n"); sb.append("}"); return sb.toString(); } @@ -458,6 +459,36 @@ public String toUrlQueryString(String prefix) { StringJoiner joiner = new StringJoiner("&"); + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `quoteId` to the URL query string + if (getQuoteId() != null) { + joiner.add( + String.format( + "%squoteId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getQuoteId())))); + } + + // add `quoteAmount` to the URL query string + if (getQuoteAmount() != null) { + joiner.add( + String.format( + "%squoteAmount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getQuoteAmount())))); + } + // add `side` to the URL query string if (getSide() != null) { joiner.add( @@ -518,36 +549,6 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getQuoteAssetRail())))); } - // add `type` to the URL query string - if (getType() != null) { - joiner.add( - String.format( - "%stype%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getType())))); - } - - // add `quoteId` to the URL query string - if (getQuoteId() != null) { - joiner.add( - String.format( - "%squoteId%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getQuoteId())))); - } - - // add `quoteAmount` to the URL query string - if (getQuoteAmount() != null) { - joiner.add( - String.format( - "%squoteAmount%s=%s", - prefix, - suffix, - ApiClient.urlEncode(ApiClient.valueToString(getQuoteAmount())))); - } - return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetails.java b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetails.java new file mode 100644 index 00000000..39271f16 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetails.java @@ -0,0 +1,262 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** QuoteExecutionTypeDetails */ +@JsonPropertyOrder({ + QuoteExecutionTypeDetails.JSON_PROPERTY_TYPE, + QuoteExecutionTypeDetails.JSON_PROPERTY_QUOTE_ID, + QuoteExecutionTypeDetails.JSON_PROPERTY_QUOTE_AMOUNT +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class QuoteExecutionTypeDetails { + /** Order type for quote orders */ + public enum TypeEnum { + QUOTE(String.valueOf("QUOTE")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_QUOTE_ID = "quoteId"; + @jakarta.annotation.Nonnull private String quoteId; + + public static final String JSON_PROPERTY_QUOTE_AMOUNT = "quoteAmount"; + @jakarta.annotation.Nonnull private String quoteAmount; + + public QuoteExecutionTypeDetails() {} + + @JsonCreator + public QuoteExecutionTypeDetails( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_QUOTE_ID, required = true) String quoteId, + @JsonProperty(value = JSON_PROPERTY_QUOTE_AMOUNT, required = true) String quoteAmount) { + this.type = type; + this.quoteId = quoteId; + this.quoteAmount = quoteAmount; + } + + public QuoteExecutionTypeDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Order type for quote orders + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public QuoteExecutionTypeDetails quoteId(@jakarta.annotation.Nonnull String quoteId) { + this.quoteId = quoteId; + return this; + } + + /** + * Quote ID for quote orders + * + * @return quoteId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_QUOTE_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getQuoteId() { + return quoteId; + } + + @JsonProperty(JSON_PROPERTY_QUOTE_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setQuoteId(@jakarta.annotation.Nonnull String quoteId) { + this.quoteId = quoteId; + } + + public QuoteExecutionTypeDetails quoteAmount(@jakarta.annotation.Nonnull String quoteAmount) { + this.quoteAmount = quoteAmount; + return this; + } + + /** + * Quote amount for quote orders + * + * @return quoteAmount + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getQuoteAmount() { + return quoteAmount; + } + + @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setQuoteAmount(@jakarta.annotation.Nonnull String quoteAmount) { + this.quoteAmount = quoteAmount; + } + + /** Return true if this QuoteExecutionTypeDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + QuoteExecutionTypeDetails quoteExecutionTypeDetails = (QuoteExecutionTypeDetails) o; + return Objects.equals(this.type, quoteExecutionTypeDetails.type) + && Objects.equals(this.quoteId, quoteExecutionTypeDetails.quoteId) + && Objects.equals(this.quoteAmount, quoteExecutionTypeDetails.quoteAmount); + } + + @Override + public int hashCode() { + return Objects.hash(type, quoteId, quoteAmount); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class QuoteExecutionTypeDetails {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" quoteId: ").append(toIndentedString(quoteId)).append("\n"); + sb.append(" quoteAmount: ").append(toIndentedString(quoteAmount)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `quoteId` to the URL query string + if (getQuoteId() != null) { + joiner.add( + String.format( + "%squoteId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getQuoteId())))); + } + + // add `quoteAmount` to the URL query string + if (getQuoteAmount() != null) { + joiner.add( + String.format( + "%squoteAmount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getQuoteAmount())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetails.java b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetails.java index 17377f6e..b20761b0 100644 --- a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetails.java @@ -70,9 +70,7 @@ public static TypeEnum fromValue(String value) { @jakarta.annotation.Nonnull private String quoteId; public static final String JSON_PROPERTY_RE_QUOTE = "reQuote"; - - @jakarta.annotation.Nullable - private QuoteExecutionWithRequoteRequestDetailsAllOfReQuote reQuote; + @jakarta.annotation.Nullable private ReQuoteDetailsReQuote reQuote; public QuoteExecutionWithRequoteRequestDetails() {} @@ -132,8 +130,7 @@ public void setQuoteId(@jakarta.annotation.Nonnull String quoteId) { } public QuoteExecutionWithRequoteRequestDetails reQuote( - @jakarta.annotation.Nullable - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote reQuote) { + @jakarta.annotation.Nullable ReQuoteDetailsReQuote reQuote) { this.reQuote = reQuote; return this; } @@ -146,15 +143,13 @@ public QuoteExecutionWithRequoteRequestDetails reQuote( @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_RE_QUOTE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote getReQuote() { + public ReQuoteDetailsReQuote getReQuote() { return reQuote; } @JsonProperty(JSON_PROPERTY_RE_QUOTE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setReQuote( - @jakarta.annotation.Nullable - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote reQuote) { + public void setReQuote(@jakarta.annotation.Nullable ReQuoteDetailsReQuote reQuote) { this.reQuote = reQuote; } diff --git a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetails.java b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetails.java index b2482751..ee6e08f6 100644 --- a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetails.java @@ -131,9 +131,7 @@ public static SideEnum fromValue(String value) { @jakarta.annotation.Nullable private TransferRail quoteAssetRail; public static final String JSON_PROPERTY_RE_QUOTE = "reQuote"; - - @jakarta.annotation.Nullable - private QuoteExecutionWithRequoteResponseDetailsAllOfReQuote reQuote; + @jakarta.annotation.Nullable private ReQuoteDetailsReQuote reQuote; public QuoteExecutionWithRequoteResponseDetails() {} @@ -373,8 +371,7 @@ public void setQuoteAssetRail(@jakarta.annotation.Nullable TransferRail quoteAss } public QuoteExecutionWithRequoteResponseDetails reQuote( - @jakarta.annotation.Nullable - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote reQuote) { + @jakarta.annotation.Nullable ReQuoteDetailsReQuote reQuote) { this.reQuote = reQuote; return this; } @@ -387,15 +384,13 @@ public QuoteExecutionWithRequoteResponseDetails reQuote( @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_RE_QUOTE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuote getReQuote() { + public ReQuoteDetailsReQuote getReQuote() { return reQuote; } @JsonProperty(JSON_PROPERTY_RE_QUOTE) @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) - public void setReQuote( - @jakarta.annotation.Nullable - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote reQuote) { + public void setReQuote(@jakarta.annotation.Nullable ReQuoteDetailsReQuote reQuote) { this.reQuote = reQuote; } diff --git a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.java b/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.java deleted file mode 100644 index 6119aa6e..00000000 --- a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.java +++ /dev/null @@ -1,366 +0,0 @@ -/* - * Fireblocks API - * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - * - * The version of the OpenAPI document: 1.6.2 - * Contact: support@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. - */ - -package com.fireblocks.sdk.model; - - -import com.fasterxml.jackson.core.JsonGenerator; -import com.fasterxml.jackson.core.JsonParser; -import com.fasterxml.jackson.core.JsonProcessingException; -import com.fasterxml.jackson.core.JsonToken; -import com.fasterxml.jackson.databind.DeserializationContext; -import com.fasterxml.jackson.databind.JsonMappingException; -import com.fasterxml.jackson.databind.JsonNode; -import com.fasterxml.jackson.databind.MapperFeature; -import com.fasterxml.jackson.databind.SerializerProvider; -import com.fasterxml.jackson.databind.annotation.JsonDeserialize; -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.deser.std.StdDeserializer; -import com.fasterxml.jackson.databind.ser.std.StdSerializer; -import com.fireblocks.sdk.JSON; -import java.io.IOException; -import java.util.Collections; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Map; -import java.util.StringJoiner; -import java.util.logging.Level; -import java.util.logging.Logger; - -@jakarta.annotation.Generated( - value = "org.openapitools.codegen.languages.JavaClientCodegen", - comments = "Generator version: 7.14.0") -@JsonDeserialize( - using = - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote - .QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteDeserializer.class) -@JsonSerialize( - using = - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote - .QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteSerializer.class) -public class QuoteExecutionWithRequoteResponseDetailsAllOfReQuote extends AbstractOpenApiSchema { - private static final Logger log = - Logger.getLogger(QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.class.getName()); - - public static class QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteSerializer - extends StdSerializer { - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteSerializer( - Class t) { - super(t); - } - - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteSerializer() { - this(null); - } - - @Override - public void serialize( - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote value, - JsonGenerator jgen, - SerializerProvider provider) - throws IOException, JsonProcessingException { - jgen.writeObject(value.getActualInstance()); - } - } - - public static class QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteDeserializer - extends StdDeserializer { - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteDeserializer() { - this(QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.class); - } - - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteDeserializer(Class vc) { - super(vc); - } - - @Override - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuote deserialize( - JsonParser jp, DeserializationContext ctxt) - throws IOException, JsonProcessingException { - JsonNode tree = jp.readValueAsTree(); - Object deserialized = null; - boolean typeCoercion = ctxt.isEnabled(MapperFeature.ALLOW_COERCION_OF_SCALARS); - int match = 0; - JsonToken token = tree.traverse(jp.getCodec()).nextToken(); - // deserialize MarketRequoteRequestDetails - try { - boolean attemptParsing = true; - // ensure that we respect type coercion as set on the client ObjectMapper - if (MarketRequoteRequestDetails.class.equals(Integer.class) - || MarketRequoteRequestDetails.class.equals(Long.class) - || MarketRequoteRequestDetails.class.equals(Float.class) - || MarketRequoteRequestDetails.class.equals(Double.class) - || MarketRequoteRequestDetails.class.equals(Boolean.class) - || MarketRequoteRequestDetails.class.equals(String.class)) { - attemptParsing = typeCoercion; - if (!attemptParsing) { - attemptParsing |= - ((MarketRequoteRequestDetails.class.equals(Integer.class) - || MarketRequoteRequestDetails.class.equals( - Long.class)) - && token == JsonToken.VALUE_NUMBER_INT); - attemptParsing |= - ((MarketRequoteRequestDetails.class.equals(Float.class) - || MarketRequoteRequestDetails.class.equals( - Double.class)) - && token == JsonToken.VALUE_NUMBER_FLOAT); - attemptParsing |= - (MarketRequoteRequestDetails.class.equals(Boolean.class) - && (token == JsonToken.VALUE_FALSE - || token == JsonToken.VALUE_TRUE)); - attemptParsing |= - (MarketRequoteRequestDetails.class.equals(String.class) - && token == JsonToken.VALUE_STRING); - } - } - if (attemptParsing) { - deserialized = - tree.traverse(jp.getCodec()) - .readValueAs(MarketRequoteRequestDetails.class); - // TODO: there is no validation against JSON schema constraints - // (min, max, enum, pattern...), this does not perform a strict JSON - // validation, which means the 'match' count may be higher than it should be. - match++; - log.log(Level.FINER, "Input data matches schema 'MarketRequoteRequestDetails'"); - } - } catch (Exception e) { - // deserialization failed, continue - log.log( - Level.FINER, - "Input data does not match schema 'MarketRequoteRequestDetails'", - e); - } - - // deserialize RetryRequoteRequestDetails - try { - boolean attemptParsing = true; - // ensure that we respect type coercion as set on the client ObjectMapper - if (RetryRequoteRequestDetails.class.equals(Integer.class) - || RetryRequoteRequestDetails.class.equals(Long.class) - || RetryRequoteRequestDetails.class.equals(Float.class) - || RetryRequoteRequestDetails.class.equals(Double.class) - || RetryRequoteRequestDetails.class.equals(Boolean.class) - || RetryRequoteRequestDetails.class.equals(String.class)) { - attemptParsing = typeCoercion; - if (!attemptParsing) { - attemptParsing |= - ((RetryRequoteRequestDetails.class.equals(Integer.class) - || RetryRequoteRequestDetails.class.equals( - Long.class)) - && token == JsonToken.VALUE_NUMBER_INT); - attemptParsing |= - ((RetryRequoteRequestDetails.class.equals(Float.class) - || RetryRequoteRequestDetails.class.equals( - Double.class)) - && token == JsonToken.VALUE_NUMBER_FLOAT); - attemptParsing |= - (RetryRequoteRequestDetails.class.equals(Boolean.class) - && (token == JsonToken.VALUE_FALSE - || token == JsonToken.VALUE_TRUE)); - attemptParsing |= - (RetryRequoteRequestDetails.class.equals(String.class) - && token == JsonToken.VALUE_STRING); - } - } - if (attemptParsing) { - deserialized = - tree.traverse(jp.getCodec()) - .readValueAs(RetryRequoteRequestDetails.class); - // TODO: there is no validation against JSON schema constraints - // (min, max, enum, pattern...), this does not perform a strict JSON - // validation, which means the 'match' count may be higher than it should be. - match++; - log.log(Level.FINER, "Input data matches schema 'RetryRequoteRequestDetails'"); - } - } catch (Exception e) { - // deserialization failed, continue - log.log( - Level.FINER, - "Input data does not match schema 'RetryRequoteRequestDetails'", - e); - } - - if (match == 1) { - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote ret = - new QuoteExecutionWithRequoteResponseDetailsAllOfReQuote(); - ret.setActualInstance(deserialized); - return ret; - } - throw new IOException( - String.format( - "Failed deserialization for" - + " QuoteExecutionWithRequoteResponseDetailsAllOfReQuote: %d" - + " classes match result, expected 1", - match)); - } - - /** Handle deserialization of the 'null' value. */ - @Override - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuote getNullValue( - DeserializationContext ctxt) throws JsonMappingException { - throw new JsonMappingException( - ctxt.getParser(), - "QuoteExecutionWithRequoteResponseDetailsAllOfReQuote cannot be null"); - } - } - - // store a list of schema names defined in oneOf - public static final Map> schemas = new HashMap<>(); - - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuote() { - super("oneOf", Boolean.FALSE); - } - - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuote(MarketRequoteRequestDetails o) { - super("oneOf", Boolean.FALSE); - setActualInstance(o); - } - - public QuoteExecutionWithRequoteResponseDetailsAllOfReQuote(RetryRequoteRequestDetails o) { - super("oneOf", Boolean.FALSE); - setActualInstance(o); - } - - static { - schemas.put("MarketRequoteRequestDetails", MarketRequoteRequestDetails.class); - schemas.put("RetryRequoteRequestDetails", RetryRequoteRequestDetails.class); - JSON.registerDescendants( - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.class, - Collections.unmodifiableMap(schemas)); - // Initialize and register the discriminator mappings. - Map> mappings = new HashMap>(); - mappings.put("MARKET", MarketRequoteRequestDetails.class); - mappings.put("RETRY", RetryRequoteRequestDetails.class); - mappings.put("MarketRequoteRequestDetails", MarketRequoteRequestDetails.class); - mappings.put("RetryRequoteRequestDetails", RetryRequoteRequestDetails.class); - mappings.put( - "QuoteExecutionWithRequoteResponseDetails_allOf_reQuote", - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.class); - JSON.registerDiscriminator( - QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.class, "type", mappings); - } - - @Override - public Map> getSchemas() { - return QuoteExecutionWithRequoteResponseDetailsAllOfReQuote.schemas; - } - - /** - * Set the instance that matches the oneOf child schema, check the instance parameter is valid - * against the oneOf child schemas: MarketRequoteRequestDetails, RetryRequoteRequestDetails - * - *

It could be an instance of the 'oneOf' schemas. The oneOf child schemas may themselves be - * a composed schema (allOf, anyOf, oneOf). - */ - @Override - public void setActualInstance(Object instance) { - if (JSON.isInstanceOf( - MarketRequoteRequestDetails.class, instance, new HashSet>())) { - super.setActualInstance(instance); - return; - } - - if (JSON.isInstanceOf( - RetryRequoteRequestDetails.class, instance, new HashSet>())) { - super.setActualInstance(instance); - return; - } - - throw new RuntimeException( - "Invalid instance type. Must be MarketRequoteRequestDetails," - + " RetryRequoteRequestDetails"); - } - - /** - * Get the actual instance, which can be the following: MarketRequoteRequestDetails, - * RetryRequoteRequestDetails - * - * @return The actual instance (MarketRequoteRequestDetails, RetryRequoteRequestDetails) - */ - @Override - public Object getActualInstance() { - return super.getActualInstance(); - } - - /** - * Get the actual instance of `MarketRequoteRequestDetails`. If the actual instance is not - * `MarketRequoteRequestDetails`, the ClassCastException will be thrown. - * - * @return The actual instance of `MarketRequoteRequestDetails` - * @throws ClassCastException if the instance is not `MarketRequoteRequestDetails` - */ - public MarketRequoteRequestDetails getMarketRequoteRequestDetails() throws ClassCastException { - return (MarketRequoteRequestDetails) super.getActualInstance(); - } - - /** - * Get the actual instance of `RetryRequoteRequestDetails`. If the actual instance is not - * `RetryRequoteRequestDetails`, the ClassCastException will be thrown. - * - * @return The actual instance of `RetryRequoteRequestDetails` - * @throws ClassCastException if the instance is not `RetryRequoteRequestDetails` - */ - public RetryRequoteRequestDetails getRetryRequoteRequestDetails() throws ClassCastException { - return (RetryRequoteRequestDetails) super.getActualInstance(); - } - - /** - * Convert the instance into URL query string. - * - * @return URL query string - */ - public String toUrlQueryString() { - return toUrlQueryString(null); - } - - /** - * Convert the instance into URL query string. - * - * @param prefix prefix of the query string - * @return URL query string - */ - public String toUrlQueryString(String prefix) { - String suffix = ""; - String containerSuffix = ""; - String containerPrefix = ""; - if (prefix == null) { - // style=form, explode=true, e.g. /pet?name=cat&type=manx - prefix = ""; - } else { - // deepObject style e.g. /pet?id[name]=cat&id[type]=manx - prefix = prefix + "["; - suffix = "]"; - containerSuffix = "]"; - containerPrefix = "["; - } - - StringJoiner joiner = new StringJoiner("&"); - - if (getActualInstance() instanceof MarketRequoteRequestDetails) { - if (getActualInstance() != null) { - joiner.add( - ((MarketRequoteRequestDetails) getActualInstance()) - .toUrlQueryString(prefix + "one_of_0" + suffix)); - } - return joiner.toString(); - } - if (getActualInstance() instanceof RetryRequoteRequestDetails) { - if (getActualInstance() != null) { - joiner.add( - ((RetryRequoteRequestDetails) getActualInstance()) - .toUrlQueryString(prefix + "one_of_1" + suffix)); - } - return joiner.toString(); - } - return null; - } -} diff --git a/src/main/java/com/fireblocks/sdk/model/QuotePropertiesDetails.java b/src/main/java/com/fireblocks/sdk/model/QuotePropertiesDetails.java new file mode 100644 index 00000000..299e309c --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/QuotePropertiesDetails.java @@ -0,0 +1,712 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.StringJoiner; + +/** QuotePropertiesDetails */ +@JsonPropertyOrder({ + QuotePropertiesDetails.JSON_PROPERTY_VIA, + QuotePropertiesDetails.JSON_PROPERTY_ID, + QuotePropertiesDetails.JSON_PROPERTY_TYPE, + QuotePropertiesDetails.JSON_PROPERTY_QUOTE_ASSET_ID, + QuotePropertiesDetails.JSON_PROPERTY_BASE_ASSET_ID, + QuotePropertiesDetails.JSON_PROPERTY_BASE_AMOUNT, + QuotePropertiesDetails.JSON_PROPERTY_QUOTE_AMOUNT, + QuotePropertiesDetails.JSON_PROPERTY_PRICE_IMPACT, + QuotePropertiesDetails.JSON_PROPERTY_QUOTE_MIN_AMOUNT, + QuotePropertiesDetails.JSON_PROPERTY_EXECUTION_STEPS, + QuotePropertiesDetails.JSON_PROPERTY_GENERAL_FEES, + QuotePropertiesDetails.JSON_PROPERTY_SIDE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class QuotePropertiesDetails { + public static final String JSON_PROPERTY_VIA = "via"; + @jakarta.annotation.Nonnull private AccessType via; + + public static final String JSON_PROPERTY_ID = "id"; + @jakarta.annotation.Nonnull private String id; + + /** Gets or Sets type */ + public enum TypeEnum { + COMMITTED(String.valueOf("COMMITTED")), + + INDICATIVE(String.valueOf("INDICATIVE")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_QUOTE_ASSET_ID = "quoteAssetId"; + @jakarta.annotation.Nonnull private String quoteAssetId; + + public static final String JSON_PROPERTY_BASE_ASSET_ID = "baseAssetId"; + @jakarta.annotation.Nonnull private String baseAssetId; + + public static final String JSON_PROPERTY_BASE_AMOUNT = "baseAmount"; + @jakarta.annotation.Nonnull private String baseAmount; + + public static final String JSON_PROPERTY_QUOTE_AMOUNT = "quoteAmount"; + @jakarta.annotation.Nonnull private String quoteAmount; + + public static final String JSON_PROPERTY_PRICE_IMPACT = "priceImpact"; + @jakarta.annotation.Nullable private BigDecimal priceImpact; + + public static final String JSON_PROPERTY_QUOTE_MIN_AMOUNT = "quoteMinAmount"; + @jakarta.annotation.Nullable private String quoteMinAmount; + + public static final String JSON_PROPERTY_EXECUTION_STEPS = "executionSteps"; + @jakarta.annotation.Nullable private List executionSteps; + + public static final String JSON_PROPERTY_GENERAL_FEES = "generalFees"; + @jakarta.annotation.Nullable private List generalFees; + + /** Side of the order */ + public enum SideEnum { + BUY(String.valueOf("BUY")), + + SELL(String.valueOf("SELL")); + + private String value; + + SideEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static SideEnum fromValue(String value) { + for (SideEnum b : SideEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_SIDE = "side"; + @jakarta.annotation.Nonnull private SideEnum side; + + public QuotePropertiesDetails() {} + + @JsonCreator + public QuotePropertiesDetails( + @JsonProperty(value = JSON_PROPERTY_VIA, required = true) AccessType via, + @JsonProperty(value = JSON_PROPERTY_ID, required = true) String id, + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_QUOTE_ASSET_ID, required = true) + String quoteAssetId, + @JsonProperty(value = JSON_PROPERTY_BASE_ASSET_ID, required = true) String baseAssetId, + @JsonProperty(value = JSON_PROPERTY_BASE_AMOUNT, required = true) String baseAmount, + @JsonProperty(value = JSON_PROPERTY_QUOTE_AMOUNT, required = true) String quoteAmount, + @JsonProperty(value = JSON_PROPERTY_SIDE, required = true) SideEnum side) { + this.via = via; + this.id = id; + this.type = type; + this.quoteAssetId = quoteAssetId; + this.baseAssetId = baseAssetId; + this.baseAmount = baseAmount; + this.quoteAmount = quoteAmount; + this.side = side; + } + + public QuotePropertiesDetails via(@jakarta.annotation.Nonnull AccessType via) { + this.via = via; + return this; + } + + /** + * Get via + * + * @return via + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_VIA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccessType getVia() { + return via; + } + + @JsonProperty(JSON_PROPERTY_VIA) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setVia(@jakarta.annotation.Nonnull AccessType via) { + this.via = via; + } + + public QuotePropertiesDetails id(@jakarta.annotation.Nonnull String id) { + this.id = id; + return this; + } + + /** + * Get id + * + * @return id + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getId() { + return id; + } + + @JsonProperty(JSON_PROPERTY_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setId(@jakarta.annotation.Nonnull String id) { + this.id = id; + } + + public QuotePropertiesDetails type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public QuotePropertiesDetails quoteAssetId(@jakarta.annotation.Nonnull String quoteAssetId) { + this.quoteAssetId = quoteAssetId; + return this; + } + + /** + * Get quoteAssetId + * + * @return quoteAssetId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_QUOTE_ASSET_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getQuoteAssetId() { + return quoteAssetId; + } + + @JsonProperty(JSON_PROPERTY_QUOTE_ASSET_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setQuoteAssetId(@jakarta.annotation.Nonnull String quoteAssetId) { + this.quoteAssetId = quoteAssetId; + } + + public QuotePropertiesDetails baseAssetId(@jakarta.annotation.Nonnull String baseAssetId) { + this.baseAssetId = baseAssetId; + return this; + } + + /** + * Get baseAssetId + * + * @return baseAssetId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_BASE_ASSET_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getBaseAssetId() { + return baseAssetId; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setBaseAssetId(@jakarta.annotation.Nonnull String baseAssetId) { + this.baseAssetId = baseAssetId; + } + + public QuotePropertiesDetails baseAmount(@jakarta.annotation.Nonnull String baseAmount) { + this.baseAmount = baseAmount; + return this; + } + + /** + * Get baseAmount + * + * @return baseAmount + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_BASE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getBaseAmount() { + return baseAmount; + } + + @JsonProperty(JSON_PROPERTY_BASE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setBaseAmount(@jakarta.annotation.Nonnull String baseAmount) { + this.baseAmount = baseAmount; + } + + public QuotePropertiesDetails quoteAmount(@jakarta.annotation.Nonnull String quoteAmount) { + this.quoteAmount = quoteAmount; + return this; + } + + /** + * Get quoteAmount + * + * @return quoteAmount + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getQuoteAmount() { + return quoteAmount; + } + + @JsonProperty(JSON_PROPERTY_QUOTE_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setQuoteAmount(@jakarta.annotation.Nonnull String quoteAmount) { + this.quoteAmount = quoteAmount; + } + + public QuotePropertiesDetails priceImpact(@jakarta.annotation.Nullable BigDecimal priceImpact) { + this.priceImpact = priceImpact; + return this; + } + + /** + * Get priceImpact + * + * @return priceImpact + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PRICE_IMPACT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getPriceImpact() { + return priceImpact; + } + + @JsonProperty(JSON_PROPERTY_PRICE_IMPACT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPriceImpact(@jakarta.annotation.Nullable BigDecimal priceImpact) { + this.priceImpact = priceImpact; + } + + public QuotePropertiesDetails quoteMinAmount( + @jakarta.annotation.Nullable String quoteMinAmount) { + this.quoteMinAmount = quoteMinAmount; + return this; + } + + /** + * Get quoteMinAmount + * + * @return quoteMinAmount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_QUOTE_MIN_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getQuoteMinAmount() { + return quoteMinAmount; + } + + @JsonProperty(JSON_PROPERTY_QUOTE_MIN_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setQuoteMinAmount(@jakarta.annotation.Nullable String quoteMinAmount) { + this.quoteMinAmount = quoteMinAmount; + } + + public QuotePropertiesDetails executionSteps( + @jakarta.annotation.Nullable List executionSteps) { + this.executionSteps = executionSteps; + return this; + } + + public QuotePropertiesDetails addExecutionStepsItem(ExecutionStepDetails executionStepsItem) { + if (this.executionSteps == null) { + this.executionSteps = new ArrayList<>(); + } + this.executionSteps.add(executionStepsItem); + return this; + } + + /** + * Get executionSteps + * + * @return executionSteps + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_EXECUTION_STEPS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getExecutionSteps() { + return executionSteps; + } + + @JsonProperty(JSON_PROPERTY_EXECUTION_STEPS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setExecutionSteps( + @jakarta.annotation.Nullable List executionSteps) { + this.executionSteps = executionSteps; + } + + public QuotePropertiesDetails generalFees(@jakarta.annotation.Nullable List generalFees) { + this.generalFees = generalFees; + return this; + } + + public QuotePropertiesDetails addGeneralFeesItem(Fee generalFeesItem) { + if (this.generalFees == null) { + this.generalFees = new ArrayList<>(); + } + this.generalFees.add(generalFeesItem); + return this; + } + + /** + * Get generalFees + * + * @return generalFees + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_GENERAL_FEES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getGeneralFees() { + return generalFees; + } + + @JsonProperty(JSON_PROPERTY_GENERAL_FEES) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setGeneralFees(@jakarta.annotation.Nullable List generalFees) { + this.generalFees = generalFees; + } + + public QuotePropertiesDetails side(@jakarta.annotation.Nonnull SideEnum side) { + this.side = side; + return this; + } + + /** + * Side of the order + * + * @return side + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_SIDE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SideEnum getSide() { + return side; + } + + @JsonProperty(JSON_PROPERTY_SIDE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setSide(@jakarta.annotation.Nonnull SideEnum side) { + this.side = side; + } + + /** Return true if this QuotePropertiesDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + QuotePropertiesDetails quotePropertiesDetails = (QuotePropertiesDetails) o; + return Objects.equals(this.via, quotePropertiesDetails.via) + && Objects.equals(this.id, quotePropertiesDetails.id) + && Objects.equals(this.type, quotePropertiesDetails.type) + && Objects.equals(this.quoteAssetId, quotePropertiesDetails.quoteAssetId) + && Objects.equals(this.baseAssetId, quotePropertiesDetails.baseAssetId) + && Objects.equals(this.baseAmount, quotePropertiesDetails.baseAmount) + && Objects.equals(this.quoteAmount, quotePropertiesDetails.quoteAmount) + && Objects.equals(this.priceImpact, quotePropertiesDetails.priceImpact) + && Objects.equals(this.quoteMinAmount, quotePropertiesDetails.quoteMinAmount) + && Objects.equals(this.executionSteps, quotePropertiesDetails.executionSteps) + && Objects.equals(this.generalFees, quotePropertiesDetails.generalFees) + && Objects.equals(this.side, quotePropertiesDetails.side); + } + + @Override + public int hashCode() { + return Objects.hash( + via, + id, + type, + quoteAssetId, + baseAssetId, + baseAmount, + quoteAmount, + priceImpact, + quoteMinAmount, + executionSteps, + generalFees, + side); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class QuotePropertiesDetails {\n"); + sb.append(" via: ").append(toIndentedString(via)).append("\n"); + sb.append(" id: ").append(toIndentedString(id)).append("\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" quoteAssetId: ").append(toIndentedString(quoteAssetId)).append("\n"); + sb.append(" baseAssetId: ").append(toIndentedString(baseAssetId)).append("\n"); + sb.append(" baseAmount: ").append(toIndentedString(baseAmount)).append("\n"); + sb.append(" quoteAmount: ").append(toIndentedString(quoteAmount)).append("\n"); + sb.append(" priceImpact: ").append(toIndentedString(priceImpact)).append("\n"); + sb.append(" quoteMinAmount: ").append(toIndentedString(quoteMinAmount)).append("\n"); + sb.append(" executionSteps: ").append(toIndentedString(executionSteps)).append("\n"); + sb.append(" generalFees: ").append(toIndentedString(generalFees)).append("\n"); + sb.append(" side: ").append(toIndentedString(side)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `via` to the URL query string + if (getVia() != null) { + joiner.add(getVia().toUrlQueryString(prefix + "via" + suffix)); + } + + // add `id` to the URL query string + if (getId() != null) { + joiner.add( + String.format( + "%sid%s=%s", + prefix, suffix, ApiClient.urlEncode(ApiClient.valueToString(getId())))); + } + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `quoteAssetId` to the URL query string + if (getQuoteAssetId() != null) { + joiner.add( + String.format( + "%squoteAssetId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getQuoteAssetId())))); + } + + // add `baseAssetId` to the URL query string + if (getBaseAssetId() != null) { + joiner.add( + String.format( + "%sbaseAssetId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAssetId())))); + } + + // add `baseAmount` to the URL query string + if (getBaseAmount() != null) { + joiner.add( + String.format( + "%sbaseAmount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAmount())))); + } + + // add `quoteAmount` to the URL query string + if (getQuoteAmount() != null) { + joiner.add( + String.format( + "%squoteAmount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getQuoteAmount())))); + } + + // add `priceImpact` to the URL query string + if (getPriceImpact() != null) { + joiner.add( + String.format( + "%spriceImpact%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPriceImpact())))); + } + + // add `quoteMinAmount` to the URL query string + if (getQuoteMinAmount() != null) { + joiner.add( + String.format( + "%squoteMinAmount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getQuoteMinAmount())))); + } + + // add `executionSteps` to the URL query string + if (getExecutionSteps() != null) { + for (int i = 0; i < getExecutionSteps().size(); i++) { + if (getExecutionSteps().get(i) != null) { + joiner.add( + getExecutionSteps() + .get(i) + .toUrlQueryString( + String.format( + "%sexecutionSteps%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `generalFees` to the URL query string + if (getGeneralFees() != null) { + for (int i = 0; i < getGeneralFees().size(); i++) { + if (getGeneralFees().get(i) != null) { + joiner.add( + getGeneralFees() + .get(i) + .toUrlQueryString( + String.format( + "%sgeneralFees%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `side` to the URL query string + if (getSide() != null) { + joiner.add( + String.format( + "%sside%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSide())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ReQuoteDetails.java b/src/main/java/com/fireblocks/sdk/model/ReQuoteDetails.java new file mode 100644 index 00000000..8e206205 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ReQuoteDetails.java @@ -0,0 +1,133 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.Objects; +import java.util.StringJoiner; + +/** ReQuoteDetails */ +@JsonPropertyOrder({ReQuoteDetails.JSON_PROPERTY_RE_QUOTE}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ReQuoteDetails { + public static final String JSON_PROPERTY_RE_QUOTE = "reQuote"; + @jakarta.annotation.Nullable private ReQuoteDetailsReQuote reQuote; + + public ReQuoteDetails() {} + + public ReQuoteDetails reQuote(@jakarta.annotation.Nullable ReQuoteDetailsReQuote reQuote) { + this.reQuote = reQuote; + return this; + } + + /** + * Get reQuote + * + * @return reQuote + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RE_QUOTE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ReQuoteDetailsReQuote getReQuote() { + return reQuote; + } + + @JsonProperty(JSON_PROPERTY_RE_QUOTE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setReQuote(@jakarta.annotation.Nullable ReQuoteDetailsReQuote reQuote) { + this.reQuote = reQuote; + } + + /** Return true if this ReQuoteDetails object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ReQuoteDetails reQuoteDetails = (ReQuoteDetails) o; + return Objects.equals(this.reQuote, reQuoteDetails.reQuote); + } + + @Override + public int hashCode() { + return Objects.hash(reQuote); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ReQuoteDetails {\n"); + sb.append(" reQuote: ").append(toIndentedString(reQuote)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `reQuote` to the URL query string + if (getReQuote() != null) { + joiner.add(getReQuote().toUrlQueryString(prefix + "reQuote" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.java b/src/main/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuote.java similarity index 80% rename from src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.java rename to src/main/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuote.java index b1ad2bdb..26c6c281 100644 --- a/src/main/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.java +++ b/src/main/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuote.java @@ -39,52 +39,41 @@ @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") -@JsonDeserialize( - using = - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote - .QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteDeserializer.class) -@JsonSerialize( - using = - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote - .QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteSerializer.class) -public class QuoteExecutionWithRequoteRequestDetailsAllOfReQuote extends AbstractOpenApiSchema { - private static final Logger log = - Logger.getLogger(QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.class.getName()); +@JsonDeserialize(using = ReQuoteDetailsReQuote.ReQuoteDetailsReQuoteDeserializer.class) +@JsonSerialize(using = ReQuoteDetailsReQuote.ReQuoteDetailsReQuoteSerializer.class) +public class ReQuoteDetailsReQuote extends AbstractOpenApiSchema { + private static final Logger log = Logger.getLogger(ReQuoteDetailsReQuote.class.getName()); - public static class QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteSerializer - extends StdSerializer { - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteSerializer( - Class t) { + public static class ReQuoteDetailsReQuoteSerializer + extends StdSerializer { + public ReQuoteDetailsReQuoteSerializer(Class t) { super(t); } - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteSerializer() { + public ReQuoteDetailsReQuoteSerializer() { this(null); } @Override public void serialize( - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote value, - JsonGenerator jgen, - SerializerProvider provider) + ReQuoteDetailsReQuote value, JsonGenerator jgen, SerializerProvider provider) throws IOException, JsonProcessingException { jgen.writeObject(value.getActualInstance()); } } - public static class QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteDeserializer - extends StdDeserializer { - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteDeserializer() { - this(QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.class); + public static class ReQuoteDetailsReQuoteDeserializer + extends StdDeserializer { + public ReQuoteDetailsReQuoteDeserializer() { + this(ReQuoteDetailsReQuote.class); } - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteDeserializer(Class vc) { + public ReQuoteDetailsReQuoteDeserializer(Class vc) { super(vc); } @Override - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote deserialize( - JsonParser jp, DeserializationContext ctxt) + public ReQuoteDetailsReQuote deserialize(JsonParser jp, DeserializationContext ctxt) throws IOException, JsonProcessingException { JsonNode tree = jp.readValueAsTree(); Object deserialized = null; @@ -190,42 +179,39 @@ public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote deserialize( } if (match == 1) { - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote ret = - new QuoteExecutionWithRequoteRequestDetailsAllOfReQuote(); + ReQuoteDetailsReQuote ret = new ReQuoteDetailsReQuote(); ret.setActualInstance(deserialized); return ret; } throw new IOException( String.format( - "Failed deserialization for" - + " QuoteExecutionWithRequoteRequestDetailsAllOfReQuote: %d classes" - + " match result, expected 1", + "Failed deserialization for ReQuoteDetailsReQuote: %d classes match" + + " result, expected 1", match)); } /** Handle deserialization of the 'null' value. */ @Override - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote getNullValue( - DeserializationContext ctxt) throws JsonMappingException { + public ReQuoteDetailsReQuote getNullValue(DeserializationContext ctxt) + throws JsonMappingException { throw new JsonMappingException( - ctxt.getParser(), - "QuoteExecutionWithRequoteRequestDetailsAllOfReQuote cannot be null"); + ctxt.getParser(), "ReQuoteDetailsReQuote cannot be null"); } } // store a list of schema names defined in oneOf public static final Map> schemas = new HashMap<>(); - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote() { + public ReQuoteDetailsReQuote() { super("oneOf", Boolean.FALSE); } - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote(MarketRequoteRequestDetails o) { + public ReQuoteDetailsReQuote(MarketRequoteRequestDetails o) { super("oneOf", Boolean.FALSE); setActualInstance(o); } - public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote(RetryRequoteRequestDetails o) { + public ReQuoteDetailsReQuote(RetryRequoteRequestDetails o) { super("oneOf", Boolean.FALSE); setActualInstance(o); } @@ -233,25 +219,20 @@ public QuoteExecutionWithRequoteRequestDetailsAllOfReQuote(RetryRequoteRequestDe static { schemas.put("MarketRequoteRequestDetails", MarketRequoteRequestDetails.class); schemas.put("RetryRequoteRequestDetails", RetryRequoteRequestDetails.class); - JSON.registerDescendants( - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.class, - Collections.unmodifiableMap(schemas)); + JSON.registerDescendants(ReQuoteDetailsReQuote.class, Collections.unmodifiableMap(schemas)); // Initialize and register the discriminator mappings. Map> mappings = new HashMap>(); mappings.put("MARKET", MarketRequoteRequestDetails.class); mappings.put("RETRY", RetryRequoteRequestDetails.class); mappings.put("MarketRequoteRequestDetails", MarketRequoteRequestDetails.class); mappings.put("RetryRequoteRequestDetails", RetryRequoteRequestDetails.class); - mappings.put( - "QuoteExecutionWithRequoteRequestDetails_allOf_reQuote", - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.class); - JSON.registerDiscriminator( - QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.class, "type", mappings); + mappings.put("ReQuoteDetails_reQuote", ReQuoteDetailsReQuote.class); + JSON.registerDiscriminator(ReQuoteDetailsReQuote.class, "type", mappings); } @Override public Map> getSchemas() { - return QuoteExecutionWithRequoteRequestDetailsAllOfReQuote.schemas; + return ReQuoteDetailsReQuote.schemas; } /** diff --git a/src/main/java/com/fireblocks/sdk/model/RegisterNewAssetRequest.java b/src/main/java/com/fireblocks/sdk/model/RegisterNewAssetRequest.java index eec1a670..dc2f52cf 100644 --- a/src/main/java/com/fireblocks/sdk/model/RegisterNewAssetRequest.java +++ b/src/main/java/com/fireblocks/sdk/model/RegisterNewAssetRequest.java @@ -81,7 +81,7 @@ public RegisterNewAssetRequest address(@jakarta.annotation.Nonnull String addres /** * Asset address. - EVM-based chains: token contract address - Stellar (XLM): issuer address - * Algorand (ALGO): asset ID - TRON (TRX): token contract address - NEAR: token address - - * Solana: token's mint account address + * Solana: token's mint account address - Sui: token's type * * @return address */ diff --git a/src/main/java/com/fireblocks/sdk/model/RetryRequoteRequestDetails.java b/src/main/java/com/fireblocks/sdk/model/RetryRequoteRequestDetails.java index 4aa87b35..1676a804 100644 --- a/src/main/java/com/fireblocks/sdk/model/RetryRequoteRequestDetails.java +++ b/src/main/java/com/fireblocks/sdk/model/RetryRequoteRequestDetails.java @@ -74,7 +74,7 @@ public static TypeEnum fromValue(String value) { @jakarta.annotation.Nonnull private BigDecimal count; public static final String JSON_PROPERTY_SLIPPAGE_BPS = "slippageBps"; - @jakarta.annotation.Nullable private BigDecimal slippageBps = new BigDecimal("1"); + @jakarta.annotation.Nullable private BigDecimal slippageBps; public RetryRequoteRequestDetails() {} diff --git a/src/main/java/com/fireblocks/sdk/model/SEPAAddress.java b/src/main/java/com/fireblocks/sdk/model/SEPAAddress.java new file mode 100644 index 00000000..df6bb37b --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/SEPAAddress.java @@ -0,0 +1,421 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** SEPAAddress */ +@JsonPropertyOrder({ + SEPAAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + SEPAAddress.JSON_PROPERTY_IBAN, + SEPAAddress.JSON_PROPERTY_BIC, + SEPAAddress.JSON_PROPERTY_BANK_NAME, + SEPAAddress.JSON_PROPERTY_BANK_BRANCH, + SEPAAddress.JSON_PROPERTY_BANK_ADDRESS, + SEPAAddress.JSON_PROPERTY_PURPOSE_CODE, + SEPAAddress.JSON_PROPERTY_TAX_ID +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class SEPAAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_IBAN = "iban"; + @jakarta.annotation.Nonnull private String iban; + + public static final String JSON_PROPERTY_BIC = "bic"; + @jakarta.annotation.Nullable private String bic; + + public static final String JSON_PROPERTY_BANK_NAME = "bankName"; + @jakarta.annotation.Nullable private String bankName; + + public static final String JSON_PROPERTY_BANK_BRANCH = "bankBranch"; + @jakarta.annotation.Nullable private String bankBranch; + + public static final String JSON_PROPERTY_BANK_ADDRESS = "bankAddress"; + @jakarta.annotation.Nullable private String bankAddress; + + public static final String JSON_PROPERTY_PURPOSE_CODE = "purposeCode"; + @jakarta.annotation.Nullable private String purposeCode; + + public static final String JSON_PROPERTY_TAX_ID = "taxId"; + @jakarta.annotation.Nullable private String taxId; + + public SEPAAddress() {} + + @JsonCreator + public SEPAAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_IBAN, required = true) String iban) { + this.accountHolder = accountHolder; + this.iban = iban; + } + + public SEPAAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public SEPAAddress iban(@jakarta.annotation.Nonnull String iban) { + this.iban = iban; + return this; + } + + /** + * Get iban + * + * @return iban + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_IBAN) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getIban() { + return iban; + } + + @JsonProperty(JSON_PROPERTY_IBAN) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setIban(@jakarta.annotation.Nonnull String iban) { + this.iban = iban; + } + + public SEPAAddress bic(@jakarta.annotation.Nullable String bic) { + this.bic = bic; + return this; + } + + /** + * Bank Identifier Code (SWIFT/BIC) + * + * @return bic + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BIC) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBic() { + return bic; + } + + @JsonProperty(JSON_PROPERTY_BIC) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBic(@jakarta.annotation.Nullable String bic) { + this.bic = bic; + } + + public SEPAAddress bankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + return this; + } + + /** + * Get bankName + * + * @return bankName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankName() { + return bankName; + } + + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + } + + public SEPAAddress bankBranch(@jakarta.annotation.Nullable String bankBranch) { + this.bankBranch = bankBranch; + return this; + } + + /** + * Get bankBranch + * + * @return bankBranch + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_BRANCH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankBranch() { + return bankBranch; + } + + @JsonProperty(JSON_PROPERTY_BANK_BRANCH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankBranch(@jakarta.annotation.Nullable String bankBranch) { + this.bankBranch = bankBranch; + } + + public SEPAAddress bankAddress(@jakarta.annotation.Nullable String bankAddress) { + this.bankAddress = bankAddress; + return this; + } + + /** + * Get bankAddress + * + * @return bankAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankAddress() { + return bankAddress; + } + + @JsonProperty(JSON_PROPERTY_BANK_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankAddress(@jakarta.annotation.Nullable String bankAddress) { + this.bankAddress = bankAddress; + } + + public SEPAAddress purposeCode(@jakarta.annotation.Nullable String purposeCode) { + this.purposeCode = purposeCode; + return this; + } + + /** + * ISO purpose code for the transfer + * + * @return purposeCode + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PURPOSE_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getPurposeCode() { + return purposeCode; + } + + @JsonProperty(JSON_PROPERTY_PURPOSE_CODE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPurposeCode(@jakarta.annotation.Nullable String purposeCode) { + this.purposeCode = purposeCode; + } + + public SEPAAddress taxId(@jakarta.annotation.Nullable String taxId) { + this.taxId = taxId; + return this; + } + + /** + * Beneficiary tax identification number + * + * @return taxId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TAX_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTaxId() { + return taxId; + } + + @JsonProperty(JSON_PROPERTY_TAX_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTaxId(@jakarta.annotation.Nullable String taxId) { + this.taxId = taxId; + } + + /** Return true if this SEPAAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SEPAAddress sePAAddress = (SEPAAddress) o; + return Objects.equals(this.accountHolder, sePAAddress.accountHolder) + && Objects.equals(this.iban, sePAAddress.iban) + && Objects.equals(this.bic, sePAAddress.bic) + && Objects.equals(this.bankName, sePAAddress.bankName) + && Objects.equals(this.bankBranch, sePAAddress.bankBranch) + && Objects.equals(this.bankAddress, sePAAddress.bankAddress) + && Objects.equals(this.purposeCode, sePAAddress.purposeCode) + && Objects.equals(this.taxId, sePAAddress.taxId); + } + + @Override + public int hashCode() { + return Objects.hash( + accountHolder, iban, bic, bankName, bankBranch, bankAddress, purposeCode, taxId); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SEPAAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" iban: ").append(toIndentedString(iban)).append("\n"); + sb.append(" bic: ").append(toIndentedString(bic)).append("\n"); + sb.append(" bankName: ").append(toIndentedString(bankName)).append("\n"); + sb.append(" bankBranch: ").append(toIndentedString(bankBranch)).append("\n"); + sb.append(" bankAddress: ").append(toIndentedString(bankAddress)).append("\n"); + sb.append(" purposeCode: ").append(toIndentedString(purposeCode)).append("\n"); + sb.append(" taxId: ").append(toIndentedString(taxId)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `iban` to the URL query string + if (getIban() != null) { + joiner.add( + String.format( + "%siban%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIban())))); + } + + // add `bic` to the URL query string + if (getBic() != null) { + joiner.add( + String.format( + "%sbic%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBic())))); + } + + // add `bankName` to the URL query string + if (getBankName() != null) { + joiner.add( + String.format( + "%sbankName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankName())))); + } + + // add `bankBranch` to the URL query string + if (getBankBranch() != null) { + joiner.add( + String.format( + "%sbankBranch%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankBranch())))); + } + + // add `bankAddress` to the URL query string + if (getBankAddress() != null) { + joiner.add( + String.format( + "%sbankAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankAddress())))); + } + + // add `purposeCode` to the URL query string + if (getPurposeCode() != null) { + joiner.add( + String.format( + "%spurposeCode%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPurposeCode())))); + } + + // add `taxId` to the URL query string + if (getTaxId() != null) { + joiner.add( + String.format( + "%staxId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTaxId())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/SEPADestination.java b/src/main/java/com/fireblocks/sdk/model/SEPADestination.java new file mode 100644 index 00000000..0d2aa3bc --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/SEPADestination.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** SEPADestination */ +@JsonPropertyOrder({SEPADestination.JSON_PROPERTY_TYPE, SEPADestination.JSON_PROPERTY_ADDRESS}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class SEPADestination { + /** Gets or Sets type */ + public enum TypeEnum { + SEPA(String.valueOf("SEPA")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private SEPAAddress address; + + public SEPADestination() {} + + @JsonCreator + public SEPADestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) SEPAAddress address) { + this.type = type; + this.address = address; + } + + public SEPADestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public SEPADestination address(@jakarta.annotation.Nonnull SEPAAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SEPAAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull SEPAAddress address) { + this.address = address; + } + + /** Return true if this SEPADestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SEPADestination sePADestination = (SEPADestination) o; + return Objects.equals(this.type, sePADestination.type) + && Objects.equals(this.address, sePADestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SEPADestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnum.java b/src/main/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnum.java new file mode 100644 index 00000000..9ad4ac85 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnum.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Alert exposure type */ +public enum ScreeningAlertExposureTypeEnum { + DIRECT("DIRECT"), + + INDIRECT("INDIRECT"); + + private String value; + + ScreeningAlertExposureTypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static ScreeningAlertExposureTypeEnum fromValue(String value) { + for (ScreeningAlertExposureTypeEnum b : ScreeningAlertExposureTypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningAmlAlert.java b/src/main/java/com/fireblocks/sdk/model/ScreeningAmlAlert.java new file mode 100644 index 00000000..4d9e5a9f --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningAmlAlert.java @@ -0,0 +1,481 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** AML alert information */ +@JsonPropertyOrder({ + ScreeningAmlAlert.JSON_PROPERTY_ALERT_LEVEL, + ScreeningAmlAlert.JSON_PROPERTY_ALERT_NAME, + ScreeningAmlAlert.JSON_PROPERTY_CATEGORY, + ScreeningAmlAlert.JSON_PROPERTY_SERVICE, + ScreeningAmlAlert.JSON_PROPERTY_EXTERNAL_ID, + ScreeningAmlAlert.JSON_PROPERTY_ALERT_AMOUNT, + ScreeningAmlAlert.JSON_PROPERTY_EXPOSURE_TYPE, + ScreeningAmlAlert.JSON_PROPERTY_POLICY_ACTION, + ScreeningAmlAlert.JSON_PROPERTY_CATEGORY_ID +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningAmlAlert { + public static final String JSON_PROPERTY_ALERT_LEVEL = "alertLevel"; + @jakarta.annotation.Nonnull private AlertLevelEnum alertLevel; + + public static final String JSON_PROPERTY_ALERT_NAME = "alertName"; + @jakarta.annotation.Nullable private String alertName; + + public static final String JSON_PROPERTY_CATEGORY = "category"; + @jakarta.annotation.Nullable private String category; + + public static final String JSON_PROPERTY_SERVICE = "service"; + @jakarta.annotation.Nullable private String service; + + public static final String JSON_PROPERTY_EXTERNAL_ID = "externalId"; + @jakarta.annotation.Nonnull private String externalId; + + public static final String JSON_PROPERTY_ALERT_AMOUNT = "alertAmount"; + @jakarta.annotation.Nonnull private BigDecimal alertAmount; + + public static final String JSON_PROPERTY_EXPOSURE_TYPE = "exposureType"; + @jakarta.annotation.Nonnull private ScreeningAlertExposureTypeEnum exposureType; + + public static final String JSON_PROPERTY_POLICY_ACTION = "policyAction"; + @jakarta.annotation.Nullable private String policyAction; + + public static final String JSON_PROPERTY_CATEGORY_ID = "categoryId"; + @jakarta.annotation.Nullable private BigDecimal categoryId; + + public ScreeningAmlAlert() {} + + @JsonCreator + public ScreeningAmlAlert( + @JsonProperty(value = JSON_PROPERTY_ALERT_LEVEL, required = true) + AlertLevelEnum alertLevel, + @JsonProperty(value = JSON_PROPERTY_EXTERNAL_ID, required = true) String externalId, + @JsonProperty(value = JSON_PROPERTY_ALERT_AMOUNT, required = true) + BigDecimal alertAmount, + @JsonProperty(value = JSON_PROPERTY_EXPOSURE_TYPE, required = true) + ScreeningAlertExposureTypeEnum exposureType) { + this.alertLevel = alertLevel; + this.externalId = externalId; + this.alertAmount = alertAmount; + this.exposureType = exposureType; + } + + public ScreeningAmlAlert alertLevel(@jakarta.annotation.Nonnull AlertLevelEnum alertLevel) { + this.alertLevel = alertLevel; + return this; + } + + /** + * Get alertLevel + * + * @return alertLevel + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ALERT_LEVEL) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AlertLevelEnum getAlertLevel() { + return alertLevel; + } + + @JsonProperty(JSON_PROPERTY_ALERT_LEVEL) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAlertLevel(@jakarta.annotation.Nonnull AlertLevelEnum alertLevel) { + this.alertLevel = alertLevel; + } + + public ScreeningAmlAlert alertName(@jakarta.annotation.Nullable String alertName) { + this.alertName = alertName; + return this; + } + + /** + * Name or type of the alert + * + * @return alertName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ALERT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAlertName() { + return alertName; + } + + @JsonProperty(JSON_PROPERTY_ALERT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAlertName(@jakarta.annotation.Nullable String alertName) { + this.alertName = alertName; + } + + public ScreeningAmlAlert category(@jakarta.annotation.Nullable String category) { + this.category = category; + return this; + } + + /** + * Alert category + * + * @return category + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCategory() { + return category; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategory(@jakarta.annotation.Nullable String category) { + this.category = category; + } + + public ScreeningAmlAlert service(@jakarta.annotation.Nullable String service) { + this.service = service; + return this; + } + + /** + * Service that generated the alert + * + * @return service + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SERVICE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getService() { + return service; + } + + @JsonProperty(JSON_PROPERTY_SERVICE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setService(@jakarta.annotation.Nullable String service) { + this.service = service; + } + + public ScreeningAmlAlert externalId(@jakarta.annotation.Nonnull String externalId) { + this.externalId = externalId; + return this; + } + + /** + * External identifier for the alert + * + * @return externalId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getExternalId() { + return externalId; + } + + @JsonProperty(JSON_PROPERTY_EXTERNAL_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setExternalId(@jakarta.annotation.Nonnull String externalId) { + this.externalId = externalId; + } + + public ScreeningAmlAlert alertAmount(@jakarta.annotation.Nonnull BigDecimal alertAmount) { + this.alertAmount = alertAmount; + return this; + } + + /** + * Amount associated with the alert + * + * @return alertAmount + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ALERT_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public BigDecimal getAlertAmount() { + return alertAmount; + } + + @JsonProperty(JSON_PROPERTY_ALERT_AMOUNT) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAlertAmount(@jakarta.annotation.Nonnull BigDecimal alertAmount) { + this.alertAmount = alertAmount; + } + + public ScreeningAmlAlert exposureType( + @jakarta.annotation.Nonnull ScreeningAlertExposureTypeEnum exposureType) { + this.exposureType = exposureType; + return this; + } + + /** + * Get exposureType + * + * @return exposureType + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_EXPOSURE_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public ScreeningAlertExposureTypeEnum getExposureType() { + return exposureType; + } + + @JsonProperty(JSON_PROPERTY_EXPOSURE_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setExposureType( + @jakarta.annotation.Nonnull ScreeningAlertExposureTypeEnum exposureType) { + this.exposureType = exposureType; + } + + public ScreeningAmlAlert policyAction(@jakarta.annotation.Nullable String policyAction) { + this.policyAction = policyAction; + return this; + } + + /** + * Recommended action based on policy + * + * @return policyAction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_POLICY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getPolicyAction() { + return policyAction; + } + + @JsonProperty(JSON_PROPERTY_POLICY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPolicyAction(@jakarta.annotation.Nullable String policyAction) { + this.policyAction = policyAction; + } + + public ScreeningAmlAlert categoryId(@jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + return this; + } + + /** + * Category identifier + * + * @return categoryId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getCategoryId() { + return categoryId; + } + + @JsonProperty(JSON_PROPERTY_CATEGORY_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCategoryId(@jakarta.annotation.Nullable BigDecimal categoryId) { + this.categoryId = categoryId; + } + + /** Return true if this ScreeningAmlAlert object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningAmlAlert screeningAmlAlert = (ScreeningAmlAlert) o; + return Objects.equals(this.alertLevel, screeningAmlAlert.alertLevel) + && Objects.equals(this.alertName, screeningAmlAlert.alertName) + && Objects.equals(this.category, screeningAmlAlert.category) + && Objects.equals(this.service, screeningAmlAlert.service) + && Objects.equals(this.externalId, screeningAmlAlert.externalId) + && Objects.equals(this.alertAmount, screeningAmlAlert.alertAmount) + && Objects.equals(this.exposureType, screeningAmlAlert.exposureType) + && Objects.equals(this.policyAction, screeningAmlAlert.policyAction) + && Objects.equals(this.categoryId, screeningAmlAlert.categoryId); + } + + @Override + public int hashCode() { + return Objects.hash( + alertLevel, + alertName, + category, + service, + externalId, + alertAmount, + exposureType, + policyAction, + categoryId); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningAmlAlert {\n"); + sb.append(" alertLevel: ").append(toIndentedString(alertLevel)).append("\n"); + sb.append(" alertName: ").append(toIndentedString(alertName)).append("\n"); + sb.append(" category: ").append(toIndentedString(category)).append("\n"); + sb.append(" service: ").append(toIndentedString(service)).append("\n"); + sb.append(" externalId: ").append(toIndentedString(externalId)).append("\n"); + sb.append(" alertAmount: ").append(toIndentedString(alertAmount)).append("\n"); + sb.append(" exposureType: ").append(toIndentedString(exposureType)).append("\n"); + sb.append(" policyAction: ").append(toIndentedString(policyAction)).append("\n"); + sb.append(" categoryId: ").append(toIndentedString(categoryId)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `alertLevel` to the URL query string + if (getAlertLevel() != null) { + joiner.add( + String.format( + "%salertLevel%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAlertLevel())))); + } + + // add `alertName` to the URL query string + if (getAlertName() != null) { + joiner.add( + String.format( + "%salertName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAlertName())))); + } + + // add `category` to the URL query string + if (getCategory() != null) { + joiner.add( + String.format( + "%scategory%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategory())))); + } + + // add `service` to the URL query string + if (getService() != null) { + joiner.add( + String.format( + "%sservice%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getService())))); + } + + // add `externalId` to the URL query string + if (getExternalId() != null) { + joiner.add( + String.format( + "%sexternalId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExternalId())))); + } + + // add `alertAmount` to the URL query string + if (getAlertAmount() != null) { + joiner.add( + String.format( + "%salertAmount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAlertAmount())))); + } + + // add `exposureType` to the URL query string + if (getExposureType() != null) { + joiner.add( + String.format( + "%sexposureType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getExposureType())))); + } + + // add `policyAction` to the URL query string + if (getPolicyAction() != null) { + joiner.add( + String.format( + "%spolicyAction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getPolicyAction())))); + } + + // add `categoryId` to the URL query string + if (getCategoryId() != null) { + joiner.add( + String.format( + "%scategoryId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCategoryId())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRule.java b/src/main/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRule.java new file mode 100644 index 00000000..7ccdc188 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRule.java @@ -0,0 +1,220 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** AML matched rule information */ +@JsonPropertyOrder({ + ScreeningAmlMatchedRule.JSON_PROPERTY_RULE_ID, + ScreeningAmlMatchedRule.JSON_PROPERTY_RULE_NAME, + ScreeningAmlMatchedRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningAmlMatchedRule { + public static final String JSON_PROPERTY_RULE_ID = "ruleId"; + @jakarta.annotation.Nullable private String ruleId; + + public static final String JSON_PROPERTY_RULE_NAME = "ruleName"; + @jakarta.annotation.Nullable private String ruleName; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private PolicyVerdictActionEnum2 action; + + public ScreeningAmlMatchedRule() {} + + public ScreeningAmlMatchedRule ruleId(@jakarta.annotation.Nullable String ruleId) { + this.ruleId = ruleId; + return this; + } + + /** + * Identifier of the matched rule + * + * @return ruleId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RULE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getRuleId() { + return ruleId; + } + + @JsonProperty(JSON_PROPERTY_RULE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRuleId(@jakarta.annotation.Nullable String ruleId) { + this.ruleId = ruleId; + } + + public ScreeningAmlMatchedRule ruleName(@jakarta.annotation.Nullable String ruleName) { + this.ruleName = ruleName; + return this; + } + + /** + * Name of the matched rule + * + * @return ruleName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RULE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getRuleName() { + return ruleName; + } + + @JsonProperty(JSON_PROPERTY_RULE_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRuleName(@jakarta.annotation.Nullable String ruleName) { + this.ruleName = ruleName; + } + + public ScreeningAmlMatchedRule action( + @jakarta.annotation.Nullable PolicyVerdictActionEnum2 action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public PolicyVerdictActionEnum2 getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable PolicyVerdictActionEnum2 action) { + this.action = action; + } + + /** Return true if this ScreeningAmlMatchedRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningAmlMatchedRule screeningAmlMatchedRule = (ScreeningAmlMatchedRule) o; + return Objects.equals(this.ruleId, screeningAmlMatchedRule.ruleId) + && Objects.equals(this.ruleName, screeningAmlMatchedRule.ruleName) + && Objects.equals(this.action, screeningAmlMatchedRule.action); + } + + @Override + public int hashCode() { + return Objects.hash(ruleId, ruleName, action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningAmlMatchedRule {\n"); + sb.append(" ruleId: ").append(toIndentedString(ruleId)).append("\n"); + sb.append(" ruleName: ").append(toIndentedString(ruleName)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `ruleId` to the URL query string + if (getRuleId() != null) { + joiner.add( + String.format( + "%sruleId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRuleId())))); + } + + // add `ruleName` to the URL query string + if (getRuleName() != null) { + joiner.add( + String.format( + "%sruleName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRuleName())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningAmlResult.java b/src/main/java/com/fireblocks/sdk/model/ScreeningAmlResult.java new file mode 100644 index 00000000..cb29b2d8 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningAmlResult.java @@ -0,0 +1,302 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * Detailed AML screening result information. Contains alerts, risk scores, and other AML-specific + * data from provider-specific responses. + */ +@JsonPropertyOrder({ + ScreeningAmlResult.JSON_PROPERTY_ALERTS, + ScreeningAmlResult.JSON_PROPERTY_PROVIDER_RESPONSE, + ScreeningAmlResult.JSON_PROPERTY_MATCHED_RULE, + ScreeningAmlResult.JSON_PROPERTY_MATCHED_ALERT +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningAmlResult { + public static final String JSON_PROPERTY_ALERTS = "alerts"; + @jakarta.annotation.Nullable private List alerts; + + public static final String JSON_PROPERTY_PROVIDER_RESPONSE = "providerResponse"; + @jakarta.annotation.Nullable private Map providerResponse; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private ScreeningAmlMatchedRule matchedRule; + + public static final String JSON_PROPERTY_MATCHED_ALERT = "matchedAlert"; + @jakarta.annotation.Nullable private ScreeningAmlAlert matchedAlert; + + public ScreeningAmlResult() {} + + public ScreeningAmlResult alerts(@jakarta.annotation.Nullable List alerts) { + this.alerts = alerts; + return this; + } + + public ScreeningAmlResult addAlertsItem(ScreeningAmlAlert alertsItem) { + if (this.alerts == null) { + this.alerts = new ArrayList<>(); + } + this.alerts.add(alertsItem); + return this; + } + + /** + * List of AML alerts triggered during screening + * + * @return alerts + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ALERTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getAlerts() { + return alerts; + } + + @JsonProperty(JSON_PROPERTY_ALERTS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAlerts(@jakarta.annotation.Nullable List alerts) { + this.alerts = alerts; + } + + public ScreeningAmlResult providerResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + return this; + } + + public ScreeningAmlResult putProviderResponseItem(String key, Object providerResponseItem) { + if (this.providerResponse == null) { + this.providerResponse = new HashMap<>(); + } + this.providerResponse.put(key, providerResponseItem); + return this; + } + + /** + * Complete response from the AML provider. This is a dynamic object that varies significantly + * between different AML providers (Chainalysis, Elliptic, etc.). Each provider has their own + * proprietary response format and schema. Examples of provider-specific structures: - + * Chainalysis: Contains cluster info, risk scores, sanctions data - Elliptic: Includes risk + * assessment, entity types, compliance flags The structure is provider-dependent and cannot be + * standardized as each vendor implements their own proprietary data models and response + * formats. + * + * @return providerResponse + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public Map getProviderResponse() { + return providerResponse; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + } + + public ScreeningAmlResult matchedRule( + @jakarta.annotation.Nullable ScreeningAmlMatchedRule matchedRule) { + this.matchedRule = matchedRule; + return this; + } + + /** + * Get matchedRule + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningAmlMatchedRule getMatchedRule() { + return matchedRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule(@jakarta.annotation.Nullable ScreeningAmlMatchedRule matchedRule) { + this.matchedRule = matchedRule; + } + + public ScreeningAmlResult matchedAlert( + @jakarta.annotation.Nullable ScreeningAmlAlert matchedAlert) { + this.matchedAlert = matchedAlert; + return this; + } + + /** + * Get matchedAlert + * + * @return matchedAlert + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningAmlAlert getMatchedAlert() { + return matchedAlert; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_ALERT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedAlert(@jakarta.annotation.Nullable ScreeningAmlAlert matchedAlert) { + this.matchedAlert = matchedAlert; + } + + /** Return true if this ScreeningAmlResult object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningAmlResult screeningAmlResult = (ScreeningAmlResult) o; + return Objects.equals(this.alerts, screeningAmlResult.alerts) + && Objects.equals(this.providerResponse, screeningAmlResult.providerResponse) + && Objects.equals(this.matchedRule, screeningAmlResult.matchedRule) + && Objects.equals(this.matchedAlert, screeningAmlResult.matchedAlert); + } + + @Override + public int hashCode() { + return Objects.hash(alerts, providerResponse, matchedRule, matchedAlert); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningAmlResult {\n"); + sb.append(" alerts: ").append(toIndentedString(alerts)).append("\n"); + sb.append(" providerResponse: ").append(toIndentedString(providerResponse)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append(" matchedAlert: ").append(toIndentedString(matchedAlert)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `alerts` to the URL query string + if (getAlerts() != null) { + for (int i = 0; i < getAlerts().size(); i++) { + if (getAlerts().get(i) != null) { + joiner.add( + getAlerts() + .get(i) + .toUrlQueryString( + String.format( + "%salerts%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `providerResponse` to the URL query string + if (getProviderResponse() != null) { + for (String _key : getProviderResponse().keySet()) { + joiner.add( + String.format( + "%sproviderResponse%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, _key, containerSuffix), + getProviderResponse().get(_key), + ApiClient.urlEncode( + ApiClient.valueToString(getProviderResponse().get(_key))))); + } + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add(getMatchedRule().toUrlQueryString(prefix + "matchedRule" + suffix)); + } + + // add `matchedAlert` to the URL query string + if (getMatchedAlert() != null) { + joiner.add(getMatchedAlert().toUrlQueryString(prefix + "matchedAlert" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningMetadataConfig.java b/src/main/java/com/fireblocks/sdk/model/ScreeningMetadataConfig.java index 717381c1..6fe77829 100644 --- a/src/main/java/com/fireblocks/sdk/model/ScreeningMetadataConfig.java +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningMetadataConfig.java @@ -78,7 +78,7 @@ public static DirectionEnum fromValue(String value) { } public static final String JSON_PROPERTY_DIRECTION = "direction"; - @jakarta.annotation.Nonnull private DirectionEnum direction; + @jakarta.annotation.Nullable private DirectionEnum direction; /** Screening provider */ public enum ProviderEnum { @@ -266,14 +266,7 @@ public static StatusEnum fromValue(String value) { public ScreeningMetadataConfig() {} - @JsonCreator - public ScreeningMetadataConfig( - @JsonProperty(value = JSON_PROPERTY_DIRECTION, required = true) - DirectionEnum direction) { - this.direction = direction; - } - - public ScreeningMetadataConfig direction(@jakarta.annotation.Nonnull DirectionEnum direction) { + public ScreeningMetadataConfig direction(@jakarta.annotation.Nullable DirectionEnum direction) { this.direction = direction; return this; } @@ -283,16 +276,16 @@ public ScreeningMetadataConfig direction(@jakarta.annotation.Nonnull DirectionEn * * @return direction */ - @jakarta.annotation.Nonnull + @jakarta.annotation.Nullable @JsonProperty(JSON_PROPERTY_DIRECTION) - @JsonInclude(value = JsonInclude.Include.ALWAYS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) public DirectionEnum getDirection() { return direction; } @JsonProperty(JSON_PROPERTY_DIRECTION) - @JsonInclude(value = JsonInclude.Include.ALWAYS) - public void setDirection(@jakarta.annotation.Nonnull DirectionEnum direction) { + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable DirectionEnum direction) { this.direction = direction; } diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnum.java b/src/main/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnum.java new file mode 100644 index 00000000..93ad0fe4 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnum.java @@ -0,0 +1,72 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Risk level assessment for screening results. Possible values vary by provider and context. */ +public enum ScreeningRiskLevelEnum { + VERY_HIGH("VERY_HIGH"), + + SEVERE("SEVERE"), + + HIGH("HIGH"), + + MEDIUM("MEDIUM"), + + LOW("LOW"), + + UNKNOWN("UNKNOWN"); + + private String value; + + ScreeningRiskLevelEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static ScreeningRiskLevelEnum fromValue(String value) { + for (ScreeningRiskLevelEnum b : ScreeningRiskLevelEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkAmount.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkAmount.java new file mode 100644 index 00000000..ad5612bf --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkAmount.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * TRLink amount definition with range and currency, compatible with TAP format from Policy Engine + * V2 + */ +@JsonPropertyOrder({ + ScreeningTRLinkAmount.JSON_PROPERTY_RANGE, + ScreeningTRLinkAmount.JSON_PROPERTY_CURRENCY +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTRLinkAmount { + public static final String JSON_PROPERTY_RANGE = "range"; + @jakarta.annotation.Nullable private AmountRangeMinMax range; + + /** Currency type */ + public enum CurrencyEnum { + USD(String.valueOf("USD")), + + NATIVE(String.valueOf("NATIVE")); + + private String value; + + CurrencyEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static CurrencyEnum fromValue(String value) { + for (CurrencyEnum b : CurrencyEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_CURRENCY = "currency"; + @jakarta.annotation.Nullable private CurrencyEnum currency; + + public ScreeningTRLinkAmount() {} + + public ScreeningTRLinkAmount range(@jakarta.annotation.Nullable AmountRangeMinMax range) { + this.range = range; + return this; + } + + /** + * Get range + * + * @return range + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RANGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmountRangeMinMax getRange() { + return range; + } + + @JsonProperty(JSON_PROPERTY_RANGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRange(@jakarta.annotation.Nullable AmountRangeMinMax range) { + this.range = range; + } + + public ScreeningTRLinkAmount currency(@jakarta.annotation.Nullable CurrencyEnum currency) { + this.currency = currency; + return this; + } + + /** + * Currency type + * + * @return currency + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public CurrencyEnum getCurrency() { + return currency; + } + + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCurrency(@jakarta.annotation.Nullable CurrencyEnum currency) { + this.currency = currency; + } + + /** Return true if this ScreeningTRLinkAmount object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTRLinkAmount screeningTRLinkAmount = (ScreeningTRLinkAmount) o; + return Objects.equals(this.range, screeningTRLinkAmount.range) + && Objects.equals(this.currency, screeningTRLinkAmount.currency); + } + + @Override + public int hashCode() { + return Objects.hash(range, currency); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTRLinkAmount {\n"); + sb.append(" range: ").append(toIndentedString(range)).append("\n"); + sb.append(" currency: ").append(toIndentedString(currency)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `range` to the URL query string + if (getRange() != null) { + joiner.add(getRange().toUrlQueryString(prefix + "range" + suffix)); + } + + // add `currency` to the URL query string + if (getCurrency() != null) { + joiner.add( + String.format( + "%scurrency%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCurrency())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecision.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecision.java new file mode 100644 index 00000000..c34c458d --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecision.java @@ -0,0 +1,1053 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.time.OffsetDateTime; +import java.util.Objects; +import java.util.StringJoiner; + +/** Interface for reporting missing TRM screening decisions in ITRLinkResult */ +@JsonPropertyOrder({ + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_CUSTOMER_ID, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_DIRECTION, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_TYPE, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_SUB_TYPE, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_ADDRESS, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_DEST_TYPE, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_DEST_SUB_TYPE, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_DEST_ADDRESS, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_ID, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_DEST_ID, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_ASSET, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_BASE_ASSET, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_AMOUNT, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_NETWORK_PROTOCOL, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_OPERATION, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_DESCRIPTION, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_IS_DEFAULT, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_VALID_BEFORE, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_VALID_AFTER, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_ACTION, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_TIMESTAMP, + ScreeningTRLinkMissingTrmDecision.JSON_PROPERTY_REASON +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTRLinkMissingTrmDecision { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private ScreeningTRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_VALID_BEFORE = "validBefore"; + @jakarta.annotation.Nullable private BigDecimal validBefore; + + public static final String JSON_PROPERTY_VALID_AFTER = "validAfter"; + @jakarta.annotation.Nullable private BigDecimal validAfter; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkMissingTrmActionEnum action; + + public static final String JSON_PROPERTY_SOURCE = "source"; + @jakarta.annotation.Nonnull private String source; + + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nullable private OffsetDateTime timestamp; + + public static final String JSON_PROPERTY_REASON = "reason"; + @jakarta.annotation.Nullable private String reason; + + public ScreeningTRLinkMissingTrmDecision() {} + + @JsonCreator + public ScreeningTRLinkMissingTrmDecision( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TRLinkMissingTrmActionEnum action, + @JsonProperty(value = JSON_PROPERTY_SOURCE, required = true) String source) { + this.action = action; + this.source = source; + } + + public ScreeningTRLinkMissingTrmDecision customerId( + @jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public ScreeningTRLinkMissingTrmDecision direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public ScreeningTRLinkMissingTrmDecision sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public ScreeningTRLinkMissingTrmDecision sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public ScreeningTRLinkMissingTrmDecision sourceAddress( + @jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public ScreeningTRLinkMissingTrmDecision destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public ScreeningTRLinkMissingTrmDecision destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public ScreeningTRLinkMissingTrmDecision destAddress( + @jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ScreeningTRLinkMissingTrmDecision sourceId( + @jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public ScreeningTRLinkMissingTrmDecision destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public ScreeningTRLinkMissingTrmDecision asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public ScreeningTRLinkMissingTrmDecision baseAsset( + @jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public ScreeningTRLinkMissingTrmDecision amount( + @jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + } + + public ScreeningTRLinkMissingTrmDecision networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public ScreeningTRLinkMissingTrmDecision operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public ScreeningTRLinkMissingTrmDecision description( + @jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public ScreeningTRLinkMissingTrmDecision isDefault( + @jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public ScreeningTRLinkMissingTrmDecision validBefore( + @jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + return this; + } + + /** + * Unix timestamp when rule expires + * + * @return validBefore + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidBefore() { + return validBefore; + } + + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidBefore(@jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + } + + public ScreeningTRLinkMissingTrmDecision validAfter( + @jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + return this; + } + + /** + * Unix timestamp when rule becomes valid + * + * @return validAfter + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidAfter() { + return validAfter; + } + + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + } + + public ScreeningTRLinkMissingTrmDecision action( + @jakarta.annotation.Nonnull TRLinkMissingTrmActionEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkMissingTrmActionEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkMissingTrmActionEnum action) { + this.action = action; + } + + public ScreeningTRLinkMissingTrmDecision source(@jakarta.annotation.Nonnull String source) { + this.source = source; + return this; + } + + /** + * TRLink missing TRM source + * + * @return source + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_SOURCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getSource() { + return source; + } + + @JsonProperty(JSON_PROPERTY_SOURCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setSource(@jakarta.annotation.Nonnull String source) { + this.source = source; + } + + public ScreeningTRLinkMissingTrmDecision timestamp( + @jakarta.annotation.Nullable OffsetDateTime timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Timestamp of the decision + * + * @return timestamp + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public OffsetDateTime getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimestamp(@jakarta.annotation.Nullable OffsetDateTime timestamp) { + this.timestamp = timestamp; + } + + public ScreeningTRLinkMissingTrmDecision reason(@jakarta.annotation.Nullable String reason) { + this.reason = reason; + return this; + } + + /** + * Reason for the decision + * + * @return reason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getReason() { + return reason; + } + + @JsonProperty(JSON_PROPERTY_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setReason(@jakarta.annotation.Nullable String reason) { + this.reason = reason; + } + + /** Return true if this ScreeningTRLinkMissingTrmDecision object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTRLinkMissingTrmDecision screeningTRLinkMissingTrmDecision = + (ScreeningTRLinkMissingTrmDecision) o; + return Objects.equals(this.customerId, screeningTRLinkMissingTrmDecision.customerId) + && Objects.equals(this.direction, screeningTRLinkMissingTrmDecision.direction) + && Objects.equals(this.sourceType, screeningTRLinkMissingTrmDecision.sourceType) + && Objects.equals( + this.sourceSubType, screeningTRLinkMissingTrmDecision.sourceSubType) + && Objects.equals( + this.sourceAddress, screeningTRLinkMissingTrmDecision.sourceAddress) + && Objects.equals(this.destType, screeningTRLinkMissingTrmDecision.destType) + && Objects.equals(this.destSubType, screeningTRLinkMissingTrmDecision.destSubType) + && Objects.equals(this.destAddress, screeningTRLinkMissingTrmDecision.destAddress) + && Objects.equals(this.sourceId, screeningTRLinkMissingTrmDecision.sourceId) + && Objects.equals(this.destId, screeningTRLinkMissingTrmDecision.destId) + && Objects.equals(this.asset, screeningTRLinkMissingTrmDecision.asset) + && Objects.equals(this.baseAsset, screeningTRLinkMissingTrmDecision.baseAsset) + && Objects.equals(this.amount, screeningTRLinkMissingTrmDecision.amount) + && Objects.equals( + this.networkProtocol, screeningTRLinkMissingTrmDecision.networkProtocol) + && Objects.equals(this.operation, screeningTRLinkMissingTrmDecision.operation) + && Objects.equals(this.description, screeningTRLinkMissingTrmDecision.description) + && Objects.equals(this.isDefault, screeningTRLinkMissingTrmDecision.isDefault) + && Objects.equals(this.validBefore, screeningTRLinkMissingTrmDecision.validBefore) + && Objects.equals(this.validAfter, screeningTRLinkMissingTrmDecision.validAfter) + && Objects.equals(this.action, screeningTRLinkMissingTrmDecision.action) + && Objects.equals(this.source, screeningTRLinkMissingTrmDecision.source) + && Objects.equals(this.timestamp, screeningTRLinkMissingTrmDecision.timestamp) + && Objects.equals(this.reason, screeningTRLinkMissingTrmDecision.reason); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + validBefore, + validAfter, + action, + source, + timestamp, + reason); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTRLinkMissingTrmDecision {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" validBefore: ").append(toIndentedString(validBefore)).append("\n"); + sb.append(" validAfter: ").append(toIndentedString(validAfter)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append(" source: ").append(toIndentedString(source)).append("\n"); + sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" reason: ").append(toIndentedString(reason)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `validBefore` to the URL query string + if (getValidBefore() != null) { + joiner.add( + String.format( + "%svalidBefore%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidBefore())))); + } + + // add `validAfter` to the URL query string + if (getValidAfter() != null) { + joiner.add( + String.format( + "%svalidAfter%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidAfter())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + // add `source` to the URL query string + if (getSource() != null) { + joiner.add( + String.format( + "%ssource%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSource())))); + } + + // add `timestamp` to the URL query string + if (getTimestamp() != null) { + joiner.add( + String.format( + "%stimestamp%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + } + + // add `reason` to the URL query string + if (getReason() != null) { + joiner.add( + String.format( + "%sreason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getReason())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRule.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRule.java new file mode 100644 index 00000000..d723cc46 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRule.java @@ -0,0 +1,924 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink missing TRM rule definition */ +@JsonPropertyOrder({ + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_CUSTOMER_ID, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_DIRECTION, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_TYPE, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_ADDRESS, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_DEST_TYPE, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_DEST_SUB_TYPE, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_DEST_ADDRESS, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_ID, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_DEST_ID, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_ASSET, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_BASE_ASSET, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_AMOUNT, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_NETWORK_PROTOCOL, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_OPERATION, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_DESCRIPTION, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_IS_DEFAULT, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_VALID_BEFORE, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_VALID_AFTER, + ScreeningTRLinkMissingTrmRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTRLinkMissingTrmRule { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private ScreeningTRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_VALID_BEFORE = "validBefore"; + @jakarta.annotation.Nullable private BigDecimal validBefore; + + public static final String JSON_PROPERTY_VALID_AFTER = "validAfter"; + @jakarta.annotation.Nullable private BigDecimal validAfter; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkMissingTrmActionEnum action; + + public ScreeningTRLinkMissingTrmRule() {} + + @JsonCreator + public ScreeningTRLinkMissingTrmRule( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TRLinkMissingTrmActionEnum action) { + this.action = action; + } + + public ScreeningTRLinkMissingTrmRule customerId( + @jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public ScreeningTRLinkMissingTrmRule direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public ScreeningTRLinkMissingTrmRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public ScreeningTRLinkMissingTrmRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public ScreeningTRLinkMissingTrmRule sourceAddress( + @jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public ScreeningTRLinkMissingTrmRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public ScreeningTRLinkMissingTrmRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public ScreeningTRLinkMissingTrmRule destAddress( + @jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ScreeningTRLinkMissingTrmRule sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public ScreeningTRLinkMissingTrmRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public ScreeningTRLinkMissingTrmRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public ScreeningTRLinkMissingTrmRule baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public ScreeningTRLinkMissingTrmRule amount( + @jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + } + + public ScreeningTRLinkMissingTrmRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public ScreeningTRLinkMissingTrmRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public ScreeningTRLinkMissingTrmRule description( + @jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public ScreeningTRLinkMissingTrmRule isDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public ScreeningTRLinkMissingTrmRule validBefore( + @jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + return this; + } + + /** + * Unix timestamp when rule expires + * + * @return validBefore + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidBefore() { + return validBefore; + } + + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidBefore(@jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + } + + public ScreeningTRLinkMissingTrmRule validAfter( + @jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + return this; + } + + /** + * Unix timestamp when rule becomes valid + * + * @return validAfter + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidAfter() { + return validAfter; + } + + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + } + + public ScreeningTRLinkMissingTrmRule action( + @jakarta.annotation.Nonnull TRLinkMissingTrmActionEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkMissingTrmActionEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkMissingTrmActionEnum action) { + this.action = action; + } + + /** Return true if this ScreeningTRLinkMissingTrmRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTRLinkMissingTrmRule screeningTRLinkMissingTrmRule = + (ScreeningTRLinkMissingTrmRule) o; + return Objects.equals(this.customerId, screeningTRLinkMissingTrmRule.customerId) + && Objects.equals(this.direction, screeningTRLinkMissingTrmRule.direction) + && Objects.equals(this.sourceType, screeningTRLinkMissingTrmRule.sourceType) + && Objects.equals(this.sourceSubType, screeningTRLinkMissingTrmRule.sourceSubType) + && Objects.equals(this.sourceAddress, screeningTRLinkMissingTrmRule.sourceAddress) + && Objects.equals(this.destType, screeningTRLinkMissingTrmRule.destType) + && Objects.equals(this.destSubType, screeningTRLinkMissingTrmRule.destSubType) + && Objects.equals(this.destAddress, screeningTRLinkMissingTrmRule.destAddress) + && Objects.equals(this.sourceId, screeningTRLinkMissingTrmRule.sourceId) + && Objects.equals(this.destId, screeningTRLinkMissingTrmRule.destId) + && Objects.equals(this.asset, screeningTRLinkMissingTrmRule.asset) + && Objects.equals(this.baseAsset, screeningTRLinkMissingTrmRule.baseAsset) + && Objects.equals(this.amount, screeningTRLinkMissingTrmRule.amount) + && Objects.equals( + this.networkProtocol, screeningTRLinkMissingTrmRule.networkProtocol) + && Objects.equals(this.operation, screeningTRLinkMissingTrmRule.operation) + && Objects.equals(this.description, screeningTRLinkMissingTrmRule.description) + && Objects.equals(this.isDefault, screeningTRLinkMissingTrmRule.isDefault) + && Objects.equals(this.validBefore, screeningTRLinkMissingTrmRule.validBefore) + && Objects.equals(this.validAfter, screeningTRLinkMissingTrmRule.validAfter) + && Objects.equals(this.action, screeningTRLinkMissingTrmRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + validBefore, + validAfter, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTRLinkMissingTrmRule {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" validBefore: ").append(toIndentedString(validBefore)).append("\n"); + sb.append(" validAfter: ").append(toIndentedString(validAfter)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `validBefore` to the URL query string + if (getValidBefore() != null) { + joiner.add( + String.format( + "%svalidBefore%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidBefore())))); + } + + // add `validAfter` to the URL query string + if (getValidAfter() != null) { + joiner.add( + String.format( + "%svalidAfter%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidAfter())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRule.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRule.java new file mode 100644 index 00000000..9e0d6aeb --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRule.java @@ -0,0 +1,1010 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink post-screening rule definition */ +@JsonPropertyOrder({ + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_CUSTOMER_ID, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_DIRECTION, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_TYPE, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_ADDRESS, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_DEST_TYPE, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_DEST_SUB_TYPE, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_DEST_ADDRESS, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_ID, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_DEST_ID, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_ASSET, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_BASE_ASSET, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_AMOUNT, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_NETWORK_PROTOCOL, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_OPERATION, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_DESCRIPTION, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_IS_DEFAULT, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_PROVIDER_IDENT, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_TRM_STATUS, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_VALID_BEFORE, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_VALID_AFTER, + ScreeningTRLinkPostScreeningRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTRLinkPostScreeningRule { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private ScreeningTRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_PROVIDER_IDENT = "providerIdent"; + @jakarta.annotation.Nullable private String providerIdent; + + public static final String JSON_PROPERTY_TRM_STATUS = "trmStatus"; + @jakarta.annotation.Nullable private TRLinkTrmScreeningStatusEnum trmStatus; + + public static final String JSON_PROPERTY_VALID_BEFORE = "validBefore"; + @jakarta.annotation.Nullable private BigDecimal validBefore; + + public static final String JSON_PROPERTY_VALID_AFTER = "validAfter"; + @jakarta.annotation.Nullable private BigDecimal validAfter; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkVerdictEnum action; + + public ScreeningTRLinkPostScreeningRule() {} + + @JsonCreator + public ScreeningTRLinkPostScreeningRule( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) TRLinkVerdictEnum action) { + this.action = action; + } + + public ScreeningTRLinkPostScreeningRule customerId( + @jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public ScreeningTRLinkPostScreeningRule direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public ScreeningTRLinkPostScreeningRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public ScreeningTRLinkPostScreeningRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public ScreeningTRLinkPostScreeningRule sourceAddress( + @jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public ScreeningTRLinkPostScreeningRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public ScreeningTRLinkPostScreeningRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public ScreeningTRLinkPostScreeningRule destAddress( + @jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ScreeningTRLinkPostScreeningRule sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public ScreeningTRLinkPostScreeningRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public ScreeningTRLinkPostScreeningRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public ScreeningTRLinkPostScreeningRule baseAsset( + @jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public ScreeningTRLinkPostScreeningRule amount( + @jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + } + + public ScreeningTRLinkPostScreeningRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public ScreeningTRLinkPostScreeningRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public ScreeningTRLinkPostScreeningRule description( + @jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public ScreeningTRLinkPostScreeningRule isDefault( + @jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public ScreeningTRLinkPostScreeningRule providerIdent( + @jakarta.annotation.Nullable String providerIdent) { + this.providerIdent = providerIdent; + return this; + } + + /** + * Provider identifier + * + * @return providerIdent + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_IDENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getProviderIdent() { + return providerIdent; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_IDENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderIdent(@jakarta.annotation.Nullable String providerIdent) { + this.providerIdent = providerIdent; + } + + public ScreeningTRLinkPostScreeningRule trmStatus( + @jakarta.annotation.Nullable TRLinkTrmScreeningStatusEnum trmStatus) { + this.trmStatus = trmStatus; + return this; + } + + /** + * Get trmStatus + * + * @return trmStatus + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRM_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkTrmScreeningStatusEnum getTrmStatus() { + return trmStatus; + } + + @JsonProperty(JSON_PROPERTY_TRM_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTrmStatus(@jakarta.annotation.Nullable TRLinkTrmScreeningStatusEnum trmStatus) { + this.trmStatus = trmStatus; + } + + public ScreeningTRLinkPostScreeningRule validBefore( + @jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + return this; + } + + /** + * Unix timestamp when rule expires + * + * @return validBefore + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidBefore() { + return validBefore; + } + + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidBefore(@jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + } + + public ScreeningTRLinkPostScreeningRule validAfter( + @jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + return this; + } + + /** + * Unix timestamp when rule becomes valid + * + * @return validAfter + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidAfter() { + return validAfter; + } + + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + } + + public ScreeningTRLinkPostScreeningRule action( + @jakarta.annotation.Nonnull TRLinkVerdictEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkVerdictEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkVerdictEnum action) { + this.action = action; + } + + /** Return true if this ScreeningTRLinkPostScreeningRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTRLinkPostScreeningRule screeningTRLinkPostScreeningRule = + (ScreeningTRLinkPostScreeningRule) o; + return Objects.equals(this.customerId, screeningTRLinkPostScreeningRule.customerId) + && Objects.equals(this.direction, screeningTRLinkPostScreeningRule.direction) + && Objects.equals(this.sourceType, screeningTRLinkPostScreeningRule.sourceType) + && Objects.equals( + this.sourceSubType, screeningTRLinkPostScreeningRule.sourceSubType) + && Objects.equals( + this.sourceAddress, screeningTRLinkPostScreeningRule.sourceAddress) + && Objects.equals(this.destType, screeningTRLinkPostScreeningRule.destType) + && Objects.equals(this.destSubType, screeningTRLinkPostScreeningRule.destSubType) + && Objects.equals(this.destAddress, screeningTRLinkPostScreeningRule.destAddress) + && Objects.equals(this.sourceId, screeningTRLinkPostScreeningRule.sourceId) + && Objects.equals(this.destId, screeningTRLinkPostScreeningRule.destId) + && Objects.equals(this.asset, screeningTRLinkPostScreeningRule.asset) + && Objects.equals(this.baseAsset, screeningTRLinkPostScreeningRule.baseAsset) + && Objects.equals(this.amount, screeningTRLinkPostScreeningRule.amount) + && Objects.equals( + this.networkProtocol, screeningTRLinkPostScreeningRule.networkProtocol) + && Objects.equals(this.operation, screeningTRLinkPostScreeningRule.operation) + && Objects.equals(this.description, screeningTRLinkPostScreeningRule.description) + && Objects.equals(this.isDefault, screeningTRLinkPostScreeningRule.isDefault) + && Objects.equals( + this.providerIdent, screeningTRLinkPostScreeningRule.providerIdent) + && Objects.equals(this.trmStatus, screeningTRLinkPostScreeningRule.trmStatus) + && Objects.equals(this.validBefore, screeningTRLinkPostScreeningRule.validBefore) + && Objects.equals(this.validAfter, screeningTRLinkPostScreeningRule.validAfter) + && Objects.equals(this.action, screeningTRLinkPostScreeningRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + providerIdent, + trmStatus, + validBefore, + validAfter, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTRLinkPostScreeningRule {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" providerIdent: ").append(toIndentedString(providerIdent)).append("\n"); + sb.append(" trmStatus: ").append(toIndentedString(trmStatus)).append("\n"); + sb.append(" validBefore: ").append(toIndentedString(validBefore)).append("\n"); + sb.append(" validAfter: ").append(toIndentedString(validAfter)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `providerIdent` to the URL query string + if (getProviderIdent() != null) { + joiner.add( + String.format( + "%sproviderIdent%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProviderIdent())))); + } + + // add `trmStatus` to the URL query string + if (getTrmStatus() != null) { + joiner.add( + String.format( + "%strmStatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTrmStatus())))); + } + + // add `validBefore` to the URL query string + if (getValidBefore() != null) { + joiner.add( + String.format( + "%svalidBefore%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidBefore())))); + } + + // add `validAfter` to the URL query string + if (getValidAfter() != null) { + joiner.add( + String.format( + "%svalidAfter%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidAfter())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRule.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRule.java new file mode 100644 index 00000000..8db0eabb --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRule.java @@ -0,0 +1,843 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink pre-screening rule definition */ +@JsonPropertyOrder({ + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_CUSTOMER_ID, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_DIRECTION, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_SOURCE_TYPE, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_SOURCE_ADDRESS, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_DEST_TYPE, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_DEST_SUB_TYPE, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_DEST_ADDRESS, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_SOURCE_ID, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_DEST_ID, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_ASSET, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_BASE_ASSET, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_AMOUNT, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_NETWORK_PROTOCOL, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_OPERATION, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_DESCRIPTION, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_IS_DEFAULT, + ScreeningTRLinkPrescreeningRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTRLinkPrescreeningRule { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private ScreeningTRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkPreScreeningActionEnum action; + + public ScreeningTRLinkPrescreeningRule() {} + + @JsonCreator + public ScreeningTRLinkPrescreeningRule( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TRLinkPreScreeningActionEnum action) { + this.action = action; + } + + public ScreeningTRLinkPrescreeningRule customerId( + @jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public ScreeningTRLinkPrescreeningRule direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public ScreeningTRLinkPrescreeningRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public ScreeningTRLinkPrescreeningRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public ScreeningTRLinkPrescreeningRule sourceAddress( + @jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public ScreeningTRLinkPrescreeningRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public ScreeningTRLinkPrescreeningRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public ScreeningTRLinkPrescreeningRule destAddress( + @jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ScreeningTRLinkPrescreeningRule sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public ScreeningTRLinkPrescreeningRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public ScreeningTRLinkPrescreeningRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public ScreeningTRLinkPrescreeningRule baseAsset( + @jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public ScreeningTRLinkPrescreeningRule amount( + @jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + } + + public ScreeningTRLinkPrescreeningRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public ScreeningTRLinkPrescreeningRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public ScreeningTRLinkPrescreeningRule description( + @jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public ScreeningTRLinkPrescreeningRule isDefault( + @jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public ScreeningTRLinkPrescreeningRule action( + @jakarta.annotation.Nonnull TRLinkPreScreeningActionEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkPreScreeningActionEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkPreScreeningActionEnum action) { + this.action = action; + } + + /** Return true if this ScreeningTRLinkPrescreeningRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTRLinkPrescreeningRule screeningTRLinkPrescreeningRule = + (ScreeningTRLinkPrescreeningRule) o; + return Objects.equals(this.customerId, screeningTRLinkPrescreeningRule.customerId) + && Objects.equals(this.direction, screeningTRLinkPrescreeningRule.direction) + && Objects.equals(this.sourceType, screeningTRLinkPrescreeningRule.sourceType) + && Objects.equals(this.sourceSubType, screeningTRLinkPrescreeningRule.sourceSubType) + && Objects.equals(this.sourceAddress, screeningTRLinkPrescreeningRule.sourceAddress) + && Objects.equals(this.destType, screeningTRLinkPrescreeningRule.destType) + && Objects.equals(this.destSubType, screeningTRLinkPrescreeningRule.destSubType) + && Objects.equals(this.destAddress, screeningTRLinkPrescreeningRule.destAddress) + && Objects.equals(this.sourceId, screeningTRLinkPrescreeningRule.sourceId) + && Objects.equals(this.destId, screeningTRLinkPrescreeningRule.destId) + && Objects.equals(this.asset, screeningTRLinkPrescreeningRule.asset) + && Objects.equals(this.baseAsset, screeningTRLinkPrescreeningRule.baseAsset) + && Objects.equals(this.amount, screeningTRLinkPrescreeningRule.amount) + && Objects.equals( + this.networkProtocol, screeningTRLinkPrescreeningRule.networkProtocol) + && Objects.equals(this.operation, screeningTRLinkPrescreeningRule.operation) + && Objects.equals(this.description, screeningTRLinkPrescreeningRule.description) + && Objects.equals(this.isDefault, screeningTRLinkPrescreeningRule.isDefault) + && Objects.equals(this.action, screeningTRLinkPrescreeningRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTRLinkPrescreeningRule {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBase.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBase.java new file mode 100644 index 00000000..c5d99808 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBase.java @@ -0,0 +1,787 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Base interface for TRLink policy rules */ +@JsonPropertyOrder({ + ScreeningTRLinkRuleBase.JSON_PROPERTY_CUSTOMER_ID, + ScreeningTRLinkRuleBase.JSON_PROPERTY_DIRECTION, + ScreeningTRLinkRuleBase.JSON_PROPERTY_SOURCE_TYPE, + ScreeningTRLinkRuleBase.JSON_PROPERTY_SOURCE_SUB_TYPE, + ScreeningTRLinkRuleBase.JSON_PROPERTY_SOURCE_ADDRESS, + ScreeningTRLinkRuleBase.JSON_PROPERTY_DEST_TYPE, + ScreeningTRLinkRuleBase.JSON_PROPERTY_DEST_SUB_TYPE, + ScreeningTRLinkRuleBase.JSON_PROPERTY_DEST_ADDRESS, + ScreeningTRLinkRuleBase.JSON_PROPERTY_SOURCE_ID, + ScreeningTRLinkRuleBase.JSON_PROPERTY_DEST_ID, + ScreeningTRLinkRuleBase.JSON_PROPERTY_ASSET, + ScreeningTRLinkRuleBase.JSON_PROPERTY_BASE_ASSET, + ScreeningTRLinkRuleBase.JSON_PROPERTY_AMOUNT, + ScreeningTRLinkRuleBase.JSON_PROPERTY_NETWORK_PROTOCOL, + ScreeningTRLinkRuleBase.JSON_PROPERTY_OPERATION, + ScreeningTRLinkRuleBase.JSON_PROPERTY_DESCRIPTION, + ScreeningTRLinkRuleBase.JSON_PROPERTY_IS_DEFAULT +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTRLinkRuleBase { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private ScreeningTRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public ScreeningTRLinkRuleBase() {} + + public ScreeningTRLinkRuleBase customerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public ScreeningTRLinkRuleBase direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public ScreeningTRLinkRuleBase sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public ScreeningTRLinkRuleBase sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public ScreeningTRLinkRuleBase sourceAddress( + @jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public ScreeningTRLinkRuleBase destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public ScreeningTRLinkRuleBase destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public ScreeningTRLinkRuleBase destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ScreeningTRLinkRuleBase sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public ScreeningTRLinkRuleBase destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public ScreeningTRLinkRuleBase asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public ScreeningTRLinkRuleBase baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public ScreeningTRLinkRuleBase amount( + @jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable ScreeningTRLinkAmount amount) { + this.amount = amount; + } + + public ScreeningTRLinkRuleBase networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public ScreeningTRLinkRuleBase operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public ScreeningTRLinkRuleBase description(@jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public ScreeningTRLinkRuleBase isDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + /** Return true if this ScreeningTRLinkRuleBase object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTRLinkRuleBase screeningTRLinkRuleBase = (ScreeningTRLinkRuleBase) o; + return Objects.equals(this.customerId, screeningTRLinkRuleBase.customerId) + && Objects.equals(this.direction, screeningTRLinkRuleBase.direction) + && Objects.equals(this.sourceType, screeningTRLinkRuleBase.sourceType) + && Objects.equals(this.sourceSubType, screeningTRLinkRuleBase.sourceSubType) + && Objects.equals(this.sourceAddress, screeningTRLinkRuleBase.sourceAddress) + && Objects.equals(this.destType, screeningTRLinkRuleBase.destType) + && Objects.equals(this.destSubType, screeningTRLinkRuleBase.destSubType) + && Objects.equals(this.destAddress, screeningTRLinkRuleBase.destAddress) + && Objects.equals(this.sourceId, screeningTRLinkRuleBase.sourceId) + && Objects.equals(this.destId, screeningTRLinkRuleBase.destId) + && Objects.equals(this.asset, screeningTRLinkRuleBase.asset) + && Objects.equals(this.baseAsset, screeningTRLinkRuleBase.baseAsset) + && Objects.equals(this.amount, screeningTRLinkRuleBase.amount) + && Objects.equals(this.networkProtocol, screeningTRLinkRuleBase.networkProtocol) + && Objects.equals(this.operation, screeningTRLinkRuleBase.operation) + && Objects.equals(this.description, screeningTRLinkRuleBase.description) + && Objects.equals(this.isDefault, screeningTRLinkRuleBase.isDefault); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTRLinkRuleBase {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRule.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRule.java new file mode 100644 index 00000000..48bc8dfa --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRule.java @@ -0,0 +1,342 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** The travel rule configuration that was matched */ +@JsonPropertyOrder({ + ScreeningTravelRuleMatchedRule.JSON_PROPERTY_DIRECTION, + ScreeningTravelRuleMatchedRule.JSON_PROPERTY_STATUS, + ScreeningTravelRuleMatchedRule.JSON_PROPERTY_AMOUNT_U_S_D, + ScreeningTravelRuleMatchedRule.JSON_PROPERTY_AMOUNT, + ScreeningTravelRuleMatchedRule.JSON_PROPERTY_ASSET, + ScreeningTravelRuleMatchedRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTravelRuleMatchedRule { + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nullable private TravelRuleStatusEnum status; + + public static final String JSON_PROPERTY_AMOUNT_U_S_D = "amountUSD"; + @jakarta.annotation.Nullable private BigDecimal amountUSD; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private BigDecimal amount; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private TravelRuleVerdictEnum action; + + public ScreeningTravelRuleMatchedRule() {} + + public ScreeningTravelRuleMatchedRule direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public ScreeningTravelRuleMatchedRule status( + @jakarta.annotation.Nullable TravelRuleStatusEnum status) { + this.status = status; + return this; + } + + /** + * Get status + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleStatusEnum getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setStatus(@jakarta.annotation.Nullable TravelRuleStatusEnum status) { + this.status = status; + } + + public ScreeningTravelRuleMatchedRule amountUSD( + @jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + return this; + } + + /** + * Amount in USD + * + * @return amountUSD + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmountUSD() { + return amountUSD; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmountUSD(@jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + } + + public ScreeningTravelRuleMatchedRule amount(@jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + return this; + } + + /** + * Amount in base currency + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + } + + public ScreeningTravelRuleMatchedRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset identifier + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public ScreeningTravelRuleMatchedRule action( + @jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleVerdictEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + } + + /** Return true if this ScreeningTravelRuleMatchedRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTravelRuleMatchedRule screeningTravelRuleMatchedRule = + (ScreeningTravelRuleMatchedRule) o; + return Objects.equals(this.direction, screeningTravelRuleMatchedRule.direction) + && Objects.equals(this.status, screeningTravelRuleMatchedRule.status) + && Objects.equals(this.amountUSD, screeningTravelRuleMatchedRule.amountUSD) + && Objects.equals(this.amount, screeningTravelRuleMatchedRule.amount) + && Objects.equals(this.asset, screeningTravelRuleMatchedRule.asset) + && Objects.equals(this.action, screeningTravelRuleMatchedRule.action); + } + + @Override + public int hashCode() { + return Objects.hash(direction, status, amountUSD, amount, asset, action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTravelRuleMatchedRule {\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" amountUSD: ").append(toIndentedString(amountUSD)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `amountUSD` to the URL query string + if (getAmountUSD() != null) { + joiner.add( + String.format( + "%samountUSD%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmountUSD())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add( + String.format( + "%samount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmount())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRule.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRule.java new file mode 100644 index 00000000..083d9b0c --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRule.java @@ -0,0 +1,813 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * Matched prescreening rule details. Prescreening rules are evaluated before the main screening to + * determine if screening is necessary or should be bypassed. + */ +@JsonPropertyOrder({ + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_BYPASS_REASON, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_SOURCE_TYPE, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_DEST_TYPE, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_DEST_SUB_TYPE, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_TRANSFER_PEER_TYPE, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_DEST_ADDRESS, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_SOURCE_ID, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_DEST_ID, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_ASSET, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_BASE_ASSET, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_AMOUNT, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_AMOUNT_U_S_D, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_NETWORK_PROTOCOL, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_OPERATION, + ScreeningTravelRulePrescreeningRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTravelRulePrescreeningRule { + public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; + @jakarta.annotation.Nullable private String bypassReason; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_TRANSFER_PEER_TYPE = "transferPeerType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum transferPeerType; + + public static final String JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE = "transferPeerSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum transferPeerSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private BigDecimal amount; + + public static final String JSON_PROPERTY_AMOUNT_U_S_D = "amountUSD"; + @jakarta.annotation.Nullable private BigDecimal amountUSD; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private TravelRuleActionEnum action; + + public ScreeningTravelRulePrescreeningRule() {} + + public ScreeningTravelRulePrescreeningRule bypassReason( + @jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + return this; + } + + /** + * Reason for bypass if prescreening rule triggered a bypass + * + * @return bypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBypassReason() { + return bypassReason; + } + + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + } + + public ScreeningTravelRulePrescreeningRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public ScreeningTravelRulePrescreeningRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public ScreeningTravelRulePrescreeningRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public ScreeningTravelRulePrescreeningRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public ScreeningTravelRulePrescreeningRule transferPeerType( + @jakarta.annotation.Nullable TransferPeerTypeEnum transferPeerType) { + this.transferPeerType = transferPeerType; + return this; + } + + /** + * Get transferPeerType + * + * @return transferPeerType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getTransferPeerType() { + return transferPeerType; + } + + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTransferPeerType( + @jakarta.annotation.Nullable TransferPeerTypeEnum transferPeerType) { + this.transferPeerType = transferPeerType; + } + + public ScreeningTravelRulePrescreeningRule transferPeerSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum transferPeerSubType) { + this.transferPeerSubType = transferPeerSubType; + return this; + } + + /** + * Get transferPeerSubType + * + * @return transferPeerSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getTransferPeerSubType() { + return transferPeerSubType; + } + + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTransferPeerSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum transferPeerSubType) { + this.transferPeerSubType = transferPeerSubType; + } + + public ScreeningTravelRulePrescreeningRule destAddress( + @jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public ScreeningTravelRulePrescreeningRule sourceId( + @jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public ScreeningTravelRulePrescreeningRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public ScreeningTravelRulePrescreeningRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset identifier + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public ScreeningTravelRulePrescreeningRule baseAsset( + @jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public ScreeningTravelRulePrescreeningRule amount( + @jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + return this; + } + + /** + * Amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + } + + public ScreeningTravelRulePrescreeningRule amountUSD( + @jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + return this; + } + + /** + * Amount in USD + * + * @return amountUSD + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmountUSD() { + return amountUSD; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmountUSD(@jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + } + + public ScreeningTravelRulePrescreeningRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public ScreeningTravelRulePrescreeningRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public ScreeningTravelRulePrescreeningRule action( + @jakarta.annotation.Nullable TravelRuleActionEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleActionEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable TravelRuleActionEnum action) { + this.action = action; + } + + /** Return true if this ScreeningTravelRulePrescreeningRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTravelRulePrescreeningRule screeningTravelRulePrescreeningRule = + (ScreeningTravelRulePrescreeningRule) o; + return Objects.equals(this.bypassReason, screeningTravelRulePrescreeningRule.bypassReason) + && Objects.equals(this.sourceType, screeningTravelRulePrescreeningRule.sourceType) + && Objects.equals( + this.sourceSubType, screeningTravelRulePrescreeningRule.sourceSubType) + && Objects.equals(this.destType, screeningTravelRulePrescreeningRule.destType) + && Objects.equals(this.destSubType, screeningTravelRulePrescreeningRule.destSubType) + && Objects.equals( + this.transferPeerType, screeningTravelRulePrescreeningRule.transferPeerType) + && Objects.equals( + this.transferPeerSubType, + screeningTravelRulePrescreeningRule.transferPeerSubType) + && Objects.equals(this.destAddress, screeningTravelRulePrescreeningRule.destAddress) + && Objects.equals(this.sourceId, screeningTravelRulePrescreeningRule.sourceId) + && Objects.equals(this.destId, screeningTravelRulePrescreeningRule.destId) + && Objects.equals(this.asset, screeningTravelRulePrescreeningRule.asset) + && Objects.equals(this.baseAsset, screeningTravelRulePrescreeningRule.baseAsset) + && Objects.equals(this.amount, screeningTravelRulePrescreeningRule.amount) + && Objects.equals(this.amountUSD, screeningTravelRulePrescreeningRule.amountUSD) + && Objects.equals( + this.networkProtocol, screeningTravelRulePrescreeningRule.networkProtocol) + && Objects.equals(this.operation, screeningTravelRulePrescreeningRule.operation) + && Objects.equals(this.action, screeningTravelRulePrescreeningRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + bypassReason, + sourceType, + sourceSubType, + destType, + destSubType, + transferPeerType, + transferPeerSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + amountUSD, + networkProtocol, + operation, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTravelRulePrescreeningRule {\n"); + sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" transferPeerType: ").append(toIndentedString(transferPeerType)).append("\n"); + sb.append(" transferPeerSubType: ") + .append(toIndentedString(transferPeerSubType)) + .append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" amountUSD: ").append(toIndentedString(amountUSD)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `bypassReason` to the URL query string + if (getBypassReason() != null) { + joiner.add( + String.format( + "%sbypassReason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `transferPeerType` to the URL query string + if (getTransferPeerType() != null) { + joiner.add( + String.format( + "%stransferPeerType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTransferPeerType())))); + } + + // add `transferPeerSubType` to the URL query string + if (getTransferPeerSubType() != null) { + joiner.add( + String.format( + "%stransferPeerSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTransferPeerSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add( + String.format( + "%samount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmount())))); + } + + // add `amountUSD` to the URL query string + if (getAmountUSD() != null) { + joiner.add( + String.format( + "%samountUSD%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmountUSD())))); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleResult.java b/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleResult.java new file mode 100644 index 00000000..9062e135 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningTravelRuleResult.java @@ -0,0 +1,325 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * Detailed Travel Rule screening result containing provider-specific data. Contains Travel Rule + * specific information like verified status, rule type, and actions. + */ +@JsonPropertyOrder({ + ScreeningTravelRuleResult.JSON_PROPERTY_DIRECTION, + ScreeningTravelRuleResult.JSON_PROPERTY_IS_VERIFIED, + ScreeningTravelRuleResult.JSON_PROPERTY_ACTION, + ScreeningTravelRuleResult.JSON_PROPERTY_PROVIDER_RESPONSE, + ScreeningTravelRuleResult.JSON_PROPERTY_MATCHED_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class ScreeningTravelRuleResult { + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_IS_VERIFIED = "isVerified"; + @jakarta.annotation.Nullable private Boolean isVerified; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private TravelRuleVerdictEnum action; + + public static final String JSON_PROPERTY_PROVIDER_RESPONSE = "providerResponse"; + @jakarta.annotation.Nullable private Map providerResponse; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private ScreeningTravelRuleMatchedRule matchedRule; + + public ScreeningTravelRuleResult() {} + + public ScreeningTravelRuleResult direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public ScreeningTravelRuleResult isVerified(@jakarta.annotation.Nullable Boolean isVerified) { + this.isVerified = isVerified; + return this; + } + + /** + * Whether the travel rule information was verified + * + * @return isVerified + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_VERIFIED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsVerified() { + return isVerified; + } + + @JsonProperty(JSON_PROPERTY_IS_VERIFIED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsVerified(@jakarta.annotation.Nullable Boolean isVerified) { + this.isVerified = isVerified; + } + + public ScreeningTravelRuleResult action( + @jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleVerdictEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + } + + public ScreeningTravelRuleResult providerResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + return this; + } + + public ScreeningTravelRuleResult putProviderResponseItem( + String key, Object providerResponseItem) { + if (this.providerResponse == null) { + this.providerResponse = new HashMap<>(); + } + this.providerResponse.put(key, providerResponseItem); + return this; + } + + /** + * Complete response from the travel rule provider. This is a dynamic object that varies + * significantly between different travel rule providers (NOTABENE etc.). Each provider has + * their own proprietary response format and schema. Examples of provider-specific structures: - + * NOTABENE: Contains VASP information, PII data, protocol-specific fields The structure is + * provider-dependent and cannot be standardized as each vendor implements their own proprietary + * data models and response formats. + * + * @return providerResponse + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public Map getProviderResponse() { + return providerResponse; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + } + + public ScreeningTravelRuleResult matchedRule( + @jakarta.annotation.Nullable ScreeningTravelRuleMatchedRule matchedRule) { + this.matchedRule = matchedRule; + return this; + } + + /** + * Get matchedRule + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTravelRuleMatchedRule getMatchedRule() { + return matchedRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule( + @jakarta.annotation.Nullable ScreeningTravelRuleMatchedRule matchedRule) { + this.matchedRule = matchedRule; + } + + /** Return true if this ScreeningTravelRuleResult object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ScreeningTravelRuleResult screeningTravelRuleResult = (ScreeningTravelRuleResult) o; + return Objects.equals(this.direction, screeningTravelRuleResult.direction) + && Objects.equals(this.isVerified, screeningTravelRuleResult.isVerified) + && Objects.equals(this.action, screeningTravelRuleResult.action) + && Objects.equals(this.providerResponse, screeningTravelRuleResult.providerResponse) + && Objects.equals(this.matchedRule, screeningTravelRuleResult.matchedRule); + } + + @Override + public int hashCode() { + return Objects.hash(direction, isVerified, action, providerResponse, matchedRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class ScreeningTravelRuleResult {\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" isVerified: ").append(toIndentedString(isVerified)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append(" providerResponse: ").append(toIndentedString(providerResponse)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `isVerified` to the URL query string + if (getIsVerified() != null) { + joiner.add( + String.format( + "%sisVerified%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsVerified())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + // add `providerResponse` to the URL query string + if (getProviderResponse() != null) { + for (String _key : getProviderResponse().keySet()) { + joiner.add( + String.format( + "%sproviderResponse%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, _key, containerSuffix), + getProviderResponse().get(_key), + ApiClient.urlEncode( + ApiClient.valueToString(getProviderResponse().get(_key))))); + } + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add(getMatchedRule().toUrlQueryString(prefix + "matchedRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/ScreeningVerdictEnum.java b/src/main/java/com/fireblocks/sdk/model/ScreeningVerdictEnum.java new file mode 100644 index 00000000..6631dc7a --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/ScreeningVerdictEnum.java @@ -0,0 +1,80 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** + * The final verdict of the screening (unified for AML, Travel Rule, and TRLink). Different + * providers may return different verdict values: - AML: PASS, FAIL, ALERT - Travel Rule: PASS, + * FAIL, TRAVEL_RULE_REQUIRED - TRLink: PASS, REJECT, WARN + */ +public enum ScreeningVerdictEnum { + PASS("PASS"), + + FAIL("FAIL"), + + ALERT("ALERT"), + + REJECT("REJECT"), + + WARN("WARN"), + + TRAVEL_RULE_REQUIRED("TRAVEL_RULE_REQUIRED"), + + ACCEPT("ACCEPT"), + + REVIEW("REVIEW"); + + private String value; + + ScreeningVerdictEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static ScreeningVerdictEnum fromValue(String value) { + for (ScreeningVerdictEnum b : ScreeningVerdictEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/SourceConfig.java b/src/main/java/com/fireblocks/sdk/model/SourceConfig.java new file mode 100644 index 00000000..1966b7ff --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/SourceConfig.java @@ -0,0 +1,457 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.StringJoiner; + +/** Source account configuration for policy rules */ +@JsonPropertyOrder({ + SourceConfig.JSON_PROPERTY_TYPE, + SourceConfig.JSON_PROPERTY_SUB_TYPE, + SourceConfig.JSON_PROPERTY_IDS, + SourceConfig.JSON_PROPERTY_TAGS, + SourceConfig.JSON_PROPERTY_OPERATOR, + SourceConfig.JSON_PROPERTY_MATCH_FROM +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class SourceConfig { + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nullable private List type; + + public static final String JSON_PROPERTY_SUB_TYPE = "subType"; + @jakarta.annotation.Nullable private List subType; + + public static final String JSON_PROPERTY_IDS = "ids"; + @jakarta.annotation.Nullable private List ids; + + public static final String JSON_PROPERTY_TAGS = "tags"; + @jakarta.annotation.Nullable private List tags; + + public static final String JSON_PROPERTY_OPERATOR = "operator"; + @jakarta.annotation.Nonnull private PolicyOperator operator; + + /** Whether to match from account (relevant only for ORDER policy type) */ + public enum MatchFromEnum { + ACCOUNT(String.valueOf("ACCOUNT")); + + private String value; + + MatchFromEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static MatchFromEnum fromValue(String value) { + for (MatchFromEnum b : MatchFromEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_MATCH_FROM = "matchFrom"; + @jakarta.annotation.Nullable private MatchFromEnum matchFrom; + + public SourceConfig() {} + + @JsonCreator + public SourceConfig( + @JsonProperty(value = JSON_PROPERTY_OPERATOR, required = true) + PolicyOperator operator) { + this.operator = operator; + } + + public SourceConfig type(@jakarta.annotation.Nullable List type) { + this.type = type; + return this; + } + + public SourceConfig addTypeItem(AccountType2 typeItem) { + if (this.type == null) { + this.type = new ArrayList<>(); + } + this.type.add(typeItem); + return this; + } + + /** + * Source account types + * + * @return type + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setType(@jakarta.annotation.Nullable List type) { + this.type = type; + } + + public SourceConfig subType(@jakarta.annotation.Nullable List subType) { + this.subType = subType; + return this; + } + + public SourceConfig addSubTypeItem(AccountIdentifier subTypeItem) { + if (this.subType == null) { + this.subType = new ArrayList<>(); + } + this.subType.add(subTypeItem); + return this; + } + + /** + * Source account subtypes + * + * @return subType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getSubType() { + return subType; + } + + @JsonProperty(JSON_PROPERTY_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSubType(@jakarta.annotation.Nullable List subType) { + this.subType = subType; + } + + public SourceConfig ids(@jakarta.annotation.Nullable List ids) { + this.ids = ids; + return this; + } + + public SourceConfig addIdsItem(AccountIdentifier idsItem) { + if (this.ids == null) { + this.ids = new ArrayList<>(); + } + this.ids.add(idsItem); + return this; + } + + /** + * Source account identifiers + * + * @return ids + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IDS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getIds() { + return ids; + } + + @JsonProperty(JSON_PROPERTY_IDS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIds(@jakarta.annotation.Nullable List ids) { + this.ids = ids; + } + + public SourceConfig tags(@jakarta.annotation.Nullable List tags) { + this.tags = tags; + return this; + } + + public SourceConfig addTagsItem(PolicyTag tagsItem) { + if (this.tags == null) { + this.tags = new ArrayList<>(); + } + this.tags.add(tagsItem); + return this; + } + + /** + * Tags for source matching + * + * @return tags + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TAGS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getTags() { + return tags; + } + + @JsonProperty(JSON_PROPERTY_TAGS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTags(@jakarta.annotation.Nullable List tags) { + this.tags = tags; + } + + public SourceConfig operator(@jakarta.annotation.Nonnull PolicyOperator operator) { + this.operator = operator; + return this; + } + + /** + * Get operator + * + * @return operator + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_OPERATOR) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public PolicyOperator getOperator() { + return operator; + } + + @JsonProperty(JSON_PROPERTY_OPERATOR) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setOperator(@jakarta.annotation.Nonnull PolicyOperator operator) { + this.operator = operator; + } + + public SourceConfig matchFrom(@jakarta.annotation.Nullable MatchFromEnum matchFrom) { + this.matchFrom = matchFrom; + return this; + } + + /** + * Whether to match from account (relevant only for ORDER policy type) + * + * @return matchFrom + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCH_FROM) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public MatchFromEnum getMatchFrom() { + return matchFrom; + } + + @JsonProperty(JSON_PROPERTY_MATCH_FROM) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchFrom(@jakarta.annotation.Nullable MatchFromEnum matchFrom) { + this.matchFrom = matchFrom; + } + + /** Return true if this SourceConfig object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SourceConfig sourceConfig = (SourceConfig) o; + return Objects.equals(this.type, sourceConfig.type) + && Objects.equals(this.subType, sourceConfig.subType) + && Objects.equals(this.ids, sourceConfig.ids) + && Objects.equals(this.tags, sourceConfig.tags) + && Objects.equals(this.operator, sourceConfig.operator) + && Objects.equals(this.matchFrom, sourceConfig.matchFrom); + } + + @Override + public int hashCode() { + return Objects.hash(type, subType, ids, tags, operator, matchFrom); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SourceConfig {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" subType: ").append(toIndentedString(subType)).append("\n"); + sb.append(" ids: ").append(toIndentedString(ids)).append("\n"); + sb.append(" tags: ").append(toIndentedString(tags)).append("\n"); + sb.append(" operator: ").append(toIndentedString(operator)).append("\n"); + sb.append(" matchFrom: ").append(toIndentedString(matchFrom)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + for (int i = 0; i < getType().size(); i++) { + if (getType().get(i) != null) { + joiner.add( + String.format( + "%stype%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getType().get(i))))); + } + } + } + + // add `subType` to the URL query string + if (getSubType() != null) { + for (int i = 0; i < getSubType().size(); i++) { + if (getSubType().get(i) != null) { + joiner.add( + getSubType() + .get(i) + .toUrlQueryString( + String.format( + "%ssubType%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `ids` to the URL query string + if (getIds() != null) { + for (int i = 0; i < getIds().size(); i++) { + if (getIds().get(i) != null) { + joiner.add( + getIds().get(i) + .toUrlQueryString( + String.format( + "%sids%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `tags` to the URL query string + if (getTags() != null) { + for (int i = 0; i < getTags().size(); i++) { + if (getTags().get(i) != null) { + joiner.add( + getTags() + .get(i) + .toUrlQueryString( + String.format( + "%stags%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `operator` to the URL query string + if (getOperator() != null) { + joiner.add( + String.format( + "%soperator%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperator())))); + } + + // add `matchFrom` to the URL query string + if (getMatchFrom() != null) { + joiner.add( + String.format( + "%smatchFrom%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getMatchFrom())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/SpeiAddress.java b/src/main/java/com/fireblocks/sdk/model/SpeiAddress.java new file mode 100644 index 00000000..6187a85a --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/SpeiAddress.java @@ -0,0 +1,228 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** SpeiAddress */ +@JsonPropertyOrder({ + SpeiAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + SpeiAddress.JSON_PROPERTY_BANK_NAME, + SpeiAddress.JSON_PROPERTY_BANK_ACCOUNT_NUMBER +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class SpeiAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_BANK_NAME = "bankName"; + @jakarta.annotation.Nullable private String bankName; + + public static final String JSON_PROPERTY_BANK_ACCOUNT_NUMBER = "bankAccountNumber"; + @jakarta.annotation.Nonnull private String bankAccountNumber; + + public SpeiAddress() {} + + @JsonCreator + public SpeiAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_BANK_ACCOUNT_NUMBER, required = true) + String bankAccountNumber) { + this.accountHolder = accountHolder; + this.bankAccountNumber = bankAccountNumber; + } + + public SpeiAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public SpeiAddress bankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + return this; + } + + /** + * Name of the bank. + * + * @return bankName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankName() { + return bankName; + } + + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + } + + public SpeiAddress bankAccountNumber(@jakarta.annotation.Nonnull String bankAccountNumber) { + this.bankAccountNumber = bankAccountNumber; + return this; + } + + /** + * The bank account number for the SPEI transfer. + * + * @return bankAccountNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_BANK_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getBankAccountNumber() { + return bankAccountNumber; + } + + @JsonProperty(JSON_PROPERTY_BANK_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setBankAccountNumber(@jakarta.annotation.Nonnull String bankAccountNumber) { + this.bankAccountNumber = bankAccountNumber; + } + + /** Return true if this SpeiAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SpeiAddress speiAddress = (SpeiAddress) o; + return Objects.equals(this.accountHolder, speiAddress.accountHolder) + && Objects.equals(this.bankName, speiAddress.bankName) + && Objects.equals(this.bankAccountNumber, speiAddress.bankAccountNumber); + } + + @Override + public int hashCode() { + return Objects.hash(accountHolder, bankName, bankAccountNumber); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SpeiAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" bankName: ").append(toIndentedString(bankName)).append("\n"); + sb.append(" bankAccountNumber: ") + .append(toIndentedString(bankAccountNumber)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `bankName` to the URL query string + if (getBankName() != null) { + joiner.add( + String.format( + "%sbankName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankName())))); + } + + // add `bankAccountNumber` to the URL query string + if (getBankAccountNumber() != null) { + joiner.add( + String.format( + "%sbankAccountNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankAccountNumber())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/SpeiDestination.java b/src/main/java/com/fireblocks/sdk/model/SpeiDestination.java new file mode 100644 index 00000000..d147c2e2 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/SpeiDestination.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** SpeiDestination */ +@JsonPropertyOrder({SpeiDestination.JSON_PROPERTY_TYPE, SpeiDestination.JSON_PROPERTY_ADDRESS}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class SpeiDestination { + /** Gets or Sets type */ + public enum TypeEnum { + SPEI(String.valueOf("SPEI")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private SpeiAddress address; + + public SpeiDestination() {} + + @JsonCreator + public SpeiDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) SpeiAddress address) { + this.type = type; + this.address = address; + } + + public SpeiDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public SpeiDestination address(@jakarta.annotation.Nonnull SpeiAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SpeiAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull SpeiAddress address) { + this.address = address; + } + + /** Return true if this SpeiDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SpeiDestination speiDestination = (SpeiDestination) o; + return Objects.equals(this.type, speiDestination.type) + && Objects.equals(this.address, speiDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SpeiDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/SwiftAddress.java b/src/main/java/com/fireblocks/sdk/model/SwiftAddress.java new file mode 100644 index 00000000..df9fe851 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/SwiftAddress.java @@ -0,0 +1,228 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** SwiftAddress */ +@JsonPropertyOrder({ + SwiftAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + SwiftAddress.JSON_PROPERTY_SWIFT_CODE, + SwiftAddress.JSON_PROPERTY_ROUTING_NUMBER +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class SwiftAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_SWIFT_CODE = "swiftCode"; + @jakarta.annotation.Nonnull private String swiftCode; + + public static final String JSON_PROPERTY_ROUTING_NUMBER = "routingNumber"; + @jakarta.annotation.Nonnull private String routingNumber; + + public SwiftAddress() {} + + @JsonCreator + public SwiftAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_SWIFT_CODE, required = true) String swiftCode, + @JsonProperty(value = JSON_PROPERTY_ROUTING_NUMBER, required = true) + String routingNumber) { + this.accountHolder = accountHolder; + this.swiftCode = swiftCode; + this.routingNumber = routingNumber; + } + + public SwiftAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public SwiftAddress swiftCode(@jakarta.annotation.Nonnull String swiftCode) { + this.swiftCode = swiftCode; + return this; + } + + /** + * Get swiftCode + * + * @return swiftCode + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_SWIFT_CODE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getSwiftCode() { + return swiftCode; + } + + @JsonProperty(JSON_PROPERTY_SWIFT_CODE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setSwiftCode(@jakarta.annotation.Nonnull String swiftCode) { + this.swiftCode = swiftCode; + } + + public SwiftAddress routingNumber(@jakarta.annotation.Nonnull String routingNumber) { + this.routingNumber = routingNumber; + return this; + } + + /** + * Routing number identifying the bank account. + * + * @return routingNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ROUTING_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getRoutingNumber() { + return routingNumber; + } + + @JsonProperty(JSON_PROPERTY_ROUTING_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setRoutingNumber(@jakarta.annotation.Nonnull String routingNumber) { + this.routingNumber = routingNumber; + } + + /** Return true if this SwiftAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SwiftAddress swiftAddress = (SwiftAddress) o; + return Objects.equals(this.accountHolder, swiftAddress.accountHolder) + && Objects.equals(this.swiftCode, swiftAddress.swiftCode) + && Objects.equals(this.routingNumber, swiftAddress.routingNumber); + } + + @Override + public int hashCode() { + return Objects.hash(accountHolder, swiftCode, routingNumber); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SwiftAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" swiftCode: ").append(toIndentedString(swiftCode)).append("\n"); + sb.append(" routingNumber: ").append(toIndentedString(routingNumber)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `swiftCode` to the URL query string + if (getSwiftCode() != null) { + joiner.add( + String.format( + "%sswiftCode%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSwiftCode())))); + } + + // add `routingNumber` to the URL query string + if (getRoutingNumber() != null) { + joiner.add( + String.format( + "%sroutingNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRoutingNumber())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/SwiftDestination.java b/src/main/java/com/fireblocks/sdk/model/SwiftDestination.java new file mode 100644 index 00000000..f443c059 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/SwiftDestination.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** SwiftDestination */ +@JsonPropertyOrder({SwiftDestination.JSON_PROPERTY_TYPE, SwiftDestination.JSON_PROPERTY_ADDRESS}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class SwiftDestination { + /** Gets or Sets type */ + public enum TypeEnum { + SWIFT(String.valueOf("SWIFT")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private SwiftAddress address; + + public SwiftDestination() {} + + @JsonCreator + public SwiftDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) SwiftAddress address) { + this.type = type; + this.address = address; + } + + public SwiftDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public SwiftDestination address(@jakarta.annotation.Nonnull SwiftAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public SwiftAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull SwiftAddress address) { + this.address = address; + } + + /** Return true if this SwiftDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SwiftDestination swiftDestination = (SwiftDestination) o; + return Objects.equals(this.type, swiftDestination.type) + && Objects.equals(this.address, swiftDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class SwiftDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkAmount.java b/src/main/java/com/fireblocks/sdk/model/TRLinkAmount.java new file mode 100644 index 00000000..eda32c53 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkAmount.java @@ -0,0 +1,210 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * TRLink amount definition with range and currency, compatible with TAP format from Policy Engine + * V2 + */ +@JsonPropertyOrder({TRLinkAmount.JSON_PROPERTY_RANGE, TRLinkAmount.JSON_PROPERTY_CURRENCY}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkAmount { + public static final String JSON_PROPERTY_RANGE = "range"; + @jakarta.annotation.Nullable private AmountRangeMinMax range; + + /** Currency type */ + public enum CurrencyEnum { + USD(String.valueOf("USD")), + + NATIVE(String.valueOf("NATIVE")); + + private String value; + + CurrencyEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static CurrencyEnum fromValue(String value) { + for (CurrencyEnum b : CurrencyEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_CURRENCY = "currency"; + @jakarta.annotation.Nullable private CurrencyEnum currency; + + public TRLinkAmount() {} + + public TRLinkAmount range(@jakarta.annotation.Nullable AmountRangeMinMax range) { + this.range = range; + return this; + } + + /** + * Get range + * + * @return range + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RANGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public AmountRangeMinMax getRange() { + return range; + } + + @JsonProperty(JSON_PROPERTY_RANGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRange(@jakarta.annotation.Nullable AmountRangeMinMax range) { + this.range = range; + } + + public TRLinkAmount currency(@jakarta.annotation.Nullable CurrencyEnum currency) { + this.currency = currency; + return this; + } + + /** + * Currency type + * + * @return currency + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public CurrencyEnum getCurrency() { + return currency; + } + + @JsonProperty(JSON_PROPERTY_CURRENCY) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCurrency(@jakarta.annotation.Nullable CurrencyEnum currency) { + this.currency = currency; + } + + /** Return true if this TRLinkAmount object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkAmount trLinkAmount = (TRLinkAmount) o; + return Objects.equals(this.range, trLinkAmount.range) + && Objects.equals(this.currency, trLinkAmount.currency); + } + + @Override + public int hashCode() { + return Objects.hash(range, currency); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkAmount {\n"); + sb.append(" range: ").append(toIndentedString(range)).append("\n"); + sb.append(" currency: ").append(toIndentedString(currency)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `range` to the URL query string + if (getRange() != null) { + joiner.add(getRange().toUrlQueryString(prefix + "range" + suffix)); + } + + // add `currency` to the URL query string + if (getCurrency() != null) { + joiner.add( + String.format( + "%scurrency%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCurrency())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmAction.java b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmAction.java new file mode 100644 index 00000000..1dd9ec76 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmAction.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink missing TRM action */ +public enum TRLinkMissingTrmAction { + WAIT("WAIT"), + + REJECT("REJECT"), + + ACCEPT("ACCEPT"), + + INITIATE_TRM("INITIATE_TRM"); + + private String value; + + TRLinkMissingTrmAction(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkMissingTrmAction fromValue(String value) { + for (TRLinkMissingTrmAction b : TRLinkMissingTrmAction.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnum.java b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnum.java new file mode 100644 index 00000000..aab486c9 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnum.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink missing TRM action */ +public enum TRLinkMissingTrmActionEnum { + WAIT("WAIT"), + + REJECT("REJECT"), + + ACCEPT("ACCEPT"), + + INITIATE_TRM("INITIATE_TRM"); + + private String value; + + TRLinkMissingTrmActionEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkMissingTrmActionEnum fromValue(String value) { + for (TRLinkMissingTrmActionEnum b : TRLinkMissingTrmActionEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecision.java b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecision.java new file mode 100644 index 00000000..02545cf4 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecision.java @@ -0,0 +1,1041 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.time.OffsetDateTime; +import java.util.Objects; +import java.util.StringJoiner; + +/** Interface for reporting missing TRM screening decisions in ITRLinkResult */ +@JsonPropertyOrder({ + TRLinkMissingTrmDecision.JSON_PROPERTY_CUSTOMER_ID, + TRLinkMissingTrmDecision.JSON_PROPERTY_DIRECTION, + TRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_TYPE, + TRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_SUB_TYPE, + TRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_ADDRESS, + TRLinkMissingTrmDecision.JSON_PROPERTY_DEST_TYPE, + TRLinkMissingTrmDecision.JSON_PROPERTY_DEST_SUB_TYPE, + TRLinkMissingTrmDecision.JSON_PROPERTY_DEST_ADDRESS, + TRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE_ID, + TRLinkMissingTrmDecision.JSON_PROPERTY_DEST_ID, + TRLinkMissingTrmDecision.JSON_PROPERTY_ASSET, + TRLinkMissingTrmDecision.JSON_PROPERTY_BASE_ASSET, + TRLinkMissingTrmDecision.JSON_PROPERTY_AMOUNT, + TRLinkMissingTrmDecision.JSON_PROPERTY_NETWORK_PROTOCOL, + TRLinkMissingTrmDecision.JSON_PROPERTY_OPERATION, + TRLinkMissingTrmDecision.JSON_PROPERTY_DESCRIPTION, + TRLinkMissingTrmDecision.JSON_PROPERTY_IS_DEFAULT, + TRLinkMissingTrmDecision.JSON_PROPERTY_VALID_BEFORE, + TRLinkMissingTrmDecision.JSON_PROPERTY_VALID_AFTER, + TRLinkMissingTrmDecision.JSON_PROPERTY_ACTION, + TRLinkMissingTrmDecision.JSON_PROPERTY_SOURCE, + TRLinkMissingTrmDecision.JSON_PROPERTY_TIMESTAMP, + TRLinkMissingTrmDecision.JSON_PROPERTY_REASON +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkMissingTrmDecision { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TransactionDirection direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private TRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_VALID_BEFORE = "validBefore"; + @jakarta.annotation.Nullable private BigDecimal validBefore; + + public static final String JSON_PROPERTY_VALID_AFTER = "validAfter"; + @jakarta.annotation.Nullable private BigDecimal validAfter; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkMissingTrmAction action; + + public static final String JSON_PROPERTY_SOURCE = "source"; + @jakarta.annotation.Nonnull private String source; + + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nullable private OffsetDateTime timestamp; + + public static final String JSON_PROPERTY_REASON = "reason"; + @jakarta.annotation.Nullable private String reason; + + public TRLinkMissingTrmDecision() {} + + @JsonCreator + public TRLinkMissingTrmDecision( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TRLinkMissingTrmAction action, + @JsonProperty(value = JSON_PROPERTY_SOURCE, required = true) String source) { + this.action = action; + this.source = source; + } + + public TRLinkMissingTrmDecision customerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public TRLinkMissingTrmDecision direction( + @jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionDirection getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + } + + public TRLinkMissingTrmDecision sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public TRLinkMissingTrmDecision sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public TRLinkMissingTrmDecision sourceAddress( + @jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public TRLinkMissingTrmDecision destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public TRLinkMissingTrmDecision destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public TRLinkMissingTrmDecision destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TRLinkMissingTrmDecision sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public TRLinkMissingTrmDecision destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public TRLinkMissingTrmDecision asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public TRLinkMissingTrmDecision baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public TRLinkMissingTrmDecision amount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + } + + public TRLinkMissingTrmDecision networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public TRLinkMissingTrmDecision operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public TRLinkMissingTrmDecision description(@jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public TRLinkMissingTrmDecision isDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public TRLinkMissingTrmDecision validBefore( + @jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + return this; + } + + /** + * Unix timestamp when rule expires + * + * @return validBefore + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidBefore() { + return validBefore; + } + + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidBefore(@jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + } + + public TRLinkMissingTrmDecision validAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + return this; + } + + /** + * Unix timestamp when rule becomes valid + * + * @return validAfter + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidAfter() { + return validAfter; + } + + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + } + + public TRLinkMissingTrmDecision action( + @jakarta.annotation.Nonnull TRLinkMissingTrmAction action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkMissingTrmAction getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkMissingTrmAction action) { + this.action = action; + } + + public TRLinkMissingTrmDecision source(@jakarta.annotation.Nonnull String source) { + this.source = source; + return this; + } + + /** + * TRLink missing TRM source + * + * @return source + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_SOURCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getSource() { + return source; + } + + @JsonProperty(JSON_PROPERTY_SOURCE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setSource(@jakarta.annotation.Nonnull String source) { + this.source = source; + } + + public TRLinkMissingTrmDecision timestamp( + @jakarta.annotation.Nullable OffsetDateTime timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Timestamp of the decision + * + * @return timestamp + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public OffsetDateTime getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTimestamp(@jakarta.annotation.Nullable OffsetDateTime timestamp) { + this.timestamp = timestamp; + } + + public TRLinkMissingTrmDecision reason(@jakarta.annotation.Nullable String reason) { + this.reason = reason; + return this; + } + + /** + * Reason for the decision + * + * @return reason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getReason() { + return reason; + } + + @JsonProperty(JSON_PROPERTY_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setReason(@jakarta.annotation.Nullable String reason) { + this.reason = reason; + } + + /** Return true if this TRLinkMissingTrmDecision object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkMissingTrmDecision trLinkMissingTrmDecision = (TRLinkMissingTrmDecision) o; + return Objects.equals(this.customerId, trLinkMissingTrmDecision.customerId) + && Objects.equals(this.direction, trLinkMissingTrmDecision.direction) + && Objects.equals(this.sourceType, trLinkMissingTrmDecision.sourceType) + && Objects.equals(this.sourceSubType, trLinkMissingTrmDecision.sourceSubType) + && Objects.equals(this.sourceAddress, trLinkMissingTrmDecision.sourceAddress) + && Objects.equals(this.destType, trLinkMissingTrmDecision.destType) + && Objects.equals(this.destSubType, trLinkMissingTrmDecision.destSubType) + && Objects.equals(this.destAddress, trLinkMissingTrmDecision.destAddress) + && Objects.equals(this.sourceId, trLinkMissingTrmDecision.sourceId) + && Objects.equals(this.destId, trLinkMissingTrmDecision.destId) + && Objects.equals(this.asset, trLinkMissingTrmDecision.asset) + && Objects.equals(this.baseAsset, trLinkMissingTrmDecision.baseAsset) + && Objects.equals(this.amount, trLinkMissingTrmDecision.amount) + && Objects.equals(this.networkProtocol, trLinkMissingTrmDecision.networkProtocol) + && Objects.equals(this.operation, trLinkMissingTrmDecision.operation) + && Objects.equals(this.description, trLinkMissingTrmDecision.description) + && Objects.equals(this.isDefault, trLinkMissingTrmDecision.isDefault) + && Objects.equals(this.validBefore, trLinkMissingTrmDecision.validBefore) + && Objects.equals(this.validAfter, trLinkMissingTrmDecision.validAfter) + && Objects.equals(this.action, trLinkMissingTrmDecision.action) + && Objects.equals(this.source, trLinkMissingTrmDecision.source) + && Objects.equals(this.timestamp, trLinkMissingTrmDecision.timestamp) + && Objects.equals(this.reason, trLinkMissingTrmDecision.reason); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + validBefore, + validAfter, + action, + source, + timestamp, + reason); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkMissingTrmDecision {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" validBefore: ").append(toIndentedString(validBefore)).append("\n"); + sb.append(" validAfter: ").append(toIndentedString(validAfter)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append(" source: ").append(toIndentedString(source)).append("\n"); + sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" reason: ").append(toIndentedString(reason)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `validBefore` to the URL query string + if (getValidBefore() != null) { + joiner.add( + String.format( + "%svalidBefore%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidBefore())))); + } + + // add `validAfter` to the URL query string + if (getValidAfter() != null) { + joiner.add( + String.format( + "%svalidAfter%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidAfter())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + // add `source` to the URL query string + if (getSource() != null) { + joiner.add( + String.format( + "%ssource%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSource())))); + } + + // add `timestamp` to the URL query string + if (getTimestamp() != null) { + joiner.add( + String.format( + "%stimestamp%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + } + + // add `reason` to the URL query string + if (getReason() != null) { + joiner.add( + String.format( + "%sreason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getReason())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmRule.java b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmRule.java new file mode 100644 index 00000000..a4a4fa67 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkMissingTrmRule.java @@ -0,0 +1,914 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink missing TRM rule definition */ +@JsonPropertyOrder({ + TRLinkMissingTrmRule.JSON_PROPERTY_CUSTOMER_ID, + TRLinkMissingTrmRule.JSON_PROPERTY_DIRECTION, + TRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_TYPE, + TRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + TRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_ADDRESS, + TRLinkMissingTrmRule.JSON_PROPERTY_DEST_TYPE, + TRLinkMissingTrmRule.JSON_PROPERTY_DEST_SUB_TYPE, + TRLinkMissingTrmRule.JSON_PROPERTY_DEST_ADDRESS, + TRLinkMissingTrmRule.JSON_PROPERTY_SOURCE_ID, + TRLinkMissingTrmRule.JSON_PROPERTY_DEST_ID, + TRLinkMissingTrmRule.JSON_PROPERTY_ASSET, + TRLinkMissingTrmRule.JSON_PROPERTY_BASE_ASSET, + TRLinkMissingTrmRule.JSON_PROPERTY_AMOUNT, + TRLinkMissingTrmRule.JSON_PROPERTY_NETWORK_PROTOCOL, + TRLinkMissingTrmRule.JSON_PROPERTY_OPERATION, + TRLinkMissingTrmRule.JSON_PROPERTY_DESCRIPTION, + TRLinkMissingTrmRule.JSON_PROPERTY_IS_DEFAULT, + TRLinkMissingTrmRule.JSON_PROPERTY_VALID_BEFORE, + TRLinkMissingTrmRule.JSON_PROPERTY_VALID_AFTER, + TRLinkMissingTrmRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkMissingTrmRule { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TransactionDirection direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private TRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_VALID_BEFORE = "validBefore"; + @jakarta.annotation.Nullable private BigDecimal validBefore; + + public static final String JSON_PROPERTY_VALID_AFTER = "validAfter"; + @jakarta.annotation.Nullable private BigDecimal validAfter; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkMissingTrmAction action; + + public TRLinkMissingTrmRule() {} + + @JsonCreator + public TRLinkMissingTrmRule( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TRLinkMissingTrmAction action) { + this.action = action; + } + + public TRLinkMissingTrmRule customerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public TRLinkMissingTrmRule direction( + @jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionDirection getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + } + + public TRLinkMissingTrmRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public TRLinkMissingTrmRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public TRLinkMissingTrmRule sourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public TRLinkMissingTrmRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public TRLinkMissingTrmRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public TRLinkMissingTrmRule destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TRLinkMissingTrmRule sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public TRLinkMissingTrmRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public TRLinkMissingTrmRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public TRLinkMissingTrmRule baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public TRLinkMissingTrmRule amount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + } + + public TRLinkMissingTrmRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public TRLinkMissingTrmRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public TRLinkMissingTrmRule description(@jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public TRLinkMissingTrmRule isDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public TRLinkMissingTrmRule validBefore(@jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + return this; + } + + /** + * Unix timestamp when rule expires + * + * @return validBefore + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidBefore() { + return validBefore; + } + + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidBefore(@jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + } + + public TRLinkMissingTrmRule validAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + return this; + } + + /** + * Unix timestamp when rule becomes valid + * + * @return validAfter + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidAfter() { + return validAfter; + } + + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + } + + public TRLinkMissingTrmRule action(@jakarta.annotation.Nonnull TRLinkMissingTrmAction action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkMissingTrmAction getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkMissingTrmAction action) { + this.action = action; + } + + /** Return true if this TRLinkMissingTrmRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkMissingTrmRule trLinkMissingTrmRule = (TRLinkMissingTrmRule) o; + return Objects.equals(this.customerId, trLinkMissingTrmRule.customerId) + && Objects.equals(this.direction, trLinkMissingTrmRule.direction) + && Objects.equals(this.sourceType, trLinkMissingTrmRule.sourceType) + && Objects.equals(this.sourceSubType, trLinkMissingTrmRule.sourceSubType) + && Objects.equals(this.sourceAddress, trLinkMissingTrmRule.sourceAddress) + && Objects.equals(this.destType, trLinkMissingTrmRule.destType) + && Objects.equals(this.destSubType, trLinkMissingTrmRule.destSubType) + && Objects.equals(this.destAddress, trLinkMissingTrmRule.destAddress) + && Objects.equals(this.sourceId, trLinkMissingTrmRule.sourceId) + && Objects.equals(this.destId, trLinkMissingTrmRule.destId) + && Objects.equals(this.asset, trLinkMissingTrmRule.asset) + && Objects.equals(this.baseAsset, trLinkMissingTrmRule.baseAsset) + && Objects.equals(this.amount, trLinkMissingTrmRule.amount) + && Objects.equals(this.networkProtocol, trLinkMissingTrmRule.networkProtocol) + && Objects.equals(this.operation, trLinkMissingTrmRule.operation) + && Objects.equals(this.description, trLinkMissingTrmRule.description) + && Objects.equals(this.isDefault, trLinkMissingTrmRule.isDefault) + && Objects.equals(this.validBefore, trLinkMissingTrmRule.validBefore) + && Objects.equals(this.validAfter, trLinkMissingTrmRule.validAfter) + && Objects.equals(this.action, trLinkMissingTrmRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + validBefore, + validAfter, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkMissingTrmRule {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" validBefore: ").append(toIndentedString(validBefore)).append("\n"); + sb.append(" validAfter: ").append(toIndentedString(validAfter)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `validBefore` to the URL query string + if (getValidBefore() != null) { + joiner.add( + String.format( + "%svalidBefore%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidBefore())))); + } + + // add `validAfter` to the URL query string + if (getValidAfter() != null) { + joiner.add( + String.format( + "%svalidAfter%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidAfter())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkPostScreeningRule.java b/src/main/java/com/fireblocks/sdk/model/TRLinkPostScreeningRule.java new file mode 100644 index 00000000..2c28e4a0 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkPostScreeningRule.java @@ -0,0 +1,997 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink post-screening rule definition */ +@JsonPropertyOrder({ + TRLinkPostScreeningRule.JSON_PROPERTY_CUSTOMER_ID, + TRLinkPostScreeningRule.JSON_PROPERTY_DIRECTION, + TRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_TYPE, + TRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + TRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_ADDRESS, + TRLinkPostScreeningRule.JSON_PROPERTY_DEST_TYPE, + TRLinkPostScreeningRule.JSON_PROPERTY_DEST_SUB_TYPE, + TRLinkPostScreeningRule.JSON_PROPERTY_DEST_ADDRESS, + TRLinkPostScreeningRule.JSON_PROPERTY_SOURCE_ID, + TRLinkPostScreeningRule.JSON_PROPERTY_DEST_ID, + TRLinkPostScreeningRule.JSON_PROPERTY_ASSET, + TRLinkPostScreeningRule.JSON_PROPERTY_BASE_ASSET, + TRLinkPostScreeningRule.JSON_PROPERTY_AMOUNT, + TRLinkPostScreeningRule.JSON_PROPERTY_NETWORK_PROTOCOL, + TRLinkPostScreeningRule.JSON_PROPERTY_OPERATION, + TRLinkPostScreeningRule.JSON_PROPERTY_DESCRIPTION, + TRLinkPostScreeningRule.JSON_PROPERTY_IS_DEFAULT, + TRLinkPostScreeningRule.JSON_PROPERTY_PROVIDER_IDENT, + TRLinkPostScreeningRule.JSON_PROPERTY_TRM_STATUS, + TRLinkPostScreeningRule.JSON_PROPERTY_VALID_BEFORE, + TRLinkPostScreeningRule.JSON_PROPERTY_VALID_AFTER, + TRLinkPostScreeningRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkPostScreeningRule { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TransactionDirection direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private TRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_PROVIDER_IDENT = "providerIdent"; + @jakarta.annotation.Nullable private String providerIdent; + + public static final String JSON_PROPERTY_TRM_STATUS = "trmStatus"; + @jakarta.annotation.Nullable private TRLinkTrmScreeningStatus trmStatus; + + public static final String JSON_PROPERTY_VALID_BEFORE = "validBefore"; + @jakarta.annotation.Nullable private BigDecimal validBefore; + + public static final String JSON_PROPERTY_VALID_AFTER = "validAfter"; + @jakarta.annotation.Nullable private BigDecimal validAfter; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkVerdict action; + + public TRLinkPostScreeningRule() {} + + @JsonCreator + public TRLinkPostScreeningRule( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) TRLinkVerdict action) { + this.action = action; + } + + public TRLinkPostScreeningRule customerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public TRLinkPostScreeningRule direction( + @jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionDirection getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + } + + public TRLinkPostScreeningRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public TRLinkPostScreeningRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public TRLinkPostScreeningRule sourceAddress( + @jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public TRLinkPostScreeningRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public TRLinkPostScreeningRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public TRLinkPostScreeningRule destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TRLinkPostScreeningRule sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public TRLinkPostScreeningRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public TRLinkPostScreeningRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public TRLinkPostScreeningRule baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public TRLinkPostScreeningRule amount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + } + + public TRLinkPostScreeningRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public TRLinkPostScreeningRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public TRLinkPostScreeningRule description(@jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public TRLinkPostScreeningRule isDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public TRLinkPostScreeningRule providerIdent( + @jakarta.annotation.Nullable String providerIdent) { + this.providerIdent = providerIdent; + return this; + } + + /** + * Provider identifier + * + * @return providerIdent + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_IDENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getProviderIdent() { + return providerIdent; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_IDENT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderIdent(@jakarta.annotation.Nullable String providerIdent) { + this.providerIdent = providerIdent; + } + + public TRLinkPostScreeningRule trmStatus( + @jakarta.annotation.Nullable TRLinkTrmScreeningStatus trmStatus) { + this.trmStatus = trmStatus; + return this; + } + + /** + * Get trmStatus + * + * @return trmStatus + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRM_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkTrmScreeningStatus getTrmStatus() { + return trmStatus; + } + + @JsonProperty(JSON_PROPERTY_TRM_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTrmStatus(@jakarta.annotation.Nullable TRLinkTrmScreeningStatus trmStatus) { + this.trmStatus = trmStatus; + } + + public TRLinkPostScreeningRule validBefore( + @jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + return this; + } + + /** + * Unix timestamp when rule expires + * + * @return validBefore + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidBefore() { + return validBefore; + } + + @JsonProperty(JSON_PROPERTY_VALID_BEFORE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidBefore(@jakarta.annotation.Nullable BigDecimal validBefore) { + this.validBefore = validBefore; + } + + public TRLinkPostScreeningRule validAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + return this; + } + + /** + * Unix timestamp when rule becomes valid + * + * @return validAfter + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getValidAfter() { + return validAfter; + } + + @JsonProperty(JSON_PROPERTY_VALID_AFTER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setValidAfter(@jakarta.annotation.Nullable BigDecimal validAfter) { + this.validAfter = validAfter; + } + + public TRLinkPostScreeningRule action(@jakarta.annotation.Nonnull TRLinkVerdict action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkVerdict getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkVerdict action) { + this.action = action; + } + + /** Return true if this TRLinkPostScreeningRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkPostScreeningRule trLinkPostScreeningRule = (TRLinkPostScreeningRule) o; + return Objects.equals(this.customerId, trLinkPostScreeningRule.customerId) + && Objects.equals(this.direction, trLinkPostScreeningRule.direction) + && Objects.equals(this.sourceType, trLinkPostScreeningRule.sourceType) + && Objects.equals(this.sourceSubType, trLinkPostScreeningRule.sourceSubType) + && Objects.equals(this.sourceAddress, trLinkPostScreeningRule.sourceAddress) + && Objects.equals(this.destType, trLinkPostScreeningRule.destType) + && Objects.equals(this.destSubType, trLinkPostScreeningRule.destSubType) + && Objects.equals(this.destAddress, trLinkPostScreeningRule.destAddress) + && Objects.equals(this.sourceId, trLinkPostScreeningRule.sourceId) + && Objects.equals(this.destId, trLinkPostScreeningRule.destId) + && Objects.equals(this.asset, trLinkPostScreeningRule.asset) + && Objects.equals(this.baseAsset, trLinkPostScreeningRule.baseAsset) + && Objects.equals(this.amount, trLinkPostScreeningRule.amount) + && Objects.equals(this.networkProtocol, trLinkPostScreeningRule.networkProtocol) + && Objects.equals(this.operation, trLinkPostScreeningRule.operation) + && Objects.equals(this.description, trLinkPostScreeningRule.description) + && Objects.equals(this.isDefault, trLinkPostScreeningRule.isDefault) + && Objects.equals(this.providerIdent, trLinkPostScreeningRule.providerIdent) + && Objects.equals(this.trmStatus, trLinkPostScreeningRule.trmStatus) + && Objects.equals(this.validBefore, trLinkPostScreeningRule.validBefore) + && Objects.equals(this.validAfter, trLinkPostScreeningRule.validAfter) + && Objects.equals(this.action, trLinkPostScreeningRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + providerIdent, + trmStatus, + validBefore, + validAfter, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkPostScreeningRule {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" providerIdent: ").append(toIndentedString(providerIdent)).append("\n"); + sb.append(" trmStatus: ").append(toIndentedString(trmStatus)).append("\n"); + sb.append(" validBefore: ").append(toIndentedString(validBefore)).append("\n"); + sb.append(" validAfter: ").append(toIndentedString(validAfter)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `providerIdent` to the URL query string + if (getProviderIdent() != null) { + joiner.add( + String.format( + "%sproviderIdent%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProviderIdent())))); + } + + // add `trmStatus` to the URL query string + if (getTrmStatus() != null) { + joiner.add( + String.format( + "%strmStatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTrmStatus())))); + } + + // add `validBefore` to the URL query string + if (getValidBefore() != null) { + joiner.add( + String.format( + "%svalidBefore%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidBefore())))); + } + + // add `validAfter` to the URL query string + if (getValidAfter() != null) { + joiner.add( + String.format( + "%svalidAfter%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValidAfter())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningAction.java b/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningAction.java new file mode 100644 index 00000000..74c49fe0 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningAction.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink pre-screening action */ +public enum TRLinkPreScreeningAction { + SCREEN("SCREEN"), + + PASS("PASS"); + + private String value; + + TRLinkPreScreeningAction(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkPreScreeningAction fromValue(String value) { + for (TRLinkPreScreeningAction b : TRLinkPreScreeningAction.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnum.java b/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnum.java new file mode 100644 index 00000000..463da88c --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnum.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink pre-screening action */ +public enum TRLinkPreScreeningActionEnum { + SCREEN("SCREEN"), + + PASS("PASS"); + + private String value; + + TRLinkPreScreeningActionEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkPreScreeningActionEnum fromValue(String value) { + for (TRLinkPreScreeningActionEnum b : TRLinkPreScreeningActionEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningRule.java b/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningRule.java new file mode 100644 index 00000000..2e455341 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkPreScreeningRule.java @@ -0,0 +1,834 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink pre-screening rule definition */ +@JsonPropertyOrder({ + TRLinkPreScreeningRule.JSON_PROPERTY_CUSTOMER_ID, + TRLinkPreScreeningRule.JSON_PROPERTY_DIRECTION, + TRLinkPreScreeningRule.JSON_PROPERTY_SOURCE_TYPE, + TRLinkPreScreeningRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + TRLinkPreScreeningRule.JSON_PROPERTY_SOURCE_ADDRESS, + TRLinkPreScreeningRule.JSON_PROPERTY_DEST_TYPE, + TRLinkPreScreeningRule.JSON_PROPERTY_DEST_SUB_TYPE, + TRLinkPreScreeningRule.JSON_PROPERTY_DEST_ADDRESS, + TRLinkPreScreeningRule.JSON_PROPERTY_SOURCE_ID, + TRLinkPreScreeningRule.JSON_PROPERTY_DEST_ID, + TRLinkPreScreeningRule.JSON_PROPERTY_ASSET, + TRLinkPreScreeningRule.JSON_PROPERTY_BASE_ASSET, + TRLinkPreScreeningRule.JSON_PROPERTY_AMOUNT, + TRLinkPreScreeningRule.JSON_PROPERTY_NETWORK_PROTOCOL, + TRLinkPreScreeningRule.JSON_PROPERTY_OPERATION, + TRLinkPreScreeningRule.JSON_PROPERTY_DESCRIPTION, + TRLinkPreScreeningRule.JSON_PROPERTY_IS_DEFAULT, + TRLinkPreScreeningRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkPreScreeningRule { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TransactionDirection direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private TRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TRLinkPreScreeningAction action; + + public TRLinkPreScreeningRule() {} + + @JsonCreator + public TRLinkPreScreeningRule( + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TRLinkPreScreeningAction action) { + this.action = action; + } + + public TRLinkPreScreeningRule customerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public TRLinkPreScreeningRule direction( + @jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionDirection getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + } + + public TRLinkPreScreeningRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public TRLinkPreScreeningRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public TRLinkPreScreeningRule sourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public TRLinkPreScreeningRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public TRLinkPreScreeningRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public TRLinkPreScreeningRule destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TRLinkPreScreeningRule sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public TRLinkPreScreeningRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public TRLinkPreScreeningRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public TRLinkPreScreeningRule baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public TRLinkPreScreeningRule amount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + } + + public TRLinkPreScreeningRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public TRLinkPreScreeningRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public TRLinkPreScreeningRule description(@jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public TRLinkPreScreeningRule isDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + public TRLinkPreScreeningRule action( + @jakarta.annotation.Nonnull TRLinkPreScreeningAction action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkPreScreeningAction getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TRLinkPreScreeningAction action) { + this.action = action; + } + + /** Return true if this TRLinkPreScreeningRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkPreScreeningRule trLinkPreScreeningRule = (TRLinkPreScreeningRule) o; + return Objects.equals(this.customerId, trLinkPreScreeningRule.customerId) + && Objects.equals(this.direction, trLinkPreScreeningRule.direction) + && Objects.equals(this.sourceType, trLinkPreScreeningRule.sourceType) + && Objects.equals(this.sourceSubType, trLinkPreScreeningRule.sourceSubType) + && Objects.equals(this.sourceAddress, trLinkPreScreeningRule.sourceAddress) + && Objects.equals(this.destType, trLinkPreScreeningRule.destType) + && Objects.equals(this.destSubType, trLinkPreScreeningRule.destSubType) + && Objects.equals(this.destAddress, trLinkPreScreeningRule.destAddress) + && Objects.equals(this.sourceId, trLinkPreScreeningRule.sourceId) + && Objects.equals(this.destId, trLinkPreScreeningRule.destId) + && Objects.equals(this.asset, trLinkPreScreeningRule.asset) + && Objects.equals(this.baseAsset, trLinkPreScreeningRule.baseAsset) + && Objects.equals(this.amount, trLinkPreScreeningRule.amount) + && Objects.equals(this.networkProtocol, trLinkPreScreeningRule.networkProtocol) + && Objects.equals(this.operation, trLinkPreScreeningRule.operation) + && Objects.equals(this.description, trLinkPreScreeningRule.description) + && Objects.equals(this.isDefault, trLinkPreScreeningRule.isDefault) + && Objects.equals(this.action, trLinkPreScreeningRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkPreScreeningRule {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResult.java b/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResult.java new file mode 100644 index 00000000..56f2fad4 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResult.java @@ -0,0 +1,140 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Provider-specific response data wrapper */ +@JsonPropertyOrder({TRLinkProviderResult.JSON_PROPERTY_PROVIDER_RESPONSE}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkProviderResult { + public static final String JSON_PROPERTY_PROVIDER_RESPONSE = "providerResponse"; + @jakarta.annotation.Nullable private Object providerResponse; + + public TRLinkProviderResult() {} + + public TRLinkProviderResult providerResponse( + @jakarta.annotation.Nullable Object providerResponse) { + this.providerResponse = providerResponse; + return this; + } + + /** + * Raw provider response + * + * @return providerResponse + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getProviderResponse() { + return providerResponse; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderResponse(@jakarta.annotation.Nullable Object providerResponse) { + this.providerResponse = providerResponse; + } + + /** Return true if this TRLinkProviderResult object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkProviderResult trLinkProviderResult = (TRLinkProviderResult) o; + return Objects.equals(this.providerResponse, trLinkProviderResult.providerResponse); + } + + @Override + public int hashCode() { + return Objects.hash(providerResponse); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkProviderResult {\n"); + sb.append(" providerResponse: ").append(toIndentedString(providerResponse)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `providerResponse` to the URL query string + if (getProviderResponse() != null) { + joiner.add( + String.format( + "%sproviderResponse%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProviderResponse())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule.java b/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule.java new file mode 100644 index 00000000..18d26af0 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule.java @@ -0,0 +1,178 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Provider response and matched rule wrapper for TRLink screening results */ +@JsonPropertyOrder({ + TRLinkProviderResultWithRule.JSON_PROPERTY_PROVIDER_RESPONSE, + TRLinkProviderResultWithRule.JSON_PROPERTY_MATCHED_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkProviderResultWithRule { + public static final String JSON_PROPERTY_PROVIDER_RESPONSE = "providerResponse"; + @jakarta.annotation.Nullable private Object providerResponse; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private TRLinkPostScreeningRule matchedRule; + + public TRLinkProviderResultWithRule() {} + + public TRLinkProviderResultWithRule providerResponse( + @jakarta.annotation.Nullable Object providerResponse) { + this.providerResponse = providerResponse; + return this; + } + + /** + * Raw provider response + * + * @return providerResponse + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getProviderResponse() { + return providerResponse; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderResponse(@jakarta.annotation.Nullable Object providerResponse) { + this.providerResponse = providerResponse; + } + + public TRLinkProviderResultWithRule matchedRule( + @jakarta.annotation.Nullable TRLinkPostScreeningRule matchedRule) { + this.matchedRule = matchedRule; + return this; + } + + /** + * Get matchedRule + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkPostScreeningRule getMatchedRule() { + return matchedRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule(@jakarta.annotation.Nullable TRLinkPostScreeningRule matchedRule) { + this.matchedRule = matchedRule; + } + + /** Return true if this TRLinkProviderResultWithRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkProviderResultWithRule trLinkProviderResultWithRule = + (TRLinkProviderResultWithRule) o; + return Objects.equals(this.providerResponse, trLinkProviderResultWithRule.providerResponse) + && Objects.equals(this.matchedRule, trLinkProviderResultWithRule.matchedRule); + } + + @Override + public int hashCode() { + return Objects.hash(providerResponse, matchedRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkProviderResultWithRule {\n"); + sb.append(" providerResponse: ").append(toIndentedString(providerResponse)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `providerResponse` to the URL query string + if (getProviderResponse() != null) { + joiner.add( + String.format( + "%sproviderResponse%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProviderResponse())))); + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add(getMatchedRule().toUrlQueryString(prefix + "matchedRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2.java b/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2.java new file mode 100644 index 00000000..b2479df6 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2.java @@ -0,0 +1,179 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Provider response and matched rule wrapper for TRLink screening results */ +@JsonPropertyOrder({ + TRLinkProviderResultWithRule2.JSON_PROPERTY_PROVIDER_RESPONSE, + TRLinkProviderResultWithRule2.JSON_PROPERTY_MATCHED_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkProviderResultWithRule2 { + public static final String JSON_PROPERTY_PROVIDER_RESPONSE = "providerResponse"; + @jakarta.annotation.Nullable private Object providerResponse; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private ScreeningTRLinkPostScreeningRule matchedRule; + + public TRLinkProviderResultWithRule2() {} + + public TRLinkProviderResultWithRule2 providerResponse( + @jakarta.annotation.Nullable Object providerResponse) { + this.providerResponse = providerResponse; + return this; + } + + /** + * Raw provider response + * + * @return providerResponse + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Object getProviderResponse() { + return providerResponse; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderResponse(@jakarta.annotation.Nullable Object providerResponse) { + this.providerResponse = providerResponse; + } + + public TRLinkProviderResultWithRule2 matchedRule( + @jakarta.annotation.Nullable ScreeningTRLinkPostScreeningRule matchedRule) { + this.matchedRule = matchedRule; + return this; + } + + /** + * Get matchedRule + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkPostScreeningRule getMatchedRule() { + return matchedRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule( + @jakarta.annotation.Nullable ScreeningTRLinkPostScreeningRule matchedRule) { + this.matchedRule = matchedRule; + } + + /** Return true if this TRLinkProviderResultWithRule-2 object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkProviderResultWithRule2 trLinkProviderResultWithRule2 = + (TRLinkProviderResultWithRule2) o; + return Objects.equals(this.providerResponse, trLinkProviderResultWithRule2.providerResponse) + && Objects.equals(this.matchedRule, trLinkProviderResultWithRule2.matchedRule); + } + + @Override + public int hashCode() { + return Objects.hash(providerResponse, matchedRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkProviderResultWithRule2 {\n"); + sb.append(" providerResponse: ").append(toIndentedString(providerResponse)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `providerResponse` to the URL query string + if (getProviderResponse() != null) { + joiner.add( + String.format( + "%sproviderResponse%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProviderResponse())))); + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add(getMatchedRule().toUrlQueryString(prefix + "matchedRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResult.java b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResult.java new file mode 100644 index 00000000..852c6d9e --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResult.java @@ -0,0 +1,528 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink registration result containing status and metadata */ +@JsonPropertyOrder({ + TRLinkRegistrationResult.JSON_PROPERTY_STATUS, + TRLinkRegistrationResult.JSON_PROPERTY_PROVIDER, + TRLinkRegistrationResult.JSON_PROPERTY_SUCCESS, + TRLinkRegistrationResult.JSON_PROPERTY_TIMESTAMP, + TRLinkRegistrationResult.JSON_PROPERTY_DEST_RECORD_ID, + TRLinkRegistrationResult.JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID, + TRLinkRegistrationResult.JSON_PROPERTY_CUSTOMER_INTEGRATION_ID, + TRLinkRegistrationResult.JSON_PROPERTY_CUSTOMER_SHORT_NAME, + TRLinkRegistrationResult.JSON_PROPERTY_RESULT, + TRLinkRegistrationResult.JSON_PROPERTY_MATCHED_PRESCREENING_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkRegistrationResult { + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nonnull private TRLinkRegistrationStatus status; + + public static final String JSON_PROPERTY_PROVIDER = "provider"; + @jakarta.annotation.Nullable private String provider; + + public static final String JSON_PROPERTY_SUCCESS = "success"; + @jakarta.annotation.Nullable private Boolean success; + + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nonnull private BigDecimal timestamp; + + public static final String JSON_PROPERTY_DEST_RECORD_ID = "destRecordId"; + @jakarta.annotation.Nullable private String destRecordId; + + public static final String JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID = "travelRuleMessageId"; + @jakarta.annotation.Nullable private String travelRuleMessageId; + + public static final String JSON_PROPERTY_CUSTOMER_INTEGRATION_ID = "customerIntegrationId"; + @jakarta.annotation.Nullable private String customerIntegrationId; + + public static final String JSON_PROPERTY_CUSTOMER_SHORT_NAME = "customerShortName"; + @jakarta.annotation.Nullable private String customerShortName; + + public static final String JSON_PROPERTY_RESULT = "result"; + @jakarta.annotation.Nullable private TRLinkProviderResult result; + + public static final String JSON_PROPERTY_MATCHED_PRESCREENING_RULE = "matchedPrescreeningRule"; + @jakarta.annotation.Nullable private TRLinkPreScreeningRule matchedPrescreeningRule; + + public TRLinkRegistrationResult() {} + + @JsonCreator + public TRLinkRegistrationResult( + @JsonProperty(value = JSON_PROPERTY_STATUS, required = true) + TRLinkRegistrationStatus status, + @JsonProperty(value = JSON_PROPERTY_TIMESTAMP, required = true) BigDecimal timestamp) { + this.status = status; + this.timestamp = timestamp; + } + + public TRLinkRegistrationResult status( + @jakarta.annotation.Nonnull TRLinkRegistrationStatus status) { + this.status = status; + return this; + } + + /** + * Get status + * + * @return status + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkRegistrationStatus getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setStatus(@jakarta.annotation.Nonnull TRLinkRegistrationStatus status) { + this.status = status; + } + + public TRLinkRegistrationResult provider(@jakarta.annotation.Nullable String provider) { + this.provider = provider; + return this; + } + + /** + * The TRLink provider name + * + * @return provider + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getProvider() { + return provider; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProvider(@jakarta.annotation.Nullable String provider) { + this.provider = provider; + } + + public TRLinkRegistrationResult success(@jakarta.annotation.Nullable Boolean success) { + this.success = success; + return this; + } + + /** + * Whether the registration was successful + * + * @return success + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SUCCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getSuccess() { + return success; + } + + @JsonProperty(JSON_PROPERTY_SUCCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSuccess(@jakarta.annotation.Nullable Boolean success) { + this.success = success; + } + + public TRLinkRegistrationResult timestamp(@jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Unix timestamp of the registration + * + * @return timestamp + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public BigDecimal getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTimestamp(@jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + } + + public TRLinkRegistrationResult destRecordId(@jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + return this; + } + + /** + * Destination record identifier + * + * @return destRecordId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestRecordId() { + return destRecordId; + } + + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestRecordId(@jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + } + + public TRLinkRegistrationResult travelRuleMessageId( + @jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + return this; + } + + /** + * Travel rule message identifier for linking + * + * @return travelRuleMessageId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTravelRuleMessageId() { + return travelRuleMessageId; + } + + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTravelRuleMessageId(@jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + } + + public TRLinkRegistrationResult customerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + return this; + } + + /** + * Customer integration identifier + * + * @return customerIntegrationId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerIntegrationId() { + return customerIntegrationId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + } + + public TRLinkRegistrationResult customerShortName( + @jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + return this; + } + + /** + * Customer short name + * + * @return customerShortName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerShortName() { + return customerShortName; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerShortName(@jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + } + + public TRLinkRegistrationResult result( + @jakarta.annotation.Nullable TRLinkProviderResult result) { + this.result = result; + return this; + } + + /** + * Get result + * + * @return result + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkProviderResult getResult() { + return result; + } + + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setResult(@jakarta.annotation.Nullable TRLinkProviderResult result) { + this.result = result; + } + + public TRLinkRegistrationResult matchedPrescreeningRule( + @jakarta.annotation.Nullable TRLinkPreScreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + return this; + } + + /** + * Get matchedPrescreeningRule + * + * @return matchedPrescreeningRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkPreScreeningRule getMatchedPrescreeningRule() { + return matchedPrescreeningRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedPrescreeningRule( + @jakarta.annotation.Nullable TRLinkPreScreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + } + + /** Return true if this TRLinkRegistrationResult object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkRegistrationResult trLinkRegistrationResult = (TRLinkRegistrationResult) o; + return Objects.equals(this.status, trLinkRegistrationResult.status) + && Objects.equals(this.provider, trLinkRegistrationResult.provider) + && Objects.equals(this.success, trLinkRegistrationResult.success) + && Objects.equals(this.timestamp, trLinkRegistrationResult.timestamp) + && Objects.equals(this.destRecordId, trLinkRegistrationResult.destRecordId) + && Objects.equals( + this.travelRuleMessageId, trLinkRegistrationResult.travelRuleMessageId) + && Objects.equals( + this.customerIntegrationId, trLinkRegistrationResult.customerIntegrationId) + && Objects.equals( + this.customerShortName, trLinkRegistrationResult.customerShortName) + && Objects.equals(this.result, trLinkRegistrationResult.result) + && Objects.equals( + this.matchedPrescreeningRule, + trLinkRegistrationResult.matchedPrescreeningRule); + } + + @Override + public int hashCode() { + return Objects.hash( + status, + provider, + success, + timestamp, + destRecordId, + travelRuleMessageId, + customerIntegrationId, + customerShortName, + result, + matchedPrescreeningRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkRegistrationResult {\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); + sb.append(" success: ").append(toIndentedString(success)).append("\n"); + sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" destRecordId: ").append(toIndentedString(destRecordId)).append("\n"); + sb.append(" travelRuleMessageId: ") + .append(toIndentedString(travelRuleMessageId)) + .append("\n"); + sb.append(" customerIntegrationId: ") + .append(toIndentedString(customerIntegrationId)) + .append("\n"); + sb.append(" customerShortName: ") + .append(toIndentedString(customerShortName)) + .append("\n"); + sb.append(" result: ").append(toIndentedString(result)).append("\n"); + sb.append(" matchedPrescreeningRule: ") + .append(toIndentedString(matchedPrescreeningRule)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `provider` to the URL query string + if (getProvider() != null) { + joiner.add( + String.format( + "%sprovider%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProvider())))); + } + + // add `success` to the URL query string + if (getSuccess() != null) { + joiner.add( + String.format( + "%ssuccess%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSuccess())))); + } + + // add `timestamp` to the URL query string + if (getTimestamp() != null) { + joiner.add( + String.format( + "%stimestamp%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + } + + // add `destRecordId` to the URL query string + if (getDestRecordId() != null) { + joiner.add( + String.format( + "%sdestRecordId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestRecordId())))); + } + + // add `travelRuleMessageId` to the URL query string + if (getTravelRuleMessageId() != null) { + joiner.add( + String.format( + "%stravelRuleMessageId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTravelRuleMessageId())))); + } + + // add `customerIntegrationId` to the URL query string + if (getCustomerIntegrationId() != null) { + joiner.add( + String.format( + "%scustomerIntegrationId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getCustomerIntegrationId())))); + } + + // add `customerShortName` to the URL query string + if (getCustomerShortName() != null) { + joiner.add( + String.format( + "%scustomerShortName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerShortName())))); + } + + // add `result` to the URL query string + if (getResult() != null) { + joiner.add(getResult().toUrlQueryString(prefix + "result" + suffix)); + } + + // add `matchedPrescreeningRule` to the URL query string + if (getMatchedPrescreeningRule() != null) { + joiner.add( + getMatchedPrescreeningRule() + .toUrlQueryString(prefix + "matchedPrescreeningRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayload.java b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayload.java new file mode 100644 index 00000000..4afb5e38 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayload.java @@ -0,0 +1,537 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink registration result containing status and metadata */ +@JsonPropertyOrder({ + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_STATUS, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_PROVIDER, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_SUCCESS, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_TIMESTAMP, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_DEST_RECORD_ID, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_CUSTOMER_INTEGRATION_ID, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_CUSTOMER_SHORT_NAME, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_RESULT, + TRLinkRegistrationResultFullPayload.JSON_PROPERTY_MATCHED_PRESCREENING_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkRegistrationResultFullPayload { + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nonnull private TRLinkRegistrationStatusEnum status; + + public static final String JSON_PROPERTY_PROVIDER = "provider"; + @jakarta.annotation.Nullable private String provider; + + public static final String JSON_PROPERTY_SUCCESS = "success"; + @jakarta.annotation.Nullable private Boolean success; + + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nonnull private BigDecimal timestamp; + + public static final String JSON_PROPERTY_DEST_RECORD_ID = "destRecordId"; + @jakarta.annotation.Nullable private String destRecordId; + + public static final String JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID = "travelRuleMessageId"; + @jakarta.annotation.Nullable private String travelRuleMessageId; + + public static final String JSON_PROPERTY_CUSTOMER_INTEGRATION_ID = "customerIntegrationId"; + @jakarta.annotation.Nullable private String customerIntegrationId; + + public static final String JSON_PROPERTY_CUSTOMER_SHORT_NAME = "customerShortName"; + @jakarta.annotation.Nullable private String customerShortName; + + public static final String JSON_PROPERTY_RESULT = "result"; + @jakarta.annotation.Nullable private TRLinkProviderResult result; + + public static final String JSON_PROPERTY_MATCHED_PRESCREENING_RULE = "matchedPrescreeningRule"; + @jakarta.annotation.Nullable private ScreeningTRLinkPrescreeningRule matchedPrescreeningRule; + + public TRLinkRegistrationResultFullPayload() {} + + @JsonCreator + public TRLinkRegistrationResultFullPayload( + @JsonProperty(value = JSON_PROPERTY_STATUS, required = true) + TRLinkRegistrationStatusEnum status, + @JsonProperty(value = JSON_PROPERTY_TIMESTAMP, required = true) BigDecimal timestamp) { + this.status = status; + this.timestamp = timestamp; + } + + public TRLinkRegistrationResultFullPayload status( + @jakarta.annotation.Nonnull TRLinkRegistrationStatusEnum status) { + this.status = status; + return this; + } + + /** + * Get status + * + * @return status + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TRLinkRegistrationStatusEnum getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setStatus(@jakarta.annotation.Nonnull TRLinkRegistrationStatusEnum status) { + this.status = status; + } + + public TRLinkRegistrationResultFullPayload provider( + @jakarta.annotation.Nullable String provider) { + this.provider = provider; + return this; + } + + /** + * The TRLink provider name + * + * @return provider + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getProvider() { + return provider; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setProvider(@jakarta.annotation.Nullable String provider) { + this.provider = provider; + } + + public TRLinkRegistrationResultFullPayload success( + @jakarta.annotation.Nullable Boolean success) { + this.success = success; + return this; + } + + /** + * Whether the registration was successful + * + * @return success + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SUCCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getSuccess() { + return success; + } + + @JsonProperty(JSON_PROPERTY_SUCCESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSuccess(@jakarta.annotation.Nullable Boolean success) { + this.success = success; + } + + public TRLinkRegistrationResultFullPayload timestamp( + @jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Unix timestamp of the registration + * + * @return timestamp + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public BigDecimal getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTimestamp(@jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + } + + public TRLinkRegistrationResultFullPayload destRecordId( + @jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + return this; + } + + /** + * Destination record identifier + * + * @return destRecordId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestRecordId() { + return destRecordId; + } + + @JsonProperty(JSON_PROPERTY_DEST_RECORD_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestRecordId(@jakarta.annotation.Nullable String destRecordId) { + this.destRecordId = destRecordId; + } + + public TRLinkRegistrationResultFullPayload travelRuleMessageId( + @jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + return this; + } + + /** + * Travel rule message identifier for linking + * + * @return travelRuleMessageId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTravelRuleMessageId() { + return travelRuleMessageId; + } + + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTravelRuleMessageId(@jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + } + + public TRLinkRegistrationResultFullPayload customerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + return this; + } + + /** + * Customer integration identifier + * + * @return customerIntegrationId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerIntegrationId() { + return customerIntegrationId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + } + + public TRLinkRegistrationResultFullPayload customerShortName( + @jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + return this; + } + + /** + * Customer short name + * + * @return customerShortName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerShortName() { + return customerShortName; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerShortName(@jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + } + + public TRLinkRegistrationResultFullPayload result( + @jakarta.annotation.Nullable TRLinkProviderResult result) { + this.result = result; + return this; + } + + /** + * Get result + * + * @return result + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkProviderResult getResult() { + return result; + } + + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setResult(@jakarta.annotation.Nullable TRLinkProviderResult result) { + this.result = result; + } + + public TRLinkRegistrationResultFullPayload matchedPrescreeningRule( + @jakarta.annotation.Nullable ScreeningTRLinkPrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + return this; + } + + /** + * Get matchedPrescreeningRule + * + * @return matchedPrescreeningRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkPrescreeningRule getMatchedPrescreeningRule() { + return matchedPrescreeningRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedPrescreeningRule( + @jakarta.annotation.Nullable ScreeningTRLinkPrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + } + + /** Return true if this TRLinkRegistrationResultFullPayload object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkRegistrationResultFullPayload trLinkRegistrationResultFullPayload = + (TRLinkRegistrationResultFullPayload) o; + return Objects.equals(this.status, trLinkRegistrationResultFullPayload.status) + && Objects.equals(this.provider, trLinkRegistrationResultFullPayload.provider) + && Objects.equals(this.success, trLinkRegistrationResultFullPayload.success) + && Objects.equals(this.timestamp, trLinkRegistrationResultFullPayload.timestamp) + && Objects.equals( + this.destRecordId, trLinkRegistrationResultFullPayload.destRecordId) + && Objects.equals( + this.travelRuleMessageId, + trLinkRegistrationResultFullPayload.travelRuleMessageId) + && Objects.equals( + this.customerIntegrationId, + trLinkRegistrationResultFullPayload.customerIntegrationId) + && Objects.equals( + this.customerShortName, + trLinkRegistrationResultFullPayload.customerShortName) + && Objects.equals(this.result, trLinkRegistrationResultFullPayload.result) + && Objects.equals( + this.matchedPrescreeningRule, + trLinkRegistrationResultFullPayload.matchedPrescreeningRule); + } + + @Override + public int hashCode() { + return Objects.hash( + status, + provider, + success, + timestamp, + destRecordId, + travelRuleMessageId, + customerIntegrationId, + customerShortName, + result, + matchedPrescreeningRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkRegistrationResultFullPayload {\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); + sb.append(" success: ").append(toIndentedString(success)).append("\n"); + sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" destRecordId: ").append(toIndentedString(destRecordId)).append("\n"); + sb.append(" travelRuleMessageId: ") + .append(toIndentedString(travelRuleMessageId)) + .append("\n"); + sb.append(" customerIntegrationId: ") + .append(toIndentedString(customerIntegrationId)) + .append("\n"); + sb.append(" customerShortName: ") + .append(toIndentedString(customerShortName)) + .append("\n"); + sb.append(" result: ").append(toIndentedString(result)).append("\n"); + sb.append(" matchedPrescreeningRule: ") + .append(toIndentedString(matchedPrescreeningRule)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `provider` to the URL query string + if (getProvider() != null) { + joiner.add( + String.format( + "%sprovider%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProvider())))); + } + + // add `success` to the URL query string + if (getSuccess() != null) { + joiner.add( + String.format( + "%ssuccess%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSuccess())))); + } + + // add `timestamp` to the URL query string + if (getTimestamp() != null) { + joiner.add( + String.format( + "%stimestamp%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + } + + // add `destRecordId` to the URL query string + if (getDestRecordId() != null) { + joiner.add( + String.format( + "%sdestRecordId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestRecordId())))); + } + + // add `travelRuleMessageId` to the URL query string + if (getTravelRuleMessageId() != null) { + joiner.add( + String.format( + "%stravelRuleMessageId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTravelRuleMessageId())))); + } + + // add `customerIntegrationId` to the URL query string + if (getCustomerIntegrationId() != null) { + joiner.add( + String.format( + "%scustomerIntegrationId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getCustomerIntegrationId())))); + } + + // add `customerShortName` to the URL query string + if (getCustomerShortName() != null) { + joiner.add( + String.format( + "%scustomerShortName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerShortName())))); + } + + // add `result` to the URL query string + if (getResult() != null) { + joiner.add(getResult().toUrlQueryString(prefix + "result" + suffix)); + } + + // add `matchedPrescreeningRule` to the URL query string + if (getMatchedPrescreeningRule() != null) { + joiner.add( + getMatchedPrescreeningRule() + .toUrlQueryString(prefix + "matchedPrescreeningRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatus.java b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatus.java new file mode 100644 index 00000000..057acdb5 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatus.java @@ -0,0 +1,70 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink registration status */ +public enum TRLinkRegistrationStatus { + STARTING("STARTING"), + + PRESCREENED("PRESCREENED"), + + COMPLETED("COMPLETED"), + + FAILED("FAILED"), + + VOID("VOID"); + + private String value; + + TRLinkRegistrationStatus(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkRegistrationStatus fromValue(String value) { + for (TRLinkRegistrationStatus b : TRLinkRegistrationStatus.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnum.java b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnum.java new file mode 100644 index 00000000..26640406 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnum.java @@ -0,0 +1,70 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink registration status */ +public enum TRLinkRegistrationStatusEnum { + STARTING("STARTING"), + + PRESCREENED("PRESCREENED"), + + COMPLETED("COMPLETED"), + + FAILED("FAILED"), + + VOID("VOID"); + + private String value; + + TRLinkRegistrationStatusEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkRegistrationStatusEnum fromValue(String value) { + for (TRLinkRegistrationStatusEnum b : TRLinkRegistrationStatusEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkResult.java b/src/main/java/com/fireblocks/sdk/model/TRLinkResult.java new file mode 100644 index 00000000..f39fec1d --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkResult.java @@ -0,0 +1,725 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink screening result */ +@JsonPropertyOrder({ + TRLinkResult.JSON_PROPERTY_PROVIDER, + TRLinkResult.JSON_PROPERTY_TIMESTAMP, + TRLinkResult.JSON_PROPERTY_STATUS, + TRLinkResult.JSON_PROPERTY_VERDICT, + TRLinkResult.JSON_PROPERTY_DEST_ADDRESS, + TRLinkResult.JSON_PROPERTY_DEST_TAG, + TRLinkResult.JSON_PROPERTY_BYPASS_REASON, + TRLinkResult.JSON_PROPERTY_DETAILS_MESSAGE, + TRLinkResult.JSON_PROPERTY_CUSTOMER_INTEGRATION_ID, + TRLinkResult.JSON_PROPERTY_CUSTOMER_SHORT_NAME, + TRLinkResult.JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID, + TRLinkResult.JSON_PROPERTY_RESULT, + TRLinkResult.JSON_PROPERTY_MATCHED_PRESCREENING_RULE, + TRLinkResult.JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkResult { + public static final String JSON_PROPERTY_PROVIDER = "provider"; + @jakarta.annotation.Nonnull private String provider; + + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nonnull private BigDecimal timestamp; + + /** Status of the TRLink screening */ + public enum StatusEnum { + COMPLETED(String.valueOf("COMPLETED")), + + PENDING(String.valueOf("PENDING")), + + BYPASSED(String.valueOf("BYPASSED")), + + FAILED(String.valueOf("FAILED")), + + FROZEN(String.valueOf("FROZEN")); + + private String value; + + StatusEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static StatusEnum fromValue(String value) { + for (StatusEnum b : StatusEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nonnull private StatusEnum status; + + public static final String JSON_PROPERTY_VERDICT = "verdict"; + @jakarta.annotation.Nullable private TRLinkVerdict verdict; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_DEST_TAG = "destTag"; + @jakarta.annotation.Nullable private String destTag; + + public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; + @jakarta.annotation.Nullable private String bypassReason; + + public static final String JSON_PROPERTY_DETAILS_MESSAGE = "detailsMessage"; + @jakarta.annotation.Nullable private String detailsMessage; + + public static final String JSON_PROPERTY_CUSTOMER_INTEGRATION_ID = "customerIntegrationId"; + @jakarta.annotation.Nullable private String customerIntegrationId; + + public static final String JSON_PROPERTY_CUSTOMER_SHORT_NAME = "customerShortName"; + @jakarta.annotation.Nullable private String customerShortName; + + public static final String JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID = "travelRuleMessageId"; + @jakarta.annotation.Nullable private String travelRuleMessageId; + + public static final String JSON_PROPERTY_RESULT = "result"; + @jakarta.annotation.Nullable private TRLinkProviderResultWithRule result; + + public static final String JSON_PROPERTY_MATCHED_PRESCREENING_RULE = "matchedPrescreeningRule"; + @jakarta.annotation.Nullable private TRLinkPreScreeningRule matchedPrescreeningRule; + + public static final String JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE = + "matchedNoTrmScreeningRule"; + @jakarta.annotation.Nullable private TRLinkMissingTrmDecision matchedNoTrmScreeningRule; + + public TRLinkResult() {} + + @JsonCreator + public TRLinkResult( + @JsonProperty(value = JSON_PROPERTY_PROVIDER, required = true) String provider, + @JsonProperty(value = JSON_PROPERTY_TIMESTAMP, required = true) BigDecimal timestamp, + @JsonProperty(value = JSON_PROPERTY_STATUS, required = true) StatusEnum status) { + this.provider = provider; + this.timestamp = timestamp; + this.status = status; + } + + public TRLinkResult provider(@jakarta.annotation.Nonnull String provider) { + this.provider = provider; + return this; + } + + /** + * The TRLink provider name + * + * @return provider + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getProvider() { + return provider; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setProvider(@jakarta.annotation.Nonnull String provider) { + this.provider = provider; + } + + public TRLinkResult timestamp(@jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Unix timestamp of the screening result + * + * @return timestamp + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public BigDecimal getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTimestamp(@jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + } + + public TRLinkResult status(@jakarta.annotation.Nonnull StatusEnum status) { + this.status = status; + return this; + } + + /** + * Status of the TRLink screening + * + * @return status + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public StatusEnum getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setStatus(@jakarta.annotation.Nonnull StatusEnum status) { + this.status = status; + } + + public TRLinkResult verdict(@jakarta.annotation.Nullable TRLinkVerdict verdict) { + this.verdict = verdict; + return this; + } + + /** + * Get verdict + * + * @return verdict + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkVerdict getVerdict() { + return verdict; + } + + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVerdict(@jakarta.annotation.Nullable TRLinkVerdict verdict) { + this.verdict = verdict; + } + + public TRLinkResult destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * The destination address associated with the TRLink screening + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TRLinkResult destTag(@jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + return this; + } + + /** + * Destination tag for the screening + * + * @return destTag + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestTag() { + return destTag; + } + + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestTag(@jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + } + + public TRLinkResult bypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + return this; + } + + /** + * Reason for bypassing the TRLink screening + * + * @return bypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBypassReason() { + return bypassReason; + } + + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + } + + public TRLinkResult detailsMessage(@jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + return this; + } + + /** + * Additional details message about the screening result + * + * @return detailsMessage + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDetailsMessage() { + return detailsMessage; + } + + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDetailsMessage(@jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + } + + public TRLinkResult customerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + return this; + } + + /** + * Customer integration identifier + * + * @return customerIntegrationId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerIntegrationId() { + return customerIntegrationId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + } + + public TRLinkResult customerShortName(@jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + return this; + } + + /** + * Customer short name + * + * @return customerShortName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerShortName() { + return customerShortName; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerShortName(@jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + } + + public TRLinkResult travelRuleMessageId( + @jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + return this; + } + + /** + * Travel rule message identifier for linking + * + * @return travelRuleMessageId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTravelRuleMessageId() { + return travelRuleMessageId; + } + + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTravelRuleMessageId(@jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + } + + public TRLinkResult result(@jakarta.annotation.Nullable TRLinkProviderResultWithRule result) { + this.result = result; + return this; + } + + /** + * Get result + * + * @return result + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkProviderResultWithRule getResult() { + return result; + } + + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setResult(@jakarta.annotation.Nullable TRLinkProviderResultWithRule result) { + this.result = result; + } + + public TRLinkResult matchedPrescreeningRule( + @jakarta.annotation.Nullable TRLinkPreScreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + return this; + } + + /** + * Get matchedPrescreeningRule + * + * @return matchedPrescreeningRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkPreScreeningRule getMatchedPrescreeningRule() { + return matchedPrescreeningRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedPrescreeningRule( + @jakarta.annotation.Nullable TRLinkPreScreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + } + + public TRLinkResult matchedNoTrmScreeningRule( + @jakarta.annotation.Nullable TRLinkMissingTrmDecision matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; + return this; + } + + /** + * Get matchedNoTrmScreeningRule + * + * @return matchedNoTrmScreeningRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkMissingTrmDecision getMatchedNoTrmScreeningRule() { + return matchedNoTrmScreeningRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedNoTrmScreeningRule( + @jakarta.annotation.Nullable TRLinkMissingTrmDecision matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; + } + + /** Return true if this TRLinkResult object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkResult trLinkResult = (TRLinkResult) o; + return Objects.equals(this.provider, trLinkResult.provider) + && Objects.equals(this.timestamp, trLinkResult.timestamp) + && Objects.equals(this.status, trLinkResult.status) + && Objects.equals(this.verdict, trLinkResult.verdict) + && Objects.equals(this.destAddress, trLinkResult.destAddress) + && Objects.equals(this.destTag, trLinkResult.destTag) + && Objects.equals(this.bypassReason, trLinkResult.bypassReason) + && Objects.equals(this.detailsMessage, trLinkResult.detailsMessage) + && Objects.equals(this.customerIntegrationId, trLinkResult.customerIntegrationId) + && Objects.equals(this.customerShortName, trLinkResult.customerShortName) + && Objects.equals(this.travelRuleMessageId, trLinkResult.travelRuleMessageId) + && Objects.equals(this.result, trLinkResult.result) + && Objects.equals( + this.matchedPrescreeningRule, trLinkResult.matchedPrescreeningRule) + && Objects.equals( + this.matchedNoTrmScreeningRule, trLinkResult.matchedNoTrmScreeningRule); + } + + @Override + public int hashCode() { + return Objects.hash( + provider, + timestamp, + status, + verdict, + destAddress, + destTag, + bypassReason, + detailsMessage, + customerIntegrationId, + customerShortName, + travelRuleMessageId, + result, + matchedPrescreeningRule, + matchedNoTrmScreeningRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkResult {\n"); + sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); + sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" verdict: ").append(toIndentedString(verdict)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" destTag: ").append(toIndentedString(destTag)).append("\n"); + sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); + sb.append(" detailsMessage: ").append(toIndentedString(detailsMessage)).append("\n"); + sb.append(" customerIntegrationId: ") + .append(toIndentedString(customerIntegrationId)) + .append("\n"); + sb.append(" customerShortName: ") + .append(toIndentedString(customerShortName)) + .append("\n"); + sb.append(" travelRuleMessageId: ") + .append(toIndentedString(travelRuleMessageId)) + .append("\n"); + sb.append(" result: ").append(toIndentedString(result)).append("\n"); + sb.append(" matchedPrescreeningRule: ") + .append(toIndentedString(matchedPrescreeningRule)) + .append("\n"); + sb.append(" matchedNoTrmScreeningRule: ") + .append(toIndentedString(matchedNoTrmScreeningRule)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `provider` to the URL query string + if (getProvider() != null) { + joiner.add( + String.format( + "%sprovider%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProvider())))); + } + + // add `timestamp` to the URL query string + if (getTimestamp() != null) { + joiner.add( + String.format( + "%stimestamp%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + } + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `verdict` to the URL query string + if (getVerdict() != null) { + joiner.add( + String.format( + "%sverdict%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getVerdict())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `destTag` to the URL query string + if (getDestTag() != null) { + joiner.add( + String.format( + "%sdestTag%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestTag())))); + } + + // add `bypassReason` to the URL query string + if (getBypassReason() != null) { + joiner.add( + String.format( + "%sbypassReason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + } + + // add `detailsMessage` to the URL query string + if (getDetailsMessage() != null) { + joiner.add( + String.format( + "%sdetailsMessage%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDetailsMessage())))); + } + + // add `customerIntegrationId` to the URL query string + if (getCustomerIntegrationId() != null) { + joiner.add( + String.format( + "%scustomerIntegrationId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getCustomerIntegrationId())))); + } + + // add `customerShortName` to the URL query string + if (getCustomerShortName() != null) { + joiner.add( + String.format( + "%scustomerShortName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerShortName())))); + } + + // add `travelRuleMessageId` to the URL query string + if (getTravelRuleMessageId() != null) { + joiner.add( + String.format( + "%stravelRuleMessageId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTravelRuleMessageId())))); + } + + // add `result` to the URL query string + if (getResult() != null) { + joiner.add(getResult().toUrlQueryString(prefix + "result" + suffix)); + } + + // add `matchedPrescreeningRule` to the URL query string + if (getMatchedPrescreeningRule() != null) { + joiner.add( + getMatchedPrescreeningRule() + .toUrlQueryString(prefix + "matchedPrescreeningRule" + suffix)); + } + + // add `matchedNoTrmScreeningRule` to the URL query string + if (getMatchedNoTrmScreeningRule() != null) { + joiner.add( + getMatchedNoTrmScreeningRule() + .toUrlQueryString(prefix + "matchedNoTrmScreeningRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkResultFullPayload.java b/src/main/java/com/fireblocks/sdk/model/TRLinkResultFullPayload.java new file mode 100644 index 00000000..2a8449d9 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkResultFullPayload.java @@ -0,0 +1,736 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** TRLink screening result */ +@JsonPropertyOrder({ + TRLinkResultFullPayload.JSON_PROPERTY_PROVIDER, + TRLinkResultFullPayload.JSON_PROPERTY_TIMESTAMP, + TRLinkResultFullPayload.JSON_PROPERTY_STATUS, + TRLinkResultFullPayload.JSON_PROPERTY_VERDICT, + TRLinkResultFullPayload.JSON_PROPERTY_DEST_ADDRESS, + TRLinkResultFullPayload.JSON_PROPERTY_DEST_TAG, + TRLinkResultFullPayload.JSON_PROPERTY_BYPASS_REASON, + TRLinkResultFullPayload.JSON_PROPERTY_DETAILS_MESSAGE, + TRLinkResultFullPayload.JSON_PROPERTY_CUSTOMER_INTEGRATION_ID, + TRLinkResultFullPayload.JSON_PROPERTY_CUSTOMER_SHORT_NAME, + TRLinkResultFullPayload.JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID, + TRLinkResultFullPayload.JSON_PROPERTY_RESULT, + TRLinkResultFullPayload.JSON_PROPERTY_MATCHED_PRESCREENING_RULE, + TRLinkResultFullPayload.JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkResultFullPayload { + public static final String JSON_PROPERTY_PROVIDER = "provider"; + @jakarta.annotation.Nonnull private String provider; + + public static final String JSON_PROPERTY_TIMESTAMP = "timestamp"; + @jakarta.annotation.Nonnull private BigDecimal timestamp; + + /** Status of the TRLink screening */ + public enum StatusEnum { + COMPLETED(String.valueOf("COMPLETED")), + + PENDING(String.valueOf("PENDING")), + + BYPASSED(String.valueOf("BYPASSED")), + + FAILED(String.valueOf("FAILED")), + + FROZEN(String.valueOf("FROZEN")); + + private String value; + + StatusEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static StatusEnum fromValue(String value) { + for (StatusEnum b : StatusEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nonnull private StatusEnum status; + + public static final String JSON_PROPERTY_VERDICT = "verdict"; + @jakarta.annotation.Nullable private TRLinkVerdictEnum verdict; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_DEST_TAG = "destTag"; + @jakarta.annotation.Nullable private String destTag; + + public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; + @jakarta.annotation.Nullable private String bypassReason; + + public static final String JSON_PROPERTY_DETAILS_MESSAGE = "detailsMessage"; + @jakarta.annotation.Nullable private String detailsMessage; + + public static final String JSON_PROPERTY_CUSTOMER_INTEGRATION_ID = "customerIntegrationId"; + @jakarta.annotation.Nullable private String customerIntegrationId; + + public static final String JSON_PROPERTY_CUSTOMER_SHORT_NAME = "customerShortName"; + @jakarta.annotation.Nullable private String customerShortName; + + public static final String JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID = "travelRuleMessageId"; + @jakarta.annotation.Nullable private String travelRuleMessageId; + + public static final String JSON_PROPERTY_RESULT = "result"; + @jakarta.annotation.Nullable private TRLinkProviderResultWithRule2 result; + + public static final String JSON_PROPERTY_MATCHED_PRESCREENING_RULE = "matchedPrescreeningRule"; + @jakarta.annotation.Nullable private ScreeningTRLinkPrescreeningRule matchedPrescreeningRule; + + public static final String JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE = + "matchedNoTrmScreeningRule"; + + @jakarta.annotation.Nullable + private ScreeningTRLinkMissingTrmDecision matchedNoTrmScreeningRule; + + public TRLinkResultFullPayload() {} + + @JsonCreator + public TRLinkResultFullPayload( + @JsonProperty(value = JSON_PROPERTY_PROVIDER, required = true) String provider, + @JsonProperty(value = JSON_PROPERTY_TIMESTAMP, required = true) BigDecimal timestamp, + @JsonProperty(value = JSON_PROPERTY_STATUS, required = true) StatusEnum status) { + this.provider = provider; + this.timestamp = timestamp; + this.status = status; + } + + public TRLinkResultFullPayload provider(@jakarta.annotation.Nonnull String provider) { + this.provider = provider; + return this; + } + + /** + * The TRLink provider name + * + * @return provider + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getProvider() { + return provider; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setProvider(@jakarta.annotation.Nonnull String provider) { + this.provider = provider; + } + + public TRLinkResultFullPayload timestamp(@jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + return this; + } + + /** + * Unix timestamp of the screening result + * + * @return timestamp + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public BigDecimal getTimestamp() { + return timestamp; + } + + @JsonProperty(JSON_PROPERTY_TIMESTAMP) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTimestamp(@jakarta.annotation.Nonnull BigDecimal timestamp) { + this.timestamp = timestamp; + } + + public TRLinkResultFullPayload status(@jakarta.annotation.Nonnull StatusEnum status) { + this.status = status; + return this; + } + + /** + * Status of the TRLink screening + * + * @return status + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public StatusEnum getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setStatus(@jakarta.annotation.Nonnull StatusEnum status) { + this.status = status; + } + + public TRLinkResultFullPayload verdict(@jakarta.annotation.Nullable TRLinkVerdictEnum verdict) { + this.verdict = verdict; + return this; + } + + /** + * Get verdict + * + * @return verdict + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkVerdictEnum getVerdict() { + return verdict; + } + + @JsonProperty(JSON_PROPERTY_VERDICT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setVerdict(@jakarta.annotation.Nullable TRLinkVerdictEnum verdict) { + this.verdict = verdict; + } + + public TRLinkResultFullPayload destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * The destination address associated with the TRLink screening + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TRLinkResultFullPayload destTag(@jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + return this; + } + + /** + * Destination tag for the screening + * + * @return destTag + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestTag() { + return destTag; + } + + @JsonProperty(JSON_PROPERTY_DEST_TAG) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestTag(@jakarta.annotation.Nullable String destTag) { + this.destTag = destTag; + } + + public TRLinkResultFullPayload bypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + return this; + } + + /** + * Reason for bypassing the TRLink screening + * + * @return bypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBypassReason() { + return bypassReason; + } + + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + } + + public TRLinkResultFullPayload detailsMessage( + @jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + return this; + } + + /** + * Additional details message about the screening result + * + * @return detailsMessage + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDetailsMessage() { + return detailsMessage; + } + + @JsonProperty(JSON_PROPERTY_DETAILS_MESSAGE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDetailsMessage(@jakarta.annotation.Nullable String detailsMessage) { + this.detailsMessage = detailsMessage; + } + + public TRLinkResultFullPayload customerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + return this; + } + + /** + * Customer integration identifier + * + * @return customerIntegrationId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerIntegrationId() { + return customerIntegrationId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_INTEGRATION_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerIntegrationId( + @jakarta.annotation.Nullable String customerIntegrationId) { + this.customerIntegrationId = customerIntegrationId; + } + + public TRLinkResultFullPayload customerShortName( + @jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + return this; + } + + /** + * Customer short name + * + * @return customerShortName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerShortName() { + return customerShortName; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_SHORT_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerShortName(@jakarta.annotation.Nullable String customerShortName) { + this.customerShortName = customerShortName; + } + + public TRLinkResultFullPayload travelRuleMessageId( + @jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + return this; + } + + /** + * Travel rule message identifier for linking + * + * @return travelRuleMessageId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getTravelRuleMessageId() { + return travelRuleMessageId; + } + + @JsonProperty(JSON_PROPERTY_TRAVEL_RULE_MESSAGE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTravelRuleMessageId(@jakarta.annotation.Nullable String travelRuleMessageId) { + this.travelRuleMessageId = travelRuleMessageId; + } + + public TRLinkResultFullPayload result( + @jakarta.annotation.Nullable TRLinkProviderResultWithRule2 result) { + this.result = result; + return this; + } + + /** + * Get result + * + * @return result + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkProviderResultWithRule2 getResult() { + return result; + } + + @JsonProperty(JSON_PROPERTY_RESULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setResult(@jakarta.annotation.Nullable TRLinkProviderResultWithRule2 result) { + this.result = result; + } + + public TRLinkResultFullPayload matchedPrescreeningRule( + @jakarta.annotation.Nullable ScreeningTRLinkPrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + return this; + } + + /** + * Get matchedPrescreeningRule + * + * @return matchedPrescreeningRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkPrescreeningRule getMatchedPrescreeningRule() { + return matchedPrescreeningRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_PRESCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedPrescreeningRule( + @jakarta.annotation.Nullable ScreeningTRLinkPrescreeningRule matchedPrescreeningRule) { + this.matchedPrescreeningRule = matchedPrescreeningRule; + } + + public TRLinkResultFullPayload matchedNoTrmScreeningRule( + @jakarta.annotation.Nullable + ScreeningTRLinkMissingTrmDecision matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; + return this; + } + + /** + * Get matchedNoTrmScreeningRule + * + * @return matchedNoTrmScreeningRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public ScreeningTRLinkMissingTrmDecision getMatchedNoTrmScreeningRule() { + return matchedNoTrmScreeningRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_NO_TRM_SCREENING_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedNoTrmScreeningRule( + @jakarta.annotation.Nullable + ScreeningTRLinkMissingTrmDecision matchedNoTrmScreeningRule) { + this.matchedNoTrmScreeningRule = matchedNoTrmScreeningRule; + } + + /** Return true if this TRLinkResultFullPayload object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkResultFullPayload trLinkResultFullPayload = (TRLinkResultFullPayload) o; + return Objects.equals(this.provider, trLinkResultFullPayload.provider) + && Objects.equals(this.timestamp, trLinkResultFullPayload.timestamp) + && Objects.equals(this.status, trLinkResultFullPayload.status) + && Objects.equals(this.verdict, trLinkResultFullPayload.verdict) + && Objects.equals(this.destAddress, trLinkResultFullPayload.destAddress) + && Objects.equals(this.destTag, trLinkResultFullPayload.destTag) + && Objects.equals(this.bypassReason, trLinkResultFullPayload.bypassReason) + && Objects.equals(this.detailsMessage, trLinkResultFullPayload.detailsMessage) + && Objects.equals( + this.customerIntegrationId, trLinkResultFullPayload.customerIntegrationId) + && Objects.equals(this.customerShortName, trLinkResultFullPayload.customerShortName) + && Objects.equals( + this.travelRuleMessageId, trLinkResultFullPayload.travelRuleMessageId) + && Objects.equals(this.result, trLinkResultFullPayload.result) + && Objects.equals( + this.matchedPrescreeningRule, + trLinkResultFullPayload.matchedPrescreeningRule) + && Objects.equals( + this.matchedNoTrmScreeningRule, + trLinkResultFullPayload.matchedNoTrmScreeningRule); + } + + @Override + public int hashCode() { + return Objects.hash( + provider, + timestamp, + status, + verdict, + destAddress, + destTag, + bypassReason, + detailsMessage, + customerIntegrationId, + customerShortName, + travelRuleMessageId, + result, + matchedPrescreeningRule, + matchedNoTrmScreeningRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkResultFullPayload {\n"); + sb.append(" provider: ").append(toIndentedString(provider)).append("\n"); + sb.append(" timestamp: ").append(toIndentedString(timestamp)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" verdict: ").append(toIndentedString(verdict)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" destTag: ").append(toIndentedString(destTag)).append("\n"); + sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); + sb.append(" detailsMessage: ").append(toIndentedString(detailsMessage)).append("\n"); + sb.append(" customerIntegrationId: ") + .append(toIndentedString(customerIntegrationId)) + .append("\n"); + sb.append(" customerShortName: ") + .append(toIndentedString(customerShortName)) + .append("\n"); + sb.append(" travelRuleMessageId: ") + .append(toIndentedString(travelRuleMessageId)) + .append("\n"); + sb.append(" result: ").append(toIndentedString(result)).append("\n"); + sb.append(" matchedPrescreeningRule: ") + .append(toIndentedString(matchedPrescreeningRule)) + .append("\n"); + sb.append(" matchedNoTrmScreeningRule: ") + .append(toIndentedString(matchedNoTrmScreeningRule)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `provider` to the URL query string + if (getProvider() != null) { + joiner.add( + String.format( + "%sprovider%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getProvider())))); + } + + // add `timestamp` to the URL query string + if (getTimestamp() != null) { + joiner.add( + String.format( + "%stimestamp%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTimestamp())))); + } + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `verdict` to the URL query string + if (getVerdict() != null) { + joiner.add( + String.format( + "%sverdict%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getVerdict())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `destTag` to the URL query string + if (getDestTag() != null) { + joiner.add( + String.format( + "%sdestTag%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestTag())))); + } + + // add `bypassReason` to the URL query string + if (getBypassReason() != null) { + joiner.add( + String.format( + "%sbypassReason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + } + + // add `detailsMessage` to the URL query string + if (getDetailsMessage() != null) { + joiner.add( + String.format( + "%sdetailsMessage%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDetailsMessage())))); + } + + // add `customerIntegrationId` to the URL query string + if (getCustomerIntegrationId() != null) { + joiner.add( + String.format( + "%scustomerIntegrationId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getCustomerIntegrationId())))); + } + + // add `customerShortName` to the URL query string + if (getCustomerShortName() != null) { + joiner.add( + String.format( + "%scustomerShortName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerShortName())))); + } + + // add `travelRuleMessageId` to the URL query string + if (getTravelRuleMessageId() != null) { + joiner.add( + String.format( + "%stravelRuleMessageId%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTravelRuleMessageId())))); + } + + // add `result` to the URL query string + if (getResult() != null) { + joiner.add(getResult().toUrlQueryString(prefix + "result" + suffix)); + } + + // add `matchedPrescreeningRule` to the URL query string + if (getMatchedPrescreeningRule() != null) { + joiner.add( + getMatchedPrescreeningRule() + .toUrlQueryString(prefix + "matchedPrescreeningRule" + suffix)); + } + + // add `matchedNoTrmScreeningRule` to the URL query string + if (getMatchedNoTrmScreeningRule() != null) { + joiner.add( + getMatchedNoTrmScreeningRule() + .toUrlQueryString(prefix + "matchedNoTrmScreeningRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkRuleBase.java b/src/main/java/com/fireblocks/sdk/model/TRLinkRuleBase.java new file mode 100644 index 00000000..62142f45 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkRuleBase.java @@ -0,0 +1,781 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** Base interface for TRLink policy rules */ +@JsonPropertyOrder({ + TRLinkRuleBase.JSON_PROPERTY_CUSTOMER_ID, + TRLinkRuleBase.JSON_PROPERTY_DIRECTION, + TRLinkRuleBase.JSON_PROPERTY_SOURCE_TYPE, + TRLinkRuleBase.JSON_PROPERTY_SOURCE_SUB_TYPE, + TRLinkRuleBase.JSON_PROPERTY_SOURCE_ADDRESS, + TRLinkRuleBase.JSON_PROPERTY_DEST_TYPE, + TRLinkRuleBase.JSON_PROPERTY_DEST_SUB_TYPE, + TRLinkRuleBase.JSON_PROPERTY_DEST_ADDRESS, + TRLinkRuleBase.JSON_PROPERTY_SOURCE_ID, + TRLinkRuleBase.JSON_PROPERTY_DEST_ID, + TRLinkRuleBase.JSON_PROPERTY_ASSET, + TRLinkRuleBase.JSON_PROPERTY_BASE_ASSET, + TRLinkRuleBase.JSON_PROPERTY_AMOUNT, + TRLinkRuleBase.JSON_PROPERTY_NETWORK_PROTOCOL, + TRLinkRuleBase.JSON_PROPERTY_OPERATION, + TRLinkRuleBase.JSON_PROPERTY_DESCRIPTION, + TRLinkRuleBase.JSON_PROPERTY_IS_DEFAULT +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TRLinkRuleBase { + public static final String JSON_PROPERTY_CUSTOMER_ID = "customerId"; + @jakarta.annotation.Nullable private String customerId; + + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TransactionDirection direction; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_SOURCE_ADDRESS = "sourceAddress"; + @jakarta.annotation.Nullable private String sourceAddress; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private TRLinkAmount amount; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_DESCRIPTION = "description"; + @jakarta.annotation.Nullable private String description; + + public static final String JSON_PROPERTY_IS_DEFAULT = "isDefault"; + @jakarta.annotation.Nullable private Boolean isDefault = false; + + public TRLinkRuleBase() {} + + public TRLinkRuleBase customerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + return this; + } + + /** + * Reference to TrlinkCustomer.id + * + * @return customerId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getCustomerId() { + return customerId; + } + + @JsonProperty(JSON_PROPERTY_CUSTOMER_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setCustomerId(@jakarta.annotation.Nullable String customerId) { + this.customerId = customerId; + } + + public TRLinkRuleBase direction(@jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionDirection getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TransactionDirection direction) { + this.direction = direction; + } + + public TRLinkRuleBase sourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public TRLinkRuleBase sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public TRLinkRuleBase sourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + return this; + } + + /** + * Source address + * + * @return sourceAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceAddress() { + return sourceAddress; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceAddress(@jakarta.annotation.Nullable String sourceAddress) { + this.sourceAddress = sourceAddress; + } + + public TRLinkRuleBase destType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public TRLinkRuleBase destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public TRLinkRuleBase destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TRLinkRuleBase sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public TRLinkRuleBase destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public TRLinkRuleBase asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset symbol + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public TRLinkRuleBase baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset symbol + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public TRLinkRuleBase amount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + return this; + } + + /** + * Get amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TRLinkAmount getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable TRLinkAmount amount) { + this.amount = amount; + } + + public TRLinkRuleBase networkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public TRLinkRuleBase operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public TRLinkRuleBase description(@jakarta.annotation.Nullable String description) { + this.description = description; + return this; + } + + /** + * Rule description + * + * @return description + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDescription() { + return description; + } + + @JsonProperty(JSON_PROPERTY_DESCRIPTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDescription(@jakarta.annotation.Nullable String description) { + this.description = description; + } + + public TRLinkRuleBase isDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + return this; + } + + /** + * Whether this is a default rule + * + * @return isDefault + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsDefault() { + return isDefault; + } + + @JsonProperty(JSON_PROPERTY_IS_DEFAULT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsDefault(@jakarta.annotation.Nullable Boolean isDefault) { + this.isDefault = isDefault; + } + + /** Return true if this TRLinkRuleBase object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TRLinkRuleBase trLinkRuleBase = (TRLinkRuleBase) o; + return Objects.equals(this.customerId, trLinkRuleBase.customerId) + && Objects.equals(this.direction, trLinkRuleBase.direction) + && Objects.equals(this.sourceType, trLinkRuleBase.sourceType) + && Objects.equals(this.sourceSubType, trLinkRuleBase.sourceSubType) + && Objects.equals(this.sourceAddress, trLinkRuleBase.sourceAddress) + && Objects.equals(this.destType, trLinkRuleBase.destType) + && Objects.equals(this.destSubType, trLinkRuleBase.destSubType) + && Objects.equals(this.destAddress, trLinkRuleBase.destAddress) + && Objects.equals(this.sourceId, trLinkRuleBase.sourceId) + && Objects.equals(this.destId, trLinkRuleBase.destId) + && Objects.equals(this.asset, trLinkRuleBase.asset) + && Objects.equals(this.baseAsset, trLinkRuleBase.baseAsset) + && Objects.equals(this.amount, trLinkRuleBase.amount) + && Objects.equals(this.networkProtocol, trLinkRuleBase.networkProtocol) + && Objects.equals(this.operation, trLinkRuleBase.operation) + && Objects.equals(this.description, trLinkRuleBase.description) + && Objects.equals(this.isDefault, trLinkRuleBase.isDefault); + } + + @Override + public int hashCode() { + return Objects.hash( + customerId, + direction, + sourceType, + sourceSubType, + sourceAddress, + destType, + destSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + networkProtocol, + operation, + description, + isDefault); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TRLinkRuleBase {\n"); + sb.append(" customerId: ").append(toIndentedString(customerId)).append("\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" sourceAddress: ").append(toIndentedString(sourceAddress)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isDefault: ").append(toIndentedString(isDefault)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `customerId` to the URL query string + if (getCustomerId() != null) { + joiner.add( + String.format( + "%scustomerId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getCustomerId())))); + } + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `sourceAddress` to the URL query string + if (getSourceAddress() != null) { + joiner.add( + String.format( + "%ssourceAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceAddress())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add(getAmount().toUrlQueryString(prefix + "amount" + suffix)); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `description` to the URL query string + if (getDescription() != null) { + joiner.add( + String.format( + "%sdescription%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); + } + + // add `isDefault` to the URL query string + if (getIsDefault() != null) { + joiner.add( + String.format( + "%sisDefault%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsDefault())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatus.java b/src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatus.java new file mode 100644 index 00000000..e054ca0b --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatus.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink TRM screening status */ +public enum TRLinkTrmScreeningStatus { + PENDING("PENDING"), + + ACCEPTED("ACCEPTED"), + + REJECTED("REJECTED"), + + FAILED("FAILED"); + + private String value; + + TRLinkTrmScreeningStatus(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkTrmScreeningStatus fromValue(String value) { + for (TRLinkTrmScreeningStatus b : TRLinkTrmScreeningStatus.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnum.java b/src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnum.java new file mode 100644 index 00000000..aefd41fd --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnum.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink TRM screening status */ +public enum TRLinkTrmScreeningStatusEnum { + PENDING("PENDING"), + + ACCEPTED("ACCEPTED"), + + REJECTED("REJECTED"), + + FAILED("FAILED"); + + private String value; + + TRLinkTrmScreeningStatusEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkTrmScreeningStatusEnum fromValue(String value) { + for (TRLinkTrmScreeningStatusEnum b : TRLinkTrmScreeningStatusEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkVerdict.java b/src/main/java/com/fireblocks/sdk/model/TRLinkVerdict.java new file mode 100644 index 00000000..8dd364d3 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkVerdict.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink verdict after screening */ +public enum TRLinkVerdict { + ACCEPT("ACCEPT"), + + ALERT("ALERT"), + + REJECT("REJECT"), + + WAIT("WAIT"); + + private String value; + + TRLinkVerdict(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkVerdict fromValue(String value) { + for (TRLinkVerdict b : TRLinkVerdict.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TRLinkVerdictEnum.java b/src/main/java/com/fireblocks/sdk/model/TRLinkVerdictEnum.java new file mode 100644 index 00000000..f0483ff7 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TRLinkVerdictEnum.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** TRLink verdict after screening */ +public enum TRLinkVerdictEnum { + ACCEPT("ACCEPT"), + + ALERT("ALERT"), + + REJECT("REJECT"), + + WAIT("WAIT"); + + private String value; + + TRLinkVerdictEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TRLinkVerdictEnum fromValue(String value) { + for (TRLinkVerdictEnum b : TRLinkVerdictEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/Tag.java b/src/main/java/com/fireblocks/sdk/model/Tag.java index d1e04470..ab184058 100644 --- a/src/main/java/com/fireblocks/sdk/model/Tag.java +++ b/src/main/java/com/fireblocks/sdk/model/Tag.java @@ -23,7 +23,14 @@ import java.util.UUID; /** Tag */ -@JsonPropertyOrder({Tag.JSON_PROPERTY_ID, Tag.JSON_PROPERTY_LABEL, Tag.JSON_PROPERTY_DESCRIPTION}) +@JsonPropertyOrder({ + Tag.JSON_PROPERTY_ID, + Tag.JSON_PROPERTY_LABEL, + Tag.JSON_PROPERTY_DESCRIPTION, + Tag.JSON_PROPERTY_IS_PROTECTED, + Tag.JSON_PROPERTY_COLOR, + Tag.JSON_PROPERTY_UPDATED_AT +}) @jakarta.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", comments = "Generator version: 7.14.0") @@ -37,6 +44,15 @@ public class Tag { public static final String JSON_PROPERTY_DESCRIPTION = "description"; @jakarta.annotation.Nullable private String description; + public static final String JSON_PROPERTY_IS_PROTECTED = "isProtected"; + @jakarta.annotation.Nullable private Boolean isProtected; + + public static final String JSON_PROPERTY_COLOR = "color"; + @jakarta.annotation.Nullable private String color; + + public static final String JSON_PROPERTY_UPDATED_AT = "updatedAt"; + @jakarta.annotation.Nullable private String updatedAt; + public Tag() {} @JsonCreator @@ -116,6 +132,75 @@ public void setDescription(@jakarta.annotation.Nullable String description) { this.description = description; } + public Tag isProtected(@jakarta.annotation.Nullable Boolean isProtected) { + this.isProtected = isProtected; + return this; + } + + /** + * Whether the tag is protected + * + * @return isProtected + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_PROTECTED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsProtected() { + return isProtected; + } + + @JsonProperty(JSON_PROPERTY_IS_PROTECTED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsProtected(@jakarta.annotation.Nullable Boolean isProtected) { + this.isProtected = isProtected; + } + + public Tag color(@jakarta.annotation.Nullable String color) { + this.color = color; + return this; + } + + /** + * The color of the tag in hex format + * + * @return color + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_COLOR) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getColor() { + return color; + } + + @JsonProperty(JSON_PROPERTY_COLOR) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setColor(@jakarta.annotation.Nullable String color) { + this.color = color; + } + + public Tag updatedAt(@jakarta.annotation.Nullable String updatedAt) { + this.updatedAt = updatedAt; + return this; + } + + /** + * The date and time the tag was last updated + * + * @return updatedAt + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_UPDATED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getUpdatedAt() { + return updatedAt; + } + + @JsonProperty(JSON_PROPERTY_UPDATED_AT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setUpdatedAt(@jakarta.annotation.Nullable String updatedAt) { + this.updatedAt = updatedAt; + } + /** Return true if this Tag object is equal to o. */ @Override public boolean equals(Object o) { @@ -128,12 +213,15 @@ public boolean equals(Object o) { Tag tag = (Tag) o; return Objects.equals(this.id, tag.id) && Objects.equals(this.label, tag.label) - && Objects.equals(this.description, tag.description); + && Objects.equals(this.description, tag.description) + && Objects.equals(this.isProtected, tag.isProtected) + && Objects.equals(this.color, tag.color) + && Objects.equals(this.updatedAt, tag.updatedAt); } @Override public int hashCode() { - return Objects.hash(id, label, description); + return Objects.hash(id, label, description, isProtected, color, updatedAt); } @Override @@ -143,6 +231,9 @@ public String toString() { sb.append(" id: ").append(toIndentedString(id)).append("\n"); sb.append(" label: ").append(toIndentedString(label)).append("\n"); sb.append(" description: ").append(toIndentedString(description)).append("\n"); + sb.append(" isProtected: ").append(toIndentedString(isProtected)).append("\n"); + sb.append(" color: ").append(toIndentedString(color)).append("\n"); + sb.append(" updatedAt: ").append(toIndentedString(updatedAt)).append("\n"); sb.append("}"); return sb.toString(); } @@ -218,6 +309,36 @@ public String toUrlQueryString(String prefix) { ApiClient.urlEncode(ApiClient.valueToString(getDescription())))); } + // add `isProtected` to the URL query string + if (getIsProtected() != null) { + joiner.add( + String.format( + "%sisProtected%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsProtected())))); + } + + // add `color` to the URL query string + if (getColor() != null) { + joiner.add( + String.format( + "%scolor%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getColor())))); + } + + // add `updatedAt` to the URL query string + if (getUpdatedAt() != null) { + joiner.add( + String.format( + "%supdatedAt%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getUpdatedAt())))); + } + return joiner.toString(); } } diff --git a/src/main/java/com/fireblocks/sdk/model/TagAttachmentOperationAction.java b/src/main/java/com/fireblocks/sdk/model/TagAttachmentOperationAction.java new file mode 100644 index 00000000..29569af7 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TagAttachmentOperationAction.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Gets or Sets TagAttachmentOperationAction */ +public enum TagAttachmentOperationAction { + ATTACH("ATTACH"), + + DETACH("DETACH"); + + private String value; + + TagAttachmentOperationAction(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TagAttachmentOperationAction fromValue(String value) { + for (TagAttachmentOperationAction b : TagAttachmentOperationAction.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TransactionDirection.java b/src/main/java/com/fireblocks/sdk/model/TransactionDirection.java new file mode 100644 index 00000000..061e5a5e --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TransactionDirection.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Transaction direction */ +public enum TransactionDirection { + INBOUND("INBOUND"), + + OUTBOUND("OUTBOUND"); + + private String value; + + TransactionDirection(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TransactionDirection fromValue(String value) { + for (TransactionDirection b : TransactionDirection.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TransactionOperationEnum.java b/src/main/java/com/fireblocks/sdk/model/TransactionOperationEnum.java new file mode 100644 index 00000000..98fb5bc2 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TransactionOperationEnum.java @@ -0,0 +1,88 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Transaction operation type */ +public enum TransactionOperationEnum { + TRANSFER("TRANSFER"), + + BURN("BURN"), + + CONTRACT_CALL("CONTRACT_CALL"), + + MINT("MINT"), + + RAW("RAW"), + + TYPED_MESSAGE("TYPED_MESSAGE"), + + ENABLE_ASSET("ENABLE_ASSET"), + + STAKE("STAKE"), + + UNSTAKE("UNSTAKE"), + + WITHDRAW("WITHDRAW"), + + REDEEM_FROM_COMPOUND("REDEEM_FROM_COMPOUND"), + + SUPPLY_TO_COMPOUND("SUPPLY_TO_COMPOUND"), + + PROGRAM_CALL("PROGRAM_CALL"), + + APPROVE("APPROVE"); + + private String value; + + TransactionOperationEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TransactionOperationEnum fromValue(String value) { + for (TransactionOperationEnum b : TransactionOperationEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnum.java b/src/main/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnum.java new file mode 100644 index 00000000..77a194fb --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnum.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Transfer peer sub-type for prescreening rules */ +public enum TransferPeerSubTypeEnum { + EXTERNAL("EXTERNAL"), + + INTERNAL("INTERNAL"), + + CONTRACT("CONTRACT"), + + EXCHANGETEST("EXCHANGETEST"); + + private String value; + + TransferPeerSubTypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TransferPeerSubTypeEnum fromValue(String value) { + for (TransferPeerSubTypeEnum b : TransferPeerSubTypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TransferPeerTypeEnum.java b/src/main/java/com/fireblocks/sdk/model/TransferPeerTypeEnum.java new file mode 100644 index 00000000..c0314aac --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TransferPeerTypeEnum.java @@ -0,0 +1,88 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Transfer peer type (source or destination) */ +public enum TransferPeerTypeEnum { + VAULT_ACCOUNT("VAULT_ACCOUNT"), + + EXCHANGE_ACCOUNT("EXCHANGE_ACCOUNT"), + + INTERNAL_WALLET("INTERNAL_WALLET"), + + EXTERNAL_WALLET("EXTERNAL_WALLET"), + + CONTRACT("CONTRACT"), + + NETWORK_CONNECTION("NETWORK_CONNECTION"), + + FIAT_ACCOUNT("FIAT_ACCOUNT"), + + COMPOUND("COMPOUND"), + + GAS_STATION("GAS_STATION"), + + ONE_TIME_ADDRESS("ONE_TIME_ADDRESS"), + + UNKNOWN("UNKNOWN"), + + END_USER_WALLET("END_USER_WALLET"), + + PROGRAM_CALL("PROGRAM_CALL"), + + MULTI_DESTINATION("MULTI_DESTINATION"); + + private String value; + + TransferPeerTypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TransferPeerTypeEnum fromValue(String value) { + for (TransferPeerTypeEnum b : TransferPeerTypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleActionEnum.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleActionEnum.java new file mode 100644 index 00000000..0577c432 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleActionEnum.java @@ -0,0 +1,66 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Travel rule action */ +public enum TravelRuleActionEnum { + SCREEN("SCREEN"), + + BYPASS("BYPASS"), + + BLOCK("BLOCK"); + + private String value; + + TravelRuleActionEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TravelRuleActionEnum fromValue(String value) { + for (TravelRuleActionEnum b : TravelRuleActionEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleDirectionEnum.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleDirectionEnum.java new file mode 100644 index 00000000..621dffcf --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleDirectionEnum.java @@ -0,0 +1,64 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Travel rule direction */ +public enum TravelRuleDirectionEnum { + INBOUND("INBOUND"), + + OUTBOUND("OUTBOUND"); + + private String value; + + TravelRuleDirectionEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TravelRuleDirectionEnum fromValue(String value) { + for (TravelRuleDirectionEnum b : TravelRuleDirectionEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleMatchedRule.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleMatchedRule.java new file mode 100644 index 00000000..f994b266 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleMatchedRule.java @@ -0,0 +1,338 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** The travel rule configuration that was matched */ +@JsonPropertyOrder({ + TravelRuleMatchedRule.JSON_PROPERTY_DIRECTION, + TravelRuleMatchedRule.JSON_PROPERTY_STATUS, + TravelRuleMatchedRule.JSON_PROPERTY_AMOUNT_U_S_D, + TravelRuleMatchedRule.JSON_PROPERTY_AMOUNT, + TravelRuleMatchedRule.JSON_PROPERTY_ASSET, + TravelRuleMatchedRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TravelRuleMatchedRule { + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_STATUS = "status"; + @jakarta.annotation.Nullable private TravelRuleStatusEnum status; + + public static final String JSON_PROPERTY_AMOUNT_U_S_D = "amountUSD"; + @jakarta.annotation.Nullable private BigDecimal amountUSD; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private BigDecimal amount; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private TravelRuleVerdictEnum action; + + public TravelRuleMatchedRule() {} + + public TravelRuleMatchedRule direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public TravelRuleMatchedRule status(@jakarta.annotation.Nullable TravelRuleStatusEnum status) { + this.status = status; + return this; + } + + /** + * Get status + * + * @return status + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleStatusEnum getStatus() { + return status; + } + + @JsonProperty(JSON_PROPERTY_STATUS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setStatus(@jakarta.annotation.Nullable TravelRuleStatusEnum status) { + this.status = status; + } + + public TravelRuleMatchedRule amountUSD(@jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + return this; + } + + /** + * Amount in USD + * + * @return amountUSD + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmountUSD() { + return amountUSD; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmountUSD(@jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + } + + public TravelRuleMatchedRule amount(@jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + return this; + } + + /** + * Amount in base currency + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + } + + public TravelRuleMatchedRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset identifier + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public TravelRuleMatchedRule action(@jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleVerdictEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + } + + /** Return true if this TravelRuleMatchedRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TravelRuleMatchedRule travelRuleMatchedRule = (TravelRuleMatchedRule) o; + return Objects.equals(this.direction, travelRuleMatchedRule.direction) + && Objects.equals(this.status, travelRuleMatchedRule.status) + && Objects.equals(this.amountUSD, travelRuleMatchedRule.amountUSD) + && Objects.equals(this.amount, travelRuleMatchedRule.amount) + && Objects.equals(this.asset, travelRuleMatchedRule.asset) + && Objects.equals(this.action, travelRuleMatchedRule.action); + } + + @Override + public int hashCode() { + return Objects.hash(direction, status, amountUSD, amount, asset, action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TravelRuleMatchedRule {\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" status: ").append(toIndentedString(status)).append("\n"); + sb.append(" amountUSD: ").append(toIndentedString(amountUSD)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `status` to the URL query string + if (getStatus() != null) { + joiner.add( + String.format( + "%sstatus%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getStatus())))); + } + + // add `amountUSD` to the URL query string + if (getAmountUSD() != null) { + joiner.add( + String.format( + "%samountUSD%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmountUSD())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add( + String.format( + "%samount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmount())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRulePrescreeningRule.java b/src/main/java/com/fireblocks/sdk/model/TravelRulePrescreeningRule.java new file mode 100644 index 00000000..d34bc3cf --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TravelRulePrescreeningRule.java @@ -0,0 +1,804 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.math.BigDecimal; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * Matched prescreening rule details. Prescreening rules are evaluated before the main screening to + * determine if screening is necessary or should be bypassed. + */ +@JsonPropertyOrder({ + TravelRulePrescreeningRule.JSON_PROPERTY_BYPASS_REASON, + TravelRulePrescreeningRule.JSON_PROPERTY_SOURCE_TYPE, + TravelRulePrescreeningRule.JSON_PROPERTY_SOURCE_SUB_TYPE, + TravelRulePrescreeningRule.JSON_PROPERTY_DEST_TYPE, + TravelRulePrescreeningRule.JSON_PROPERTY_DEST_SUB_TYPE, + TravelRulePrescreeningRule.JSON_PROPERTY_TRANSFER_PEER_TYPE, + TravelRulePrescreeningRule.JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE, + TravelRulePrescreeningRule.JSON_PROPERTY_DEST_ADDRESS, + TravelRulePrescreeningRule.JSON_PROPERTY_SOURCE_ID, + TravelRulePrescreeningRule.JSON_PROPERTY_DEST_ID, + TravelRulePrescreeningRule.JSON_PROPERTY_ASSET, + TravelRulePrescreeningRule.JSON_PROPERTY_BASE_ASSET, + TravelRulePrescreeningRule.JSON_PROPERTY_AMOUNT, + TravelRulePrescreeningRule.JSON_PROPERTY_AMOUNT_U_S_D, + TravelRulePrescreeningRule.JSON_PROPERTY_NETWORK_PROTOCOL, + TravelRulePrescreeningRule.JSON_PROPERTY_OPERATION, + TravelRulePrescreeningRule.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TravelRulePrescreeningRule { + public static final String JSON_PROPERTY_BYPASS_REASON = "bypassReason"; + @jakarta.annotation.Nullable private String bypassReason; + + public static final String JSON_PROPERTY_SOURCE_TYPE = "sourceType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum sourceType; + + public static final String JSON_PROPERTY_SOURCE_SUB_TYPE = "sourceSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum sourceSubType; + + public static final String JSON_PROPERTY_DEST_TYPE = "destType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum destType; + + public static final String JSON_PROPERTY_DEST_SUB_TYPE = "destSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum destSubType; + + public static final String JSON_PROPERTY_TRANSFER_PEER_TYPE = "transferPeerType"; + @jakarta.annotation.Nullable private TransferPeerTypeEnum transferPeerType; + + public static final String JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE = "transferPeerSubType"; + @jakarta.annotation.Nullable private TransferPeerSubTypeEnum transferPeerSubType; + + public static final String JSON_PROPERTY_DEST_ADDRESS = "destAddress"; + @jakarta.annotation.Nullable private String destAddress; + + public static final String JSON_PROPERTY_SOURCE_ID = "sourceId"; + @jakarta.annotation.Nullable private String sourceId; + + public static final String JSON_PROPERTY_DEST_ID = "destId"; + @jakarta.annotation.Nullable private String destId; + + public static final String JSON_PROPERTY_ASSET = "asset"; + @jakarta.annotation.Nullable private String asset; + + public static final String JSON_PROPERTY_BASE_ASSET = "baseAsset"; + @jakarta.annotation.Nullable private String baseAsset; + + public static final String JSON_PROPERTY_AMOUNT = "amount"; + @jakarta.annotation.Nullable private BigDecimal amount; + + public static final String JSON_PROPERTY_AMOUNT_U_S_D = "amountUSD"; + @jakarta.annotation.Nullable private BigDecimal amountUSD; + + public static final String JSON_PROPERTY_NETWORK_PROTOCOL = "networkProtocol"; + @jakarta.annotation.Nullable private String networkProtocol; + + public static final String JSON_PROPERTY_OPERATION = "operation"; + @jakarta.annotation.Nullable private TransactionOperationEnum operation; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private TravelRuleActionEnum action; + + public TravelRulePrescreeningRule() {} + + public TravelRulePrescreeningRule bypassReason( + @jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + return this; + } + + /** + * Reason for bypass if prescreening rule triggered a bypass + * + * @return bypassReason + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBypassReason() { + return bypassReason; + } + + @JsonProperty(JSON_PROPERTY_BYPASS_REASON) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBypassReason(@jakarta.annotation.Nullable String bypassReason) { + this.bypassReason = bypassReason; + } + + public TravelRulePrescreeningRule sourceType( + @jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + return this; + } + + /** + * Get sourceType + * + * @return sourceType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getSourceType() { + return sourceType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceType(@jakarta.annotation.Nullable TransferPeerTypeEnum sourceType) { + this.sourceType = sourceType; + } + + public TravelRulePrescreeningRule sourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + return this; + } + + /** + * Get sourceSubType + * + * @return sourceSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getSourceSubType() { + return sourceSubType; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum sourceSubType) { + this.sourceSubType = sourceSubType; + } + + public TravelRulePrescreeningRule destType( + @jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + return this; + } + + /** + * Get destType + * + * @return destType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getDestType() { + return destType; + } + + @JsonProperty(JSON_PROPERTY_DEST_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestType(@jakarta.annotation.Nullable TransferPeerTypeEnum destType) { + this.destType = destType; + } + + public TravelRulePrescreeningRule destSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + return this; + } + + /** + * Get destSubType + * + * @return destSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getDestSubType() { + return destSubType; + } + + @JsonProperty(JSON_PROPERTY_DEST_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestSubType(@jakarta.annotation.Nullable TransferPeerSubTypeEnum destSubType) { + this.destSubType = destSubType; + } + + public TravelRulePrescreeningRule transferPeerType( + @jakarta.annotation.Nullable TransferPeerTypeEnum transferPeerType) { + this.transferPeerType = transferPeerType; + return this; + } + + /** + * Get transferPeerType + * + * @return transferPeerType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerTypeEnum getTransferPeerType() { + return transferPeerType; + } + + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTransferPeerType( + @jakarta.annotation.Nullable TransferPeerTypeEnum transferPeerType) { + this.transferPeerType = transferPeerType; + } + + public TravelRulePrescreeningRule transferPeerSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum transferPeerSubType) { + this.transferPeerSubType = transferPeerSubType; + return this; + } + + /** + * Get transferPeerSubType + * + * @return transferPeerSubType + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransferPeerSubTypeEnum getTransferPeerSubType() { + return transferPeerSubType; + } + + @JsonProperty(JSON_PROPERTY_TRANSFER_PEER_SUB_TYPE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTransferPeerSubType( + @jakarta.annotation.Nullable TransferPeerSubTypeEnum transferPeerSubType) { + this.transferPeerSubType = transferPeerSubType; + } + + public TravelRulePrescreeningRule destAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + return this; + } + + /** + * Destination address + * + * @return destAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestAddress() { + return destAddress; + } + + @JsonProperty(JSON_PROPERTY_DEST_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestAddress(@jakarta.annotation.Nullable String destAddress) { + this.destAddress = destAddress; + } + + public TravelRulePrescreeningRule sourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + return this; + } + + /** + * Source ID + * + * @return sourceId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getSourceId() { + return sourceId; + } + + @JsonProperty(JSON_PROPERTY_SOURCE_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setSourceId(@jakarta.annotation.Nullable String sourceId) { + this.sourceId = sourceId; + } + + public TravelRulePrescreeningRule destId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + return this; + } + + /** + * Destination ID + * + * @return destId + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getDestId() { + return destId; + } + + @JsonProperty(JSON_PROPERTY_DEST_ID) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDestId(@jakarta.annotation.Nullable String destId) { + this.destId = destId; + } + + public TravelRulePrescreeningRule asset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + return this; + } + + /** + * Asset identifier + * + * @return asset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getAsset() { + return asset; + } + + @JsonProperty(JSON_PROPERTY_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAsset(@jakarta.annotation.Nullable String asset) { + this.asset = asset; + } + + public TravelRulePrescreeningRule baseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + return this; + } + + /** + * Base asset + * + * @return baseAsset + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBaseAsset() { + return baseAsset; + } + + @JsonProperty(JSON_PROPERTY_BASE_ASSET) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBaseAsset(@jakarta.annotation.Nullable String baseAsset) { + this.baseAsset = baseAsset; + } + + public TravelRulePrescreeningRule amount(@jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + return this; + } + + /** + * Amount + * + * @return amount + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmount() { + return amount; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmount(@jakarta.annotation.Nullable BigDecimal amount) { + this.amount = amount; + } + + public TravelRulePrescreeningRule amountUSD(@jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + return this; + } + + /** + * Amount in USD + * + * @return amountUSD + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public BigDecimal getAmountUSD() { + return amountUSD; + } + + @JsonProperty(JSON_PROPERTY_AMOUNT_U_S_D) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAmountUSD(@jakarta.annotation.Nullable BigDecimal amountUSD) { + this.amountUSD = amountUSD; + } + + public TravelRulePrescreeningRule networkProtocol( + @jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + return this; + } + + /** + * Network protocol + * + * @return networkProtocol + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getNetworkProtocol() { + return networkProtocol; + } + + @JsonProperty(JSON_PROPERTY_NETWORK_PROTOCOL) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setNetworkProtocol(@jakarta.annotation.Nullable String networkProtocol) { + this.networkProtocol = networkProtocol; + } + + public TravelRulePrescreeningRule operation( + @jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + return this; + } + + /** + * Get operation + * + * @return operation + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TransactionOperationEnum getOperation() { + return operation; + } + + @JsonProperty(JSON_PROPERTY_OPERATION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setOperation(@jakarta.annotation.Nullable TransactionOperationEnum operation) { + this.operation = operation; + } + + public TravelRulePrescreeningRule action( + @jakarta.annotation.Nullable TravelRuleActionEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleActionEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable TravelRuleActionEnum action) { + this.action = action; + } + + /** Return true if this TravelRulePrescreeningRule object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TravelRulePrescreeningRule travelRulePrescreeningRule = (TravelRulePrescreeningRule) o; + return Objects.equals(this.bypassReason, travelRulePrescreeningRule.bypassReason) + && Objects.equals(this.sourceType, travelRulePrescreeningRule.sourceType) + && Objects.equals(this.sourceSubType, travelRulePrescreeningRule.sourceSubType) + && Objects.equals(this.destType, travelRulePrescreeningRule.destType) + && Objects.equals(this.destSubType, travelRulePrescreeningRule.destSubType) + && Objects.equals( + this.transferPeerType, travelRulePrescreeningRule.transferPeerType) + && Objects.equals( + this.transferPeerSubType, travelRulePrescreeningRule.transferPeerSubType) + && Objects.equals(this.destAddress, travelRulePrescreeningRule.destAddress) + && Objects.equals(this.sourceId, travelRulePrescreeningRule.sourceId) + && Objects.equals(this.destId, travelRulePrescreeningRule.destId) + && Objects.equals(this.asset, travelRulePrescreeningRule.asset) + && Objects.equals(this.baseAsset, travelRulePrescreeningRule.baseAsset) + && Objects.equals(this.amount, travelRulePrescreeningRule.amount) + && Objects.equals(this.amountUSD, travelRulePrescreeningRule.amountUSD) + && Objects.equals(this.networkProtocol, travelRulePrescreeningRule.networkProtocol) + && Objects.equals(this.operation, travelRulePrescreeningRule.operation) + && Objects.equals(this.action, travelRulePrescreeningRule.action); + } + + @Override + public int hashCode() { + return Objects.hash( + bypassReason, + sourceType, + sourceSubType, + destType, + destSubType, + transferPeerType, + transferPeerSubType, + destAddress, + sourceId, + destId, + asset, + baseAsset, + amount, + amountUSD, + networkProtocol, + operation, + action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TravelRulePrescreeningRule {\n"); + sb.append(" bypassReason: ").append(toIndentedString(bypassReason)).append("\n"); + sb.append(" sourceType: ").append(toIndentedString(sourceType)).append("\n"); + sb.append(" sourceSubType: ").append(toIndentedString(sourceSubType)).append("\n"); + sb.append(" destType: ").append(toIndentedString(destType)).append("\n"); + sb.append(" destSubType: ").append(toIndentedString(destSubType)).append("\n"); + sb.append(" transferPeerType: ").append(toIndentedString(transferPeerType)).append("\n"); + sb.append(" transferPeerSubType: ") + .append(toIndentedString(transferPeerSubType)) + .append("\n"); + sb.append(" destAddress: ").append(toIndentedString(destAddress)).append("\n"); + sb.append(" sourceId: ").append(toIndentedString(sourceId)).append("\n"); + sb.append(" destId: ").append(toIndentedString(destId)).append("\n"); + sb.append(" asset: ").append(toIndentedString(asset)).append("\n"); + sb.append(" baseAsset: ").append(toIndentedString(baseAsset)).append("\n"); + sb.append(" amount: ").append(toIndentedString(amount)).append("\n"); + sb.append(" amountUSD: ").append(toIndentedString(amountUSD)).append("\n"); + sb.append(" networkProtocol: ").append(toIndentedString(networkProtocol)).append("\n"); + sb.append(" operation: ").append(toIndentedString(operation)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `bypassReason` to the URL query string + if (getBypassReason() != null) { + joiner.add( + String.format( + "%sbypassReason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBypassReason())))); + } + + // add `sourceType` to the URL query string + if (getSourceType() != null) { + joiner.add( + String.format( + "%ssourceType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceType())))); + } + + // add `sourceSubType` to the URL query string + if (getSourceSubType() != null) { + joiner.add( + String.format( + "%ssourceSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceSubType())))); + } + + // add `destType` to the URL query string + if (getDestType() != null) { + joiner.add( + String.format( + "%sdestType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestType())))); + } + + // add `destSubType` to the URL query string + if (getDestSubType() != null) { + joiner.add( + String.format( + "%sdestSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestSubType())))); + } + + // add `transferPeerType` to the URL query string + if (getTransferPeerType() != null) { + joiner.add( + String.format( + "%stransferPeerType%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTransferPeerType())))); + } + + // add `transferPeerSubType` to the URL query string + if (getTransferPeerSubType() != null) { + joiner.add( + String.format( + "%stransferPeerSubType%s=%s", + prefix, + suffix, + ApiClient.urlEncode( + ApiClient.valueToString(getTransferPeerSubType())))); + } + + // add `destAddress` to the URL query string + if (getDestAddress() != null) { + joiner.add( + String.format( + "%sdestAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestAddress())))); + } + + // add `sourceId` to the URL query string + if (getSourceId() != null) { + joiner.add( + String.format( + "%ssourceId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getSourceId())))); + } + + // add `destId` to the URL query string + if (getDestId() != null) { + joiner.add( + String.format( + "%sdestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDestId())))); + } + + // add `asset` to the URL query string + if (getAsset() != null) { + joiner.add( + String.format( + "%sasset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAsset())))); + } + + // add `baseAsset` to the URL query string + if (getBaseAsset() != null) { + joiner.add( + String.format( + "%sbaseAsset%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBaseAsset())))); + } + + // add `amount` to the URL query string + if (getAmount() != null) { + joiner.add( + String.format( + "%samount%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmount())))); + } + + // add `amountUSD` to the URL query string + if (getAmountUSD() != null) { + joiner.add( + String.format( + "%samountUSD%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAmountUSD())))); + } + + // add `networkProtocol` to the URL query string + if (getNetworkProtocol() != null) { + joiner.add( + String.format( + "%snetworkProtocol%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getNetworkProtocol())))); + } + + // add `operation` to the URL query string + if (getOperation() != null) { + joiner.add( + String.format( + "%soperation%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getOperation())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleResult.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleResult.java new file mode 100644 index 00000000..22653a61 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleResult.java @@ -0,0 +1,322 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.HashMap; +import java.util.Map; +import java.util.Objects; +import java.util.StringJoiner; + +/** + * Detailed Travel Rule screening result containing provider-specific data. Contains Travel Rule + * specific information like verified status, rule type, and actions. + */ +@JsonPropertyOrder({ + TravelRuleResult.JSON_PROPERTY_DIRECTION, + TravelRuleResult.JSON_PROPERTY_IS_VERIFIED, + TravelRuleResult.JSON_PROPERTY_ACTION, + TravelRuleResult.JSON_PROPERTY_PROVIDER_RESPONSE, + TravelRuleResult.JSON_PROPERTY_MATCHED_RULE +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class TravelRuleResult { + public static final String JSON_PROPERTY_DIRECTION = "direction"; + @jakarta.annotation.Nullable private TravelRuleDirectionEnum direction; + + public static final String JSON_PROPERTY_IS_VERIFIED = "isVerified"; + @jakarta.annotation.Nullable private Boolean isVerified; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nullable private TravelRuleVerdictEnum action; + + public static final String JSON_PROPERTY_PROVIDER_RESPONSE = "providerResponse"; + @jakarta.annotation.Nullable private Map providerResponse; + + public static final String JSON_PROPERTY_MATCHED_RULE = "matchedRule"; + @jakarta.annotation.Nullable private TravelRuleMatchedRule matchedRule; + + public TravelRuleResult() {} + + public TravelRuleResult direction( + @jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + return this; + } + + /** + * Get direction + * + * @return direction + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleDirectionEnum getDirection() { + return direction; + } + + @JsonProperty(JSON_PROPERTY_DIRECTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setDirection(@jakarta.annotation.Nullable TravelRuleDirectionEnum direction) { + this.direction = direction; + } + + public TravelRuleResult isVerified(@jakarta.annotation.Nullable Boolean isVerified) { + this.isVerified = isVerified; + return this; + } + + /** + * Whether the travel rule information was verified + * + * @return isVerified + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_IS_VERIFIED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public Boolean getIsVerified() { + return isVerified; + } + + @JsonProperty(JSON_PROPERTY_IS_VERIFIED) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setIsVerified(@jakarta.annotation.Nullable Boolean isVerified) { + this.isVerified = isVerified; + } + + public TravelRuleResult action(@jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleVerdictEnum getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAction(@jakarta.annotation.Nullable TravelRuleVerdictEnum action) { + this.action = action; + } + + public TravelRuleResult providerResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + return this; + } + + public TravelRuleResult putProviderResponseItem(String key, Object providerResponseItem) { + if (this.providerResponse == null) { + this.providerResponse = new HashMap<>(); + } + this.providerResponse.put(key, providerResponseItem); + return this; + } + + /** + * Complete response from the travel rule provider. This is a dynamic object that varies + * significantly between different travel rule providers (NOTABENE etc.). Each provider has + * their own proprietary response format and schema. Examples of provider-specific structures: - + * NOTABENE: Contains VASP information, PII data, protocol-specific fields The structure is + * provider-dependent and cannot be standardized as each vendor implements their own proprietary + * data models and response formats. + * + * @return providerResponse + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public Map getProviderResponse() { + return providerResponse; + } + + @JsonProperty(JSON_PROPERTY_PROVIDER_RESPONSE) + @JsonInclude(content = JsonInclude.Include.ALWAYS, value = JsonInclude.Include.USE_DEFAULTS) + public void setProviderResponse( + @jakarta.annotation.Nullable Map providerResponse) { + this.providerResponse = providerResponse; + } + + public TravelRuleResult matchedRule( + @jakarta.annotation.Nullable TravelRuleMatchedRule matchedRule) { + this.matchedRule = matchedRule; + return this; + } + + /** + * Get matchedRule + * + * @return matchedRule + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public TravelRuleMatchedRule getMatchedRule() { + return matchedRule; + } + + @JsonProperty(JSON_PROPERTY_MATCHED_RULE) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setMatchedRule(@jakarta.annotation.Nullable TravelRuleMatchedRule matchedRule) { + this.matchedRule = matchedRule; + } + + /** Return true if this TravelRuleResult object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TravelRuleResult travelRuleResult = (TravelRuleResult) o; + return Objects.equals(this.direction, travelRuleResult.direction) + && Objects.equals(this.isVerified, travelRuleResult.isVerified) + && Objects.equals(this.action, travelRuleResult.action) + && Objects.equals(this.providerResponse, travelRuleResult.providerResponse) + && Objects.equals(this.matchedRule, travelRuleResult.matchedRule); + } + + @Override + public int hashCode() { + return Objects.hash(direction, isVerified, action, providerResponse, matchedRule); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class TravelRuleResult {\n"); + sb.append(" direction: ").append(toIndentedString(direction)).append("\n"); + sb.append(" isVerified: ").append(toIndentedString(isVerified)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append(" providerResponse: ").append(toIndentedString(providerResponse)).append("\n"); + sb.append(" matchedRule: ").append(toIndentedString(matchedRule)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `direction` to the URL query string + if (getDirection() != null) { + joiner.add( + String.format( + "%sdirection%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getDirection())))); + } + + // add `isVerified` to the URL query string + if (getIsVerified() != null) { + joiner.add( + String.format( + "%sisVerified%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getIsVerified())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + // add `providerResponse` to the URL query string + if (getProviderResponse() != null) { + for (String _key : getProviderResponse().keySet()) { + joiner.add( + String.format( + "%sproviderResponse%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, _key, containerSuffix), + getProviderResponse().get(_key), + ApiClient.urlEncode( + ApiClient.valueToString(getProviderResponse().get(_key))))); + } + } + + // add `matchedRule` to the URL query string + if (getMatchedRule() != null) { + joiner.add(getMatchedRule().toUrlQueryString(prefix + "matchedRule" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleStatusEnum.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleStatusEnum.java new file mode 100644 index 00000000..e33929a2 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleStatusEnum.java @@ -0,0 +1,70 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** Travel rule status */ +public enum TravelRuleStatusEnum { + COMPLETED("COMPLETED"), + + PENDING("PENDING"), + + BYPASSED("BYPASSED"), + + FAILED("FAILED"), + + FROZEN("FROZEN"); + + private String value; + + TravelRuleStatusEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TravelRuleStatusEnum fromValue(String value) { + for (TravelRuleStatusEnum b : TravelRuleStatusEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/TravelRuleVerdictEnum.java b/src/main/java/com/fireblocks/sdk/model/TravelRuleVerdictEnum.java new file mode 100644 index 00000000..a3bfaa13 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/TravelRuleVerdictEnum.java @@ -0,0 +1,68 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonValue; + +/** The final verdict of the travel rule screening */ +public enum TravelRuleVerdictEnum { + ACCEPT("ACCEPT"), + + REJECT("REJECT"), + + ALERT("ALERT"), + + REVIEW("REVIEW"); + + private String value; + + TravelRuleVerdictEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TravelRuleVerdictEnum fromValue(String value) { + for (TravelRuleVerdictEnum b : TravelRuleVerdictEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + if (prefix == null) { + prefix = ""; + } + + return String.format("%s=%s", prefix, this.toString()); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/USWireAddress.java b/src/main/java/com/fireblocks/sdk/model/USWireAddress.java new file mode 100644 index 00000000..f2324782 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/USWireAddress.java @@ -0,0 +1,309 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** USWireAddress */ +@JsonPropertyOrder({ + USWireAddress.JSON_PROPERTY_ACCOUNT_HOLDER, + USWireAddress.JSON_PROPERTY_BANK_NAME, + USWireAddress.JSON_PROPERTY_BANK_ACCOUNT_NUMBER, + USWireAddress.JSON_PROPERTY_ROUTING_NUMBER, + USWireAddress.JSON_PROPERTY_BANK_ADDRESS +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class USWireAddress { + public static final String JSON_PROPERTY_ACCOUNT_HOLDER = "accountHolder"; + @jakarta.annotation.Nonnull private AccountHolderDetails accountHolder; + + public static final String JSON_PROPERTY_BANK_NAME = "bankName"; + @jakarta.annotation.Nullable private String bankName; + + public static final String JSON_PROPERTY_BANK_ACCOUNT_NUMBER = "bankAccountNumber"; + @jakarta.annotation.Nonnull private String bankAccountNumber; + + public static final String JSON_PROPERTY_ROUTING_NUMBER = "routingNumber"; + @jakarta.annotation.Nonnull private String routingNumber; + + public static final String JSON_PROPERTY_BANK_ADDRESS = "bankAddress"; + @jakarta.annotation.Nullable private String bankAddress; + + public USWireAddress() {} + + @JsonCreator + public USWireAddress( + @JsonProperty(value = JSON_PROPERTY_ACCOUNT_HOLDER, required = true) + AccountHolderDetails accountHolder, + @JsonProperty(value = JSON_PROPERTY_BANK_ACCOUNT_NUMBER, required = true) + String bankAccountNumber, + @JsonProperty(value = JSON_PROPERTY_ROUTING_NUMBER, required = true) + String routingNumber) { + this.accountHolder = accountHolder; + this.bankAccountNumber = bankAccountNumber; + this.routingNumber = routingNumber; + } + + public USWireAddress accountHolder( + @jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + return this; + } + + /** + * Get accountHolder + * + * @return accountHolder + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public AccountHolderDetails getAccountHolder() { + return accountHolder; + } + + @JsonProperty(JSON_PROPERTY_ACCOUNT_HOLDER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAccountHolder(@jakarta.annotation.Nonnull AccountHolderDetails accountHolder) { + this.accountHolder = accountHolder; + } + + public USWireAddress bankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + return this; + } + + /** + * Name of the bank. + * + * @return bankName + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankName() { + return bankName; + } + + @JsonProperty(JSON_PROPERTY_BANK_NAME) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankName(@jakarta.annotation.Nullable String bankName) { + this.bankName = bankName; + } + + public USWireAddress bankAccountNumber(@jakarta.annotation.Nonnull String bankAccountNumber) { + this.bankAccountNumber = bankAccountNumber; + return this; + } + + /** + * The bank account number for the wire transfer. + * + * @return bankAccountNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_BANK_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getBankAccountNumber() { + return bankAccountNumber; + } + + @JsonProperty(JSON_PROPERTY_BANK_ACCOUNT_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setBankAccountNumber(@jakarta.annotation.Nonnull String bankAccountNumber) { + this.bankAccountNumber = bankAccountNumber; + } + + public USWireAddress routingNumber(@jakarta.annotation.Nonnull String routingNumber) { + this.routingNumber = routingNumber; + return this; + } + + /** + * Routing number identifying the bank account. + * + * @return routingNumber + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ROUTING_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getRoutingNumber() { + return routingNumber; + } + + @JsonProperty(JSON_PROPERTY_ROUTING_NUMBER) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setRoutingNumber(@jakarta.annotation.Nonnull String routingNumber) { + this.routingNumber = routingNumber; + } + + public USWireAddress bankAddress(@jakarta.annotation.Nullable String bankAddress) { + this.bankAddress = bankAddress; + return this; + } + + /** + * Address of the bank. + * + * @return bankAddress + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_BANK_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public String getBankAddress() { + return bankAddress; + } + + @JsonProperty(JSON_PROPERTY_BANK_ADDRESS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setBankAddress(@jakarta.annotation.Nullable String bankAddress) { + this.bankAddress = bankAddress; + } + + /** Return true if this USWireAddress object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + USWireAddress usWireAddress = (USWireAddress) o; + return Objects.equals(this.accountHolder, usWireAddress.accountHolder) + && Objects.equals(this.bankName, usWireAddress.bankName) + && Objects.equals(this.bankAccountNumber, usWireAddress.bankAccountNumber) + && Objects.equals(this.routingNumber, usWireAddress.routingNumber) + && Objects.equals(this.bankAddress, usWireAddress.bankAddress); + } + + @Override + public int hashCode() { + return Objects.hash(accountHolder, bankName, bankAccountNumber, routingNumber, bankAddress); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class USWireAddress {\n"); + sb.append(" accountHolder: ").append(toIndentedString(accountHolder)).append("\n"); + sb.append(" bankName: ").append(toIndentedString(bankName)).append("\n"); + sb.append(" bankAccountNumber: ") + .append(toIndentedString(bankAccountNumber)) + .append("\n"); + sb.append(" routingNumber: ").append(toIndentedString(routingNumber)).append("\n"); + sb.append(" bankAddress: ").append(toIndentedString(bankAddress)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `accountHolder` to the URL query string + if (getAccountHolder() != null) { + joiner.add(getAccountHolder().toUrlQueryString(prefix + "accountHolder" + suffix)); + } + + // add `bankName` to the URL query string + if (getBankName() != null) { + joiner.add( + String.format( + "%sbankName%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankName())))); + } + + // add `bankAccountNumber` to the URL query string + if (getBankAccountNumber() != null) { + joiner.add( + String.format( + "%sbankAccountNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankAccountNumber())))); + } + + // add `routingNumber` to the URL query string + if (getRoutingNumber() != null) { + joiner.add( + String.format( + "%sroutingNumber%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getRoutingNumber())))); + } + + // add `bankAddress` to the URL query string + if (getBankAddress() != null) { + joiner.add( + String.format( + "%sbankAddress%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getBankAddress())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/USWireDestination.java b/src/main/java/com/fireblocks/sdk/model/USWireDestination.java new file mode 100644 index 00000000..56576a4e --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/USWireDestination.java @@ -0,0 +1,213 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** USWireDestination */ +@JsonPropertyOrder({USWireDestination.JSON_PROPERTY_TYPE, USWireDestination.JSON_PROPERTY_ADDRESS}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class USWireDestination { + /** Gets or Sets type */ + public enum TypeEnum { + US_WIRE(String.valueOf("US_WIRE")); + + private String value; + + TypeEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static TypeEnum fromValue(String value) { + for (TypeEnum b : TypeEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_TYPE = "type"; + @jakarta.annotation.Nonnull private TypeEnum type; + + public static final String JSON_PROPERTY_ADDRESS = "address"; + @jakarta.annotation.Nonnull private USWireAddress address; + + public USWireDestination() {} + + @JsonCreator + public USWireDestination( + @JsonProperty(value = JSON_PROPERTY_TYPE, required = true) TypeEnum type, + @JsonProperty(value = JSON_PROPERTY_ADDRESS, required = true) USWireAddress address) { + this.type = type; + this.address = address; + } + + public USWireDestination type(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + return this; + } + + /** + * Get type + * + * @return type + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TypeEnum getType() { + return type; + } + + @JsonProperty(JSON_PROPERTY_TYPE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setType(@jakarta.annotation.Nonnull TypeEnum type) { + this.type = type; + } + + public USWireDestination address(@jakarta.annotation.Nonnull USWireAddress address) { + this.address = address; + return this; + } + + /** + * Get address + * + * @return address + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public USWireAddress getAddress() { + return address; + } + + @JsonProperty(JSON_PROPERTY_ADDRESS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAddress(@jakarta.annotation.Nonnull USWireAddress address) { + this.address = address; + } + + /** Return true if this USWireDestination object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + USWireDestination usWireDestination = (USWireDestination) o; + return Objects.equals(this.type, usWireDestination.type) + && Objects.equals(this.address, usWireDestination.address); + } + + @Override + public int hashCode() { + return Objects.hash(type, address); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class USWireDestination {\n"); + sb.append(" type: ").append(toIndentedString(type)).append("\n"); + sb.append(" address: ").append(toIndentedString(address)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `type` to the URL query string + if (getType() != null) { + joiner.add( + String.format( + "%stype%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getType())))); + } + + // add `address` to the URL query string + if (getAddress() != null) { + joiner.add(getAddress().toUrlQueryString(prefix + "address" + suffix)); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperation.java b/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperation.java new file mode 100644 index 00000000..6e324755 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperation.java @@ -0,0 +1,237 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; +import java.util.UUID; + +/** VaultAccountTagAttachmentOperation */ +@JsonPropertyOrder({ + VaultAccountTagAttachmentOperation.JSON_PROPERTY_VAULT_ACCOUNT_ID, + VaultAccountTagAttachmentOperation.JSON_PROPERTY_TAG_ID, + VaultAccountTagAttachmentOperation.JSON_PROPERTY_ACTION +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class VaultAccountTagAttachmentOperation { + public static final String JSON_PROPERTY_VAULT_ACCOUNT_ID = "vaultAccountId"; + @jakarta.annotation.Nonnull private String vaultAccountId; + + public static final String JSON_PROPERTY_TAG_ID = "tagId"; + @jakarta.annotation.Nonnull private UUID tagId; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TagAttachmentOperationAction action; + + public VaultAccountTagAttachmentOperation() {} + + @JsonCreator + public VaultAccountTagAttachmentOperation( + @JsonProperty(value = JSON_PROPERTY_VAULT_ACCOUNT_ID, required = true) + String vaultAccountId, + @JsonProperty(value = JSON_PROPERTY_TAG_ID, required = true) UUID tagId, + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TagAttachmentOperationAction action) { + this.vaultAccountId = vaultAccountId; + this.tagId = tagId; + this.action = action; + } + + public VaultAccountTagAttachmentOperation vaultAccountId( + @jakarta.annotation.Nonnull String vaultAccountId) { + this.vaultAccountId = vaultAccountId; + return this; + } + + /** + * The ID of the vault account + * + * @return vaultAccountId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getVaultAccountId() { + return vaultAccountId; + } + + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setVaultAccountId(@jakarta.annotation.Nonnull String vaultAccountId) { + this.vaultAccountId = vaultAccountId; + } + + public VaultAccountTagAttachmentOperation tagId(@jakarta.annotation.Nonnull UUID tagId) { + this.tagId = tagId; + return this; + } + + /** + * Tag ID + * + * @return tagId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TAG_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public UUID getTagId() { + return tagId; + } + + @JsonProperty(JSON_PROPERTY_TAG_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTagId(@jakarta.annotation.Nonnull UUID tagId) { + this.tagId = tagId; + } + + public VaultAccountTagAttachmentOperation action( + @jakarta.annotation.Nonnull TagAttachmentOperationAction action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TagAttachmentOperationAction getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TagAttachmentOperationAction action) { + this.action = action; + } + + /** Return true if this VaultAccountTagAttachmentOperation object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VaultAccountTagAttachmentOperation vaultAccountTagAttachmentOperation = + (VaultAccountTagAttachmentOperation) o; + return Objects.equals( + this.vaultAccountId, vaultAccountTagAttachmentOperation.vaultAccountId) + && Objects.equals(this.tagId, vaultAccountTagAttachmentOperation.tagId) + && Objects.equals(this.action, vaultAccountTagAttachmentOperation.action); + } + + @Override + public int hashCode() { + return Objects.hash(vaultAccountId, tagId, action); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VaultAccountTagAttachmentOperation {\n"); + sb.append(" vaultAccountId: ").append(toIndentedString(vaultAccountId)).append("\n"); + sb.append(" tagId: ").append(toIndentedString(tagId)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `vaultAccountId` to the URL query string + if (getVaultAccountId() != null) { + joiner.add( + String.format( + "%svaultAccountId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getVaultAccountId())))); + } + + // add `tagId` to the URL query string + if (getTagId() != null) { + joiner.add( + String.format( + "%stagId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTagId())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperation.java b/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperation.java new file mode 100644 index 00000000..4298b161 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperation.java @@ -0,0 +1,285 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; +import java.util.UUID; + +/** VaultAccountTagAttachmentPendingOperation */ +@JsonPropertyOrder({ + VaultAccountTagAttachmentPendingOperation.JSON_PROPERTY_VAULT_ACCOUNT_ID, + VaultAccountTagAttachmentPendingOperation.JSON_PROPERTY_TAG_ID, + VaultAccountTagAttachmentPendingOperation.JSON_PROPERTY_ACTION, + VaultAccountTagAttachmentPendingOperation.JSON_PROPERTY_APPROVAL_REQUEST_ID +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class VaultAccountTagAttachmentPendingOperation { + public static final String JSON_PROPERTY_VAULT_ACCOUNT_ID = "vaultAccountId"; + @jakarta.annotation.Nonnull private String vaultAccountId; + + public static final String JSON_PROPERTY_TAG_ID = "tagId"; + @jakarta.annotation.Nonnull private UUID tagId; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TagAttachmentOperationAction action; + + public static final String JSON_PROPERTY_APPROVAL_REQUEST_ID = "approvalRequestId"; + @jakarta.annotation.Nonnull private String approvalRequestId; + + public VaultAccountTagAttachmentPendingOperation() {} + + @JsonCreator + public VaultAccountTagAttachmentPendingOperation( + @JsonProperty(value = JSON_PROPERTY_VAULT_ACCOUNT_ID, required = true) + String vaultAccountId, + @JsonProperty(value = JSON_PROPERTY_TAG_ID, required = true) UUID tagId, + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TagAttachmentOperationAction action, + @JsonProperty(value = JSON_PROPERTY_APPROVAL_REQUEST_ID, required = true) + String approvalRequestId) { + this.vaultAccountId = vaultAccountId; + this.tagId = tagId; + this.action = action; + this.approvalRequestId = approvalRequestId; + } + + public VaultAccountTagAttachmentPendingOperation vaultAccountId( + @jakarta.annotation.Nonnull String vaultAccountId) { + this.vaultAccountId = vaultAccountId; + return this; + } + + /** + * The ID of the vault account + * + * @return vaultAccountId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getVaultAccountId() { + return vaultAccountId; + } + + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setVaultAccountId(@jakarta.annotation.Nonnull String vaultAccountId) { + this.vaultAccountId = vaultAccountId; + } + + public VaultAccountTagAttachmentPendingOperation tagId(@jakarta.annotation.Nonnull UUID tagId) { + this.tagId = tagId; + return this; + } + + /** + * Tag ID + * + * @return tagId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TAG_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public UUID getTagId() { + return tagId; + } + + @JsonProperty(JSON_PROPERTY_TAG_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTagId(@jakarta.annotation.Nonnull UUID tagId) { + this.tagId = tagId; + } + + public VaultAccountTagAttachmentPendingOperation action( + @jakarta.annotation.Nonnull TagAttachmentOperationAction action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TagAttachmentOperationAction getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TagAttachmentOperationAction action) { + this.action = action; + } + + public VaultAccountTagAttachmentPendingOperation approvalRequestId( + @jakarta.annotation.Nonnull String approvalRequestId) { + this.approvalRequestId = approvalRequestId; + return this; + } + + /** + * Pending approval request ID + * + * @return approvalRequestId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_APPROVAL_REQUEST_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getApprovalRequestId() { + return approvalRequestId; + } + + @JsonProperty(JSON_PROPERTY_APPROVAL_REQUEST_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setApprovalRequestId(@jakarta.annotation.Nonnull String approvalRequestId) { + this.approvalRequestId = approvalRequestId; + } + + /** Return true if this VaultAccountTagAttachmentPendingOperation object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VaultAccountTagAttachmentPendingOperation vaultAccountTagAttachmentPendingOperation = + (VaultAccountTagAttachmentPendingOperation) o; + return Objects.equals( + this.vaultAccountId, + vaultAccountTagAttachmentPendingOperation.vaultAccountId) + && Objects.equals(this.tagId, vaultAccountTagAttachmentPendingOperation.tagId) + && Objects.equals(this.action, vaultAccountTagAttachmentPendingOperation.action) + && Objects.equals( + this.approvalRequestId, + vaultAccountTagAttachmentPendingOperation.approvalRequestId); + } + + @Override + public int hashCode() { + return Objects.hash(vaultAccountId, tagId, action, approvalRequestId); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VaultAccountTagAttachmentPendingOperation {\n"); + sb.append(" vaultAccountId: ").append(toIndentedString(vaultAccountId)).append("\n"); + sb.append(" tagId: ").append(toIndentedString(tagId)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append(" approvalRequestId: ") + .append(toIndentedString(approvalRequestId)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `vaultAccountId` to the URL query string + if (getVaultAccountId() != null) { + joiner.add( + String.format( + "%svaultAccountId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getVaultAccountId())))); + } + + // add `tagId` to the URL query string + if (getTagId() != null) { + joiner.add( + String.format( + "%stagId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTagId())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + // add `approvalRequestId` to the URL query string + if (getApprovalRequestId() != null) { + joiner.add( + String.format( + "%sapprovalRequestId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getApprovalRequestId())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperation.java b/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperation.java new file mode 100644 index 00000000..0600752c --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperation.java @@ -0,0 +1,319 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fasterxml.jackson.annotation.JsonValue; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; +import java.util.UUID; + +/** VaultAccountTagAttachmentRejectedOperation */ +@JsonPropertyOrder({ + VaultAccountTagAttachmentRejectedOperation.JSON_PROPERTY_VAULT_ACCOUNT_ID, + VaultAccountTagAttachmentRejectedOperation.JSON_PROPERTY_TAG_ID, + VaultAccountTagAttachmentRejectedOperation.JSON_PROPERTY_ACTION, + VaultAccountTagAttachmentRejectedOperation.JSON_PROPERTY_REASON +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class VaultAccountTagAttachmentRejectedOperation { + public static final String JSON_PROPERTY_VAULT_ACCOUNT_ID = "vaultAccountId"; + @jakarta.annotation.Nonnull private String vaultAccountId; + + public static final String JSON_PROPERTY_TAG_ID = "tagId"; + @jakarta.annotation.Nonnull private UUID tagId; + + public static final String JSON_PROPERTY_ACTION = "action"; + @jakarta.annotation.Nonnull private TagAttachmentOperationAction action; + + /** Reason for rejection */ + public enum ReasonEnum { + CAPACITY_EXCEEDED(String.valueOf("CAPACITY_EXCEEDED")), + + ATTACHMENT_ALREADY_EXISTS(String.valueOf("ATTACHMENT_ALREADY_EXISTS")), + + ATTACHMENT_DOES_NOT_EXIST(String.valueOf("ATTACHMENT_DOES_NOT_EXIST")), + + PENDING_REQUEST_EXISTS(String.valueOf("PENDING_REQUEST_EXISTS")); + + private String value; + + ReasonEnum(String value) { + this.value = value; + } + + @JsonValue + public String getValue() { + return value; + } + + @Override + public String toString() { + return String.valueOf(value); + } + + @JsonCreator + public static ReasonEnum fromValue(String value) { + for (ReasonEnum b : ReasonEnum.values()) { + if (b.value.equals(value)) { + return b; + } + } + throw new IllegalArgumentException("Unexpected value '" + value + "'"); + } + } + + public static final String JSON_PROPERTY_REASON = "reason"; + @jakarta.annotation.Nonnull private ReasonEnum reason; + + public VaultAccountTagAttachmentRejectedOperation() {} + + @JsonCreator + public VaultAccountTagAttachmentRejectedOperation( + @JsonProperty(value = JSON_PROPERTY_VAULT_ACCOUNT_ID, required = true) + String vaultAccountId, + @JsonProperty(value = JSON_PROPERTY_TAG_ID, required = true) UUID tagId, + @JsonProperty(value = JSON_PROPERTY_ACTION, required = true) + TagAttachmentOperationAction action, + @JsonProperty(value = JSON_PROPERTY_REASON, required = true) ReasonEnum reason) { + this.vaultAccountId = vaultAccountId; + this.tagId = tagId; + this.action = action; + this.reason = reason; + } + + public VaultAccountTagAttachmentRejectedOperation vaultAccountId( + @jakarta.annotation.Nonnull String vaultAccountId) { + this.vaultAccountId = vaultAccountId; + return this; + } + + /** + * The ID of the vault account + * + * @return vaultAccountId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getVaultAccountId() { + return vaultAccountId; + } + + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setVaultAccountId(@jakarta.annotation.Nonnull String vaultAccountId) { + this.vaultAccountId = vaultAccountId; + } + + public VaultAccountTagAttachmentRejectedOperation tagId( + @jakarta.annotation.Nonnull UUID tagId) { + this.tagId = tagId; + return this; + } + + /** + * Tag ID + * + * @return tagId + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_TAG_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public UUID getTagId() { + return tagId; + } + + @JsonProperty(JSON_PROPERTY_TAG_ID) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setTagId(@jakarta.annotation.Nonnull UUID tagId) { + this.tagId = tagId; + } + + public VaultAccountTagAttachmentRejectedOperation action( + @jakarta.annotation.Nonnull TagAttachmentOperationAction action) { + this.action = action; + return this; + } + + /** + * Get action + * + * @return action + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public TagAttachmentOperationAction getAction() { + return action; + } + + @JsonProperty(JSON_PROPERTY_ACTION) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setAction(@jakarta.annotation.Nonnull TagAttachmentOperationAction action) { + this.action = action; + } + + public VaultAccountTagAttachmentRejectedOperation reason( + @jakarta.annotation.Nonnull ReasonEnum reason) { + this.reason = reason; + return this; + } + + /** + * Reason for rejection + * + * @return reason + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_REASON) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public ReasonEnum getReason() { + return reason; + } + + @JsonProperty(JSON_PROPERTY_REASON) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setReason(@jakarta.annotation.Nonnull ReasonEnum reason) { + this.reason = reason; + } + + /** Return true if this VaultAccountTagAttachmentRejectedOperation object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VaultAccountTagAttachmentRejectedOperation vaultAccountTagAttachmentRejectedOperation = + (VaultAccountTagAttachmentRejectedOperation) o; + return Objects.equals( + this.vaultAccountId, + vaultAccountTagAttachmentRejectedOperation.vaultAccountId) + && Objects.equals(this.tagId, vaultAccountTagAttachmentRejectedOperation.tagId) + && Objects.equals(this.action, vaultAccountTagAttachmentRejectedOperation.action) + && Objects.equals(this.reason, vaultAccountTagAttachmentRejectedOperation.reason); + } + + @Override + public int hashCode() { + return Objects.hash(vaultAccountId, tagId, action, reason); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VaultAccountTagAttachmentRejectedOperation {\n"); + sb.append(" vaultAccountId: ").append(toIndentedString(vaultAccountId)).append("\n"); + sb.append(" tagId: ").append(toIndentedString(tagId)).append("\n"); + sb.append(" action: ").append(toIndentedString(action)).append("\n"); + sb.append(" reason: ").append(toIndentedString(reason)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `vaultAccountId` to the URL query string + if (getVaultAccountId() != null) { + joiner.add( + String.format( + "%svaultAccountId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getVaultAccountId())))); + } + + // add `tagId` to the URL query string + if (getTagId() != null) { + joiner.add( + String.format( + "%stagId%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getTagId())))); + } + + // add `action` to the URL query string + if (getAction() != null) { + joiner.add( + String.format( + "%saction%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getAction())))); + } + + // add `reason` to the URL query string + if (getReason() != null) { + joiner.add( + String.format( + "%sreason%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getReason())))); + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequest.java b/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequest.java new file mode 100644 index 00000000..4830688a --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequest.java @@ -0,0 +1,292 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.StringJoiner; +import java.util.UUID; + +/** VaultAccountsTagAttachmentOperationsRequest */ +@JsonPropertyOrder({ + VaultAccountsTagAttachmentOperationsRequest.JSON_PROPERTY_VAULT_ACCOUNT_IDS, + VaultAccountsTagAttachmentOperationsRequest.JSON_PROPERTY_TAG_IDS_TO_ATTACH, + VaultAccountsTagAttachmentOperationsRequest.JSON_PROPERTY_TAG_IDS_TO_DETACH +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class VaultAccountsTagAttachmentOperationsRequest { + public static final String JSON_PROPERTY_VAULT_ACCOUNT_IDS = "vaultAccountIds"; + @jakarta.annotation.Nonnull private List vaultAccountIds; + + public static final String JSON_PROPERTY_TAG_IDS_TO_ATTACH = "tagIdsToAttach"; + @jakarta.annotation.Nullable private List tagIdsToAttach; + + public static final String JSON_PROPERTY_TAG_IDS_TO_DETACH = "tagIdsToDetach"; + @jakarta.annotation.Nullable private List tagIdsToDetach; + + public VaultAccountsTagAttachmentOperationsRequest() {} + + @JsonCreator + public VaultAccountsTagAttachmentOperationsRequest( + @JsonProperty(value = JSON_PROPERTY_VAULT_ACCOUNT_IDS, required = true) + List vaultAccountIds) { + this.vaultAccountIds = vaultAccountIds; + } + + public VaultAccountsTagAttachmentOperationsRequest vaultAccountIds( + @jakarta.annotation.Nonnull List vaultAccountIds) { + this.vaultAccountIds = vaultAccountIds; + return this; + } + + public VaultAccountsTagAttachmentOperationsRequest addVaultAccountIdsItem( + String vaultAccountIdsItem) { + if (this.vaultAccountIds == null) { + this.vaultAccountIds = new ArrayList<>(); + } + this.vaultAccountIds.add(vaultAccountIdsItem); + return this; + } + + /** + * The IDs of the vault accounts to attach tags to + * + * @return vaultAccountIds + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_IDS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public List getVaultAccountIds() { + return vaultAccountIds; + } + + @JsonProperty(JSON_PROPERTY_VAULT_ACCOUNT_IDS) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setVaultAccountIds(@jakarta.annotation.Nonnull List vaultAccountIds) { + this.vaultAccountIds = vaultAccountIds; + } + + public VaultAccountsTagAttachmentOperationsRequest tagIdsToAttach( + @jakarta.annotation.Nullable List tagIdsToAttach) { + this.tagIdsToAttach = tagIdsToAttach; + return this; + } + + public VaultAccountsTagAttachmentOperationsRequest addTagIdsToAttachItem( + UUID tagIdsToAttachItem) { + if (this.tagIdsToAttach == null) { + this.tagIdsToAttach = new ArrayList<>(); + } + this.tagIdsToAttach.add(tagIdsToAttachItem); + return this; + } + + /** + * The IDs of the tags to attach + * + * @return tagIdsToAttach + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TAG_IDS_TO_ATTACH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getTagIdsToAttach() { + return tagIdsToAttach; + } + + @JsonProperty(JSON_PROPERTY_TAG_IDS_TO_ATTACH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTagIdsToAttach(@jakarta.annotation.Nullable List tagIdsToAttach) { + this.tagIdsToAttach = tagIdsToAttach; + } + + public VaultAccountsTagAttachmentOperationsRequest tagIdsToDetach( + @jakarta.annotation.Nullable List tagIdsToDetach) { + this.tagIdsToDetach = tagIdsToDetach; + return this; + } + + public VaultAccountsTagAttachmentOperationsRequest addTagIdsToDetachItem( + UUID tagIdsToDetachItem) { + if (this.tagIdsToDetach == null) { + this.tagIdsToDetach = new ArrayList<>(); + } + this.tagIdsToDetach.add(tagIdsToDetachItem); + return this; + } + + /** + * The IDs of the tags to detach + * + * @return tagIdsToDetach + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_TAG_IDS_TO_DETACH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getTagIdsToDetach() { + return tagIdsToDetach; + } + + @JsonProperty(JSON_PROPERTY_TAG_IDS_TO_DETACH) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setTagIdsToDetach(@jakarta.annotation.Nullable List tagIdsToDetach) { + this.tagIdsToDetach = tagIdsToDetach; + } + + /** Return true if this VaultAccountsTagAttachmentOperationsRequest object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VaultAccountsTagAttachmentOperationsRequest vaultAccountsTagAttachmentOperationsRequest = + (VaultAccountsTagAttachmentOperationsRequest) o; + return Objects.equals( + this.vaultAccountIds, + vaultAccountsTagAttachmentOperationsRequest.vaultAccountIds) + && Objects.equals( + this.tagIdsToAttach, + vaultAccountsTagAttachmentOperationsRequest.tagIdsToAttach) + && Objects.equals( + this.tagIdsToDetach, + vaultAccountsTagAttachmentOperationsRequest.tagIdsToDetach); + } + + @Override + public int hashCode() { + return Objects.hash(vaultAccountIds, tagIdsToAttach, tagIdsToDetach); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VaultAccountsTagAttachmentOperationsRequest {\n"); + sb.append(" vaultAccountIds: ").append(toIndentedString(vaultAccountIds)).append("\n"); + sb.append(" tagIdsToAttach: ").append(toIndentedString(tagIdsToAttach)).append("\n"); + sb.append(" tagIdsToDetach: ").append(toIndentedString(tagIdsToDetach)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `vaultAccountIds` to the URL query string + if (getVaultAccountIds() != null) { + for (int i = 0; i < getVaultAccountIds().size(); i++) { + joiner.add( + String.format( + "%svaultAccountIds%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getVaultAccountIds().get(i))))); + } + } + + // add `tagIdsToAttach` to the URL query string + if (getTagIdsToAttach() != null) { + for (int i = 0; i < getTagIdsToAttach().size(); i++) { + if (getTagIdsToAttach().get(i) != null) { + joiner.add( + String.format( + "%stagIdsToAttach%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getTagIdsToAttach().get(i))))); + } + } + } + + // add `tagIdsToDetach` to the URL query string + if (getTagIdsToDetach() != null) { + for (int i = 0; i < getTagIdsToDetach().size(); i++) { + if (getTagIdsToDetach().get(i) != null) { + joiner.add( + String.format( + "%stagIdsToDetach%s%s=%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", containerPrefix, i, containerSuffix), + ApiClient.urlEncode( + ApiClient.valueToString(getTagIdsToDetach().get(i))))); + } + } + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponse.java b/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponse.java new file mode 100644 index 00000000..d4594f42 --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponse.java @@ -0,0 +1,315 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; +import java.util.StringJoiner; + +/** VaultAccountsTagAttachmentOperationsResponse */ +@JsonPropertyOrder({ + VaultAccountsTagAttachmentOperationsResponse.JSON_PROPERTY_APPLIED_OPERATIONS, + VaultAccountsTagAttachmentOperationsResponse.JSON_PROPERTY_PENDING_OPERATIONS, + VaultAccountsTagAttachmentOperationsResponse.JSON_PROPERTY_REJECTED_OPERATIONS +}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class VaultAccountsTagAttachmentOperationsResponse { + public static final String JSON_PROPERTY_APPLIED_OPERATIONS = "appliedOperations"; + @jakarta.annotation.Nullable private List appliedOperations; + + public static final String JSON_PROPERTY_PENDING_OPERATIONS = "pendingOperations"; + + @jakarta.annotation.Nullable + private List pendingOperations; + + public static final String JSON_PROPERTY_REJECTED_OPERATIONS = "rejectedOperations"; + + @jakarta.annotation.Nullable + private List rejectedOperations; + + public VaultAccountsTagAttachmentOperationsResponse() {} + + public VaultAccountsTagAttachmentOperationsResponse appliedOperations( + @jakarta.annotation.Nullable + List appliedOperations) { + this.appliedOperations = appliedOperations; + return this; + } + + public VaultAccountsTagAttachmentOperationsResponse addAppliedOperationsItem( + VaultAccountTagAttachmentOperation appliedOperationsItem) { + if (this.appliedOperations == null) { + this.appliedOperations = new ArrayList<>(); + } + this.appliedOperations.add(appliedOperationsItem); + return this; + } + + /** + * The operations that were applied + * + * @return appliedOperations + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_APPLIED_OPERATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getAppliedOperations() { + return appliedOperations; + } + + @JsonProperty(JSON_PROPERTY_APPLIED_OPERATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setAppliedOperations( + @jakarta.annotation.Nullable + List appliedOperations) { + this.appliedOperations = appliedOperations; + } + + public VaultAccountsTagAttachmentOperationsResponse pendingOperations( + @jakarta.annotation.Nullable + List pendingOperations) { + this.pendingOperations = pendingOperations; + return this; + } + + public VaultAccountsTagAttachmentOperationsResponse addPendingOperationsItem( + VaultAccountTagAttachmentPendingOperation pendingOperationsItem) { + if (this.pendingOperations == null) { + this.pendingOperations = new ArrayList<>(); + } + this.pendingOperations.add(pendingOperationsItem); + return this; + } + + /** + * The operations that are pending + * + * @return pendingOperations + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_PENDING_OPERATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getPendingOperations() { + return pendingOperations; + } + + @JsonProperty(JSON_PROPERTY_PENDING_OPERATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setPendingOperations( + @jakarta.annotation.Nullable + List pendingOperations) { + this.pendingOperations = pendingOperations; + } + + public VaultAccountsTagAttachmentOperationsResponse rejectedOperations( + @jakarta.annotation.Nullable + List rejectedOperations) { + this.rejectedOperations = rejectedOperations; + return this; + } + + public VaultAccountsTagAttachmentOperationsResponse addRejectedOperationsItem( + VaultAccountTagAttachmentRejectedOperation rejectedOperationsItem) { + if (this.rejectedOperations == null) { + this.rejectedOperations = new ArrayList<>(); + } + this.rejectedOperations.add(rejectedOperationsItem); + return this; + } + + /** + * The operations that were rejected + * + * @return rejectedOperations + */ + @jakarta.annotation.Nullable + @JsonProperty(JSON_PROPERTY_REJECTED_OPERATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public List getRejectedOperations() { + return rejectedOperations; + } + + @JsonProperty(JSON_PROPERTY_REJECTED_OPERATIONS) + @JsonInclude(value = JsonInclude.Include.USE_DEFAULTS) + public void setRejectedOperations( + @jakarta.annotation.Nullable + List rejectedOperations) { + this.rejectedOperations = rejectedOperations; + } + + /** Return true if this VaultAccountsTagAttachmentOperationsResponse object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + VaultAccountsTagAttachmentOperationsResponse vaultAccountsTagAttachmentOperationsResponse = + (VaultAccountsTagAttachmentOperationsResponse) o; + return Objects.equals( + this.appliedOperations, + vaultAccountsTagAttachmentOperationsResponse.appliedOperations) + && Objects.equals( + this.pendingOperations, + vaultAccountsTagAttachmentOperationsResponse.pendingOperations) + && Objects.equals( + this.rejectedOperations, + vaultAccountsTagAttachmentOperationsResponse.rejectedOperations); + } + + @Override + public int hashCode() { + return Objects.hash(appliedOperations, pendingOperations, rejectedOperations); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class VaultAccountsTagAttachmentOperationsResponse {\n"); + sb.append(" appliedOperations: ") + .append(toIndentedString(appliedOperations)) + .append("\n"); + sb.append(" pendingOperations: ") + .append(toIndentedString(pendingOperations)) + .append("\n"); + sb.append(" rejectedOperations: ") + .append(toIndentedString(rejectedOperations)) + .append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `appliedOperations` to the URL query string + if (getAppliedOperations() != null) { + for (int i = 0; i < getAppliedOperations().size(); i++) { + if (getAppliedOperations().get(i) != null) { + joiner.add( + getAppliedOperations() + .get(i) + .toUrlQueryString( + String.format( + "%sappliedOperations%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `pendingOperations` to the URL query string + if (getPendingOperations() != null) { + for (int i = 0; i < getPendingOperations().size(); i++) { + if (getPendingOperations().get(i) != null) { + joiner.add( + getPendingOperations() + .get(i) + .toUrlQueryString( + String.format( + "%spendingOperations%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + // add `rejectedOperations` to the URL query string + if (getRejectedOperations() != null) { + for (int i = 0; i < getRejectedOperations().size(); i++) { + if (getRejectedOperations().get(i) != null) { + joiner.add( + getRejectedOperations() + .get(i) + .toUrlQueryString( + String.format( + "%srejectedOperations%s%s", + prefix, + suffix, + "".equals(suffix) + ? "" + : String.format( + "%s%d%s", + containerPrefix, + i, + containerSuffix)))); + } + } + } + + return joiner.toString(); + } +} diff --git a/src/main/java/com/fireblocks/sdk/model/WebhookMetric.java b/src/main/java/com/fireblocks/sdk/model/WebhookMetric.java new file mode 100644 index 00000000..f99dfe8b --- /dev/null +++ b/src/main/java/com/fireblocks/sdk/model/WebhookMetric.java @@ -0,0 +1,145 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.annotation.JsonPropertyOrder; +import com.fireblocks.sdk.ApiClient; +import java.util.Objects; +import java.util.StringJoiner; + +/** WebhookMetric */ +@JsonPropertyOrder({WebhookMetric.JSON_PROPERTY_VALUE}) +@jakarta.annotation.Generated( + value = "org.openapitools.codegen.languages.JavaClientCodegen", + comments = "Generator version: 7.14.0") +public class WebhookMetric { + public static final String JSON_PROPERTY_VALUE = "value"; + @jakarta.annotation.Nonnull private String value; + + public WebhookMetric() {} + + @JsonCreator + public WebhookMetric(@JsonProperty(value = JSON_PROPERTY_VALUE, required = true) String value) { + this.value = value; + } + + public WebhookMetric value(@jakarta.annotation.Nonnull String value) { + this.value = value; + return this; + } + + /** + * The value of the metric + * + * @return value + */ + @jakarta.annotation.Nonnull + @JsonProperty(JSON_PROPERTY_VALUE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public String getValue() { + return value; + } + + @JsonProperty(JSON_PROPERTY_VALUE) + @JsonInclude(value = JsonInclude.Include.ALWAYS) + public void setValue(@jakarta.annotation.Nonnull String value) { + this.value = value; + } + + /** Return true if this WebhookMetric object is equal to o. */ + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + WebhookMetric webhookMetric = (WebhookMetric) o; + return Objects.equals(this.value, webhookMetric.value); + } + + @Override + public int hashCode() { + return Objects.hash(value); + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append("class WebhookMetric {\n"); + sb.append(" value: ").append(toIndentedString(value)).append("\n"); + sb.append("}"); + return sb.toString(); + } + + /** + * Convert the given object to string with each line indented by 4 spaces (except the first + * line). + */ + private String toIndentedString(Object o) { + if (o == null) { + return "null"; + } + return o.toString().replace("\n", "\n "); + } + + /** + * Convert the instance into URL query string. + * + * @return URL query string + */ + public String toUrlQueryString() { + return toUrlQueryString(null); + } + + /** + * Convert the instance into URL query string. + * + * @param prefix prefix of the query string + * @return URL query string + */ + public String toUrlQueryString(String prefix) { + String suffix = ""; + String containerSuffix = ""; + String containerPrefix = ""; + if (prefix == null) { + // style=form, explode=true, e.g. /pet?name=cat&type=manx + prefix = ""; + } else { + // deepObject style e.g. /pet?id[name]=cat&id[type]=manx + prefix = prefix + "["; + suffix = "]"; + containerSuffix = "]"; + containerPrefix = "["; + } + + StringJoiner joiner = new StringJoiner("&"); + + // add `value` to the URL query string + if (getValue() != null) { + joiner.add( + String.format( + "%svalue%s=%s", + prefix, + suffix, + ApiClient.urlEncode(ApiClient.valueToString(getValue())))); + } + + return joiner.toString(); + } +} diff --git a/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java b/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java index 479cbd0f..1bff02b2 100644 --- a/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java +++ b/src/test/java/com/fireblocks/sdk/api/BlockchainsAssetsApiTest.java @@ -143,7 +143,7 @@ public void listBlockchainsTest() throws ApiException { * *

Register a new asset to a workspace and return the newly created asset's details. * Currently supported chains are: - EVM based chains - Stellar - Algorand - TRON - NEAR - - * Solana + * Solana - Sui * * @throws ApiException if the Api call fails */ diff --git a/src/test/java/com/fireblocks/sdk/api/TransactionsApiTest.java b/src/test/java/com/fireblocks/sdk/api/TransactionsApiTest.java index 894b3fad..11afb09a 100644 --- a/src/test/java/com/fireblocks/sdk/api/TransactionsApiTest.java +++ b/src/test/java/com/fireblocks/sdk/api/TransactionsApiTest.java @@ -175,6 +175,8 @@ public void getTransactionByExternalIdTest() throws ApiException { */ @Test public void getTransactionsTest() throws ApiException { + String next = null; + String prev = null; String before = null; String after = null; String status = null; @@ -191,6 +193,8 @@ public void getTransactionsTest() throws ApiException { String destWalletId = null; CompletableFuture>> response = api.getTransactions( + next, + prev, before, after, status, diff --git a/src/test/java/com/fireblocks/sdk/api/VaultsApiTest.java b/src/test/java/com/fireblocks/sdk/api/VaultsApiTest.java index de69cbc9..cacd06e9 100644 --- a/src/test/java/com/fireblocks/sdk/api/VaultsApiTest.java +++ b/src/test/java/com/fireblocks/sdk/api/VaultsApiTest.java @@ -38,6 +38,8 @@ import com.fireblocks.sdk.model.UpdateVaultAccountRequest; import com.fireblocks.sdk.model.VaultAccount; import com.fireblocks.sdk.model.VaultAccountsPagedResponse; +import com.fireblocks.sdk.model.VaultAccountsTagAttachmentOperationsRequest; +import com.fireblocks.sdk.model.VaultAccountsTagAttachmentOperationsResponse; import com.fireblocks.sdk.model.VaultAccountsTagAttachmentsRequest; import com.fireblocks.sdk.model.VaultActionStatus; import com.fireblocks.sdk.model.VaultAsset; @@ -71,9 +73,27 @@ public void activateAssetForVaultAccountTest() throws ApiException { } /** - * Attach tags to a vault accounts + * Attach or detach tags from a vault accounts * - *

Attach one or more tags to the requested vault accounts. + *

Attach or detach one or more tags from the requested vault accounts. + * + * @throws ApiException if the Api call fails + */ + @Test + public void attachOrDetachTagsFromVaultAccountsTest() throws ApiException { + VaultAccountsTagAttachmentOperationsRequest vaultAccountsTagAttachmentOperationsRequest = + null; + String idempotencyKey = null; + CompletableFuture> response = + api.attachOrDetachTagsFromVaultAccounts( + vaultAccountsTagAttachmentOperationsRequest, idempotencyKey); + } + + /** + * Attach tags to a vault accounts (deprecated) + * + *

Attach one or more tags to the requested vault accounts. This endpoint is deprecated. + * Please use /vault/accounts/attached_tags instead. * * @throws ApiException if the Api call fails */ @@ -190,9 +210,10 @@ public void createVaultAccountAssetAddressTest() throws ApiException { } /** - * Detach tags from a vault accounts + * Detach tags from a vault accounts (deprecated) * - *

Detach one or more tags from the requested vault account. + *

Detach one or more tags from the requested vault account. This endpoint is deprecated. + * Please use /vault/accounts/attached_tags instead. * * @throws ApiException if the Api call fails */ diff --git a/src/test/java/com/fireblocks/sdk/api/WebhooksV2ApiTest.java b/src/test/java/com/fireblocks/sdk/api/WebhooksV2ApiTest.java index 79dc4b89..5db4b4c0 100644 --- a/src/test/java/com/fireblocks/sdk/api/WebhooksV2ApiTest.java +++ b/src/test/java/com/fireblocks/sdk/api/WebhooksV2ApiTest.java @@ -27,6 +27,7 @@ import com.fireblocks.sdk.model.UpdateWebhookRequest; import com.fireblocks.sdk.model.Webhook; import com.fireblocks.sdk.model.WebhookEvent; +import com.fireblocks.sdk.model.WebhookMetric; import com.fireblocks.sdk.model.WebhookPaginatedResponse; import java.math.BigDecimal; import java.util.List; @@ -70,6 +71,21 @@ public void deleteWebhookTest() throws ApiException { CompletableFuture> response = api.deleteWebhook(webhookId); } + /** + * Get webhook metrics + * + *

Get webhook metrics by webhook id and metric name + * + * @throws ApiException if the Api call fails + */ + @Test + public void getMetricsTest() throws ApiException { + UUID webhookId = null; + String metricName = null; + CompletableFuture> response = + api.getMetrics(webhookId, metricName); + } + /** * Get notification by id * diff --git a/src/test/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetailsTest.java new file mode 100644 index 00000000..64de2d89 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AccountBasedAccessProviderDetailsTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AccountBasedAccessProviderDetails */ +class AccountBasedAccessProviderDetailsTest { + private final AccountBasedAccessProviderDetails model = new AccountBasedAccessProviderDetails(); + + /** Model tests for AccountBasedAccessProviderDetails */ + @Test + void testAccountBasedAccessProviderDetails() { + // TODO: test AccountBasedAccessProviderDetails + } + + /** Test the property 'manifest' */ + @Test + void manifestTest() { + // TODO: test manifest + } + + /** Test the property 'connected' */ + @Test + void connectedTest() { + // TODO: test connected + } + + /** Test the property 'accounts' */ + @Test + void accountsTest() { + // TODO: test accounts + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AccountConfigTest.java b/src/test/java/com/fireblocks/sdk/model/AccountConfigTest.java index 2af87278..a6a61379 100644 --- a/src/test/java/com/fireblocks/sdk/model/AccountConfigTest.java +++ b/src/test/java/com/fireblocks/sdk/model/AccountConfigTest.java @@ -43,6 +43,12 @@ void idsTest() { // TODO: test ids } + /** Test the property 'tags' */ + @Test + void tagsTest() { + // TODO: test tags + } + /** Test the property 'operator' */ @Test void operatorTest() { diff --git a/src/test/java/com/fireblocks/sdk/model/AchAccountTypeTest.java b/src/test/java/com/fireblocks/sdk/model/AchAccountTypeTest.java new file mode 100644 index 00000000..70ee12d1 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AchAccountTypeTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AchAccountType */ +class AchAccountTypeTest { + /** Model tests for AchAccountType */ + @Test + void testAchAccountType() { + // TODO: test AchAccountType + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AchAddressTest.java b/src/test/java/com/fireblocks/sdk/model/AchAddressTest.java new file mode 100644 index 00000000..16d335b0 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AchAddressTest.java @@ -0,0 +1,57 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AchAddress */ +class AchAddressTest { + private final AchAddress model = new AchAddress(); + + /** Model tests for AchAddress */ + @Test + void testAchAddress() { + // TODO: test AchAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'bankName' */ + @Test + void bankNameTest() { + // TODO: test bankName + } + + /** Test the property 'bankAccountNumber' */ + @Test + void bankAccountNumberTest() { + // TODO: test bankAccountNumber + } + + /** Test the property 'routingNumber' */ + @Test + void routingNumberTest() { + // TODO: test routingNumber + } + + /** Test the property 'accountType' */ + @Test + void accountTypeTest() { + // TODO: test accountType + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AchDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/AchDestinationTest.java new file mode 100644 index 00000000..7e2d8b87 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AchDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AchDestination */ +class AchDestinationTest { + private final AchDestination model = new AchDestination(); + + /** Model tests for AchDestination */ + @Test + void testAchDestination() { + // TODO: test AchDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AlertExposureTypeEnumTest.java b/src/test/java/com/fireblocks/sdk/model/AlertExposureTypeEnumTest.java new file mode 100644 index 00000000..99b3acb8 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AlertExposureTypeEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AlertExposureTypeEnum */ +class AlertExposureTypeEnumTest { + /** Model tests for AlertExposureTypeEnum */ + @Test + void testAlertExposureTypeEnum() { + // TODO: test AlertExposureTypeEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AlertLevelEnumTest.java b/src/test/java/com/fireblocks/sdk/model/AlertLevelEnumTest.java new file mode 100644 index 00000000..4be19ff5 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AlertLevelEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AlertLevelEnum */ +class AlertLevelEnumTest { + /** Model tests for AlertLevelEnum */ + @Test + void testAlertLevelEnum() { + // TODO: test AlertLevelEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmlAlertTest.java b/src/test/java/com/fireblocks/sdk/model/AmlAlertTest.java new file mode 100644 index 00000000..ef21e754 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AmlAlertTest.java @@ -0,0 +1,81 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AmlAlert */ +class AmlAlertTest { + private final AmlAlert model = new AmlAlert(); + + /** Model tests for AmlAlert */ + @Test + void testAmlAlert() { + // TODO: test AmlAlert + } + + /** Test the property 'alertLevel' */ + @Test + void alertLevelTest() { + // TODO: test alertLevel + } + + /** Test the property 'alertName' */ + @Test + void alertNameTest() { + // TODO: test alertName + } + + /** Test the property 'category' */ + @Test + void categoryTest() { + // TODO: test category + } + + /** Test the property 'service' */ + @Test + void serviceTest() { + // TODO: test service + } + + /** Test the property 'externalId' */ + @Test + void externalIdTest() { + // TODO: test externalId + } + + /** Test the property 'alertAmount' */ + @Test + void alertAmountTest() { + // TODO: test alertAmount + } + + /** Test the property 'exposureType' */ + @Test + void exposureTypeTest() { + // TODO: test exposureType + } + + /** Test the property 'policyAction' */ + @Test + void policyActionTest() { + // TODO: test policyAction + } + + /** Test the property 'categoryId' */ + @Test + void categoryIdTest() { + // TODO: test categoryId + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmlMatchedRuleTest.java b/src/test/java/com/fireblocks/sdk/model/AmlMatchedRuleTest.java new file mode 100644 index 00000000..7887ac4c --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AmlMatchedRuleTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AmlMatchedRule */ +class AmlMatchedRuleTest { + private final AmlMatchedRule model = new AmlMatchedRule(); + + /** Model tests for AmlMatchedRule */ + @Test + void testAmlMatchedRule() { + // TODO: test AmlMatchedRule + } + + /** Test the property 'ruleId' */ + @Test + void ruleIdTest() { + // TODO: test ruleId + } + + /** Test the property 'ruleName' */ + @Test + void ruleNameTest() { + // TODO: test ruleName + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmlResultTest.java b/src/test/java/com/fireblocks/sdk/model/AmlResultTest.java new file mode 100644 index 00000000..75614f7e --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AmlResultTest.java @@ -0,0 +1,51 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AmlResult */ +class AmlResultTest { + private final AmlResult model = new AmlResult(); + + /** Model tests for AmlResult */ + @Test + void testAmlResult() { + // TODO: test AmlResult + } + + /** Test the property 'alerts' */ + @Test + void alertsTest() { + // TODO: test alerts + } + + /** Test the property 'providerResponse' */ + @Test + void providerResponseTest() { + // TODO: test providerResponse + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } + + /** Test the property 'matchedAlert' */ + @Test + void matchedAlertTest() { + // TODO: test matchedAlert + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmlStatusEnumTest.java b/src/test/java/com/fireblocks/sdk/model/AmlStatusEnumTest.java new file mode 100644 index 00000000..ae36dc12 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AmlStatusEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AmlStatusEnum */ +class AmlStatusEnumTest { + /** Model tests for AmlStatusEnum */ + @Test + void testAmlStatusEnum() { + // TODO: test AmlStatusEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmountConfigCurrencyTest.java b/src/test/java/com/fireblocks/sdk/model/AmountConfigCurrencyTest.java new file mode 100644 index 00000000..7065b047 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AmountConfigCurrencyTest.java @@ -0,0 +1,33 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AmountConfigCurrency */ +class AmountConfigCurrencyTest { + private final AmountConfigCurrency model = new AmountConfigCurrency(); + + /** Model tests for AmountConfigCurrency */ + @Test + void testAmountConfigCurrency() { + // TODO: test AmountConfigCurrency + } + + /** Test the property 'currency' */ + @Test + void currencyTest() { + // TODO: test currency + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmountConfigTest.java b/src/test/java/com/fireblocks/sdk/model/AmountConfigTest.java new file mode 100644 index 00000000..1e1a1d15 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AmountConfigTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AmountConfig */ +class AmountConfigTest { + private final AmountConfig model = new AmountConfig(); + + /** Model tests for AmountConfig */ + @Test + void testAmountConfig() { + // TODO: test AmountConfig + } + + /** Test the property 'range' */ + @Test + void rangeTest() { + // TODO: test range + } + + /** Test the property 'currency' */ + @Test + void currencyTest() { + // TODO: test currency + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmountOverTimeConfigRangeTest.java b/src/test/java/com/fireblocks/sdk/model/AmountRangeMinMax2Test.java similarity index 68% rename from src/test/java/com/fireblocks/sdk/model/AmountOverTimeConfigRangeTest.java rename to src/test/java/com/fireblocks/sdk/model/AmountRangeMinMax2Test.java index 4a8f2fc8..e96448ee 100644 --- a/src/test/java/com/fireblocks/sdk/model/AmountOverTimeConfigRangeTest.java +++ b/src/test/java/com/fireblocks/sdk/model/AmountRangeMinMax2Test.java @@ -15,14 +15,14 @@ import org.junit.jupiter.api.Test; -/** Model tests for AmountOverTimeConfigRange */ -class AmountOverTimeConfigRangeTest { - private final AmountOverTimeConfigRange model = new AmountOverTimeConfigRange(); +/** Model tests for AmountRangeMinMax2 */ +class AmountRangeMinMax2Test { + private final AmountRangeMinMax2 model = new AmountRangeMinMax2(); - /** Model tests for AmountOverTimeConfigRange */ + /** Model tests for AmountRangeMinMax2 */ @Test - void testAmountOverTimeConfigRange() { - // TODO: test AmountOverTimeConfigRange + void testAmountRangeMinMax2() { + // TODO: test AmountRangeMinMax2 } /** Test the property 'min' */ diff --git a/src/test/java/com/fireblocks/sdk/model/AmountRangeMinMaxTest.java b/src/test/java/com/fireblocks/sdk/model/AmountRangeMinMaxTest.java new file mode 100644 index 00000000..fbc20200 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/AmountRangeMinMaxTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for AmountRangeMinMax */ +class AmountRangeMinMaxTest { + private final AmountRangeMinMax model = new AmountRangeMinMax(); + + /** Model tests for AmountRangeMinMax */ + @Test + void testAmountRangeMinMax() { + // TODO: test AmountRangeMinMax + } + + /** Test the property 'min' */ + @Test + void minTest() { + // TODO: test min + } + + /** Test the property 'max' */ + @Test + void maxTest() { + // TODO: test max + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/AmountRangeTest.java b/src/test/java/com/fireblocks/sdk/model/AmountRangeTest.java index 6dbda3e3..52d89cde 100644 --- a/src/test/java/com/fireblocks/sdk/model/AmountRangeTest.java +++ b/src/test/java/com/fireblocks/sdk/model/AmountRangeTest.java @@ -25,21 +25,9 @@ void testAmountRange() { // TODO: test AmountRange } - /** Test the property 'min' */ + /** Test the property 'range' */ @Test - void minTest() { - // TODO: test min - } - - /** Test the property 'max' */ - @Test - void maxTest() { - // TODO: test max - } - - /** Test the property 'currency' */ - @Test - void currencyTest() { - // TODO: test currency + void rangeTest() { + // TODO: test range } } diff --git a/src/test/java/com/fireblocks/sdk/model/ComplianceResultFullPayloadTest.java b/src/test/java/com/fireblocks/sdk/model/ComplianceResultFullPayloadTest.java index a01e2599..76858c0e 100644 --- a/src/test/java/com/fireblocks/sdk/model/ComplianceResultFullPayloadTest.java +++ b/src/test/java/com/fireblocks/sdk/model/ComplianceResultFullPayloadTest.java @@ -54,4 +54,16 @@ void statusTest() { void amlRegistrationTest() { // TODO: test amlRegistration } + + /** Test the property 'trlinkRegistration' */ + @Test + void trlinkRegistrationTest() { + // TODO: test trlinkRegistration + } + + /** Test the property 'trlinkDestinations' */ + @Test + void trlinkDestinationsTest() { + // TODO: test trlinkDestinations + } } diff --git a/src/test/java/com/fireblocks/sdk/model/ComplianceResultsTest.java b/src/test/java/com/fireblocks/sdk/model/ComplianceResultsTest.java index a1ab2c96..5816a295 100644 --- a/src/test/java/com/fireblocks/sdk/model/ComplianceResultsTest.java +++ b/src/test/java/com/fireblocks/sdk/model/ComplianceResultsTest.java @@ -54,4 +54,16 @@ void statusTest() { void amlRegistrationTest() { // TODO: test amlRegistration } + + /** Test the property 'trlinkRegistration' */ + @Test + void trlinkRegistrationTest() { + // TODO: test trlinkRegistration + } + + /** Test the property 'trlinkDestinations' */ + @Test + void trlinkDestinationsTest() { + // TODO: test trlinkDestinations + } } diff --git a/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayloadTest.java b/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayloadTest.java index 9ae35904..861c3ad9 100644 --- a/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayloadTest.java +++ b/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultFullPayloadTest.java @@ -38,10 +38,10 @@ void payloadTest() { // TODO: test payload } - /** Test the property 'bypassReason' */ + /** Test the property 'timestamp' */ @Test - void bypassReasonTest() { - // TODO: test bypassReason + void timestampTest() { + // TODO: test timestamp } /** Test the property 'screeningStatus' */ @@ -50,9 +50,159 @@ void screeningStatusTest() { // TODO: test screeningStatus } - /** Test the property 'timestamp' */ + /** Test the property 'bypassReason' */ @Test - void timestampTest() { - // TODO: test timestamp + void bypassReasonTest() { + // TODO: test bypassReason + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'prevStatus' */ + @Test + void prevStatusTest() { + // TODO: test prevStatus + } + + /** Test the property 'prevBypassReason' */ + @Test + void prevBypassReasonTest() { + // TODO: test prevBypassReason + } + + /** Test the property 'verdict' */ + @Test + void verdictTest() { + // TODO: test verdict + } + + /** Test the property 'risk' */ + @Test + void riskTest() { + // TODO: test risk + } + + /** Test the property 'extendedRisk' */ + @Test + void extendedRiskTest() { + // TODO: test extendedRisk + } + + /** Test the property 'externalId' */ + @Test + void externalIdTest() { + // TODO: test externalId + } + + /** Test the property 'customerRefId' */ + @Test + void customerRefIdTest() { + // TODO: test customerRefId + } + + /** Test the property 'refId' */ + @Test + void refIdTest() { + // TODO: test refId + } + + /** Test the property 'category' */ + @Test + void categoryTest() { + // TODO: test category + } + + /** Test the property 'categoryId' */ + @Test + void categoryIdTest() { + // TODO: test categoryId + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'destTag' */ + @Test + void destTagTest() { + // TODO: test destTag + } + + /** Test the property 'destRecordId' */ + @Test + void destRecordIdTest() { + // TODO: test destRecordId + } + + /** Test the property 'addressResolutionSignature' */ + @Test + void addressResolutionSignatureTest() { + // TODO: test addressResolutionSignature + } + + /** Test the property 'amlResult' */ + @Test + void amlResultTest() { + // TODO: test amlResult + } + + /** Test the property 'result' */ + @Test + void resultTest() { + // TODO: test result + } + + /** Test the property 'detailsMessage' */ + @Test + void detailsMessageTest() { + // TODO: test detailsMessage + } + + /** Test the property 'matchedAlert' */ + @Test + void matchedAlertTest() { + // TODO: test matchedAlert + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } + + /** Test the property 'matchedPrescreeningRule' */ + @Test + void matchedPrescreeningRuleTest() { + // TODO: test matchedPrescreeningRule + } + + /** Test the property 'matchedNoTrmScreeningRule' */ + @Test + void matchedNoTrmScreeningRuleTest() { + // TODO: test matchedNoTrmScreeningRule + } + + /** Test the property 'customerIntegrationId' */ + @Test + void customerIntegrationIdTest() { + // TODO: test customerIntegrationId + } + + /** Test the property 'customerShortName' */ + @Test + void customerShortNameTest() { + // TODO: test customerShortName + } + + /** Test the property 'travelRuleMessageId' */ + @Test + void travelRuleMessageIdTest() { + // TODO: test travelRuleMessageId } } diff --git a/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultTest.java b/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultTest.java index 1ebacaff..17ba9e8a 100644 --- a/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultTest.java +++ b/src/test/java/com/fireblocks/sdk/model/ComplianceScreeningResultTest.java @@ -37,10 +37,10 @@ void payloadTest() { // TODO: test payload } - /** Test the property 'bypassReason' */ + /** Test the property 'timestamp' */ @Test - void bypassReasonTest() { - // TODO: test bypassReason + void timestampTest() { + // TODO: test timestamp } /** Test the property 'screeningStatus' */ @@ -49,9 +49,159 @@ void screeningStatusTest() { // TODO: test screeningStatus } - /** Test the property 'timestamp' */ + /** Test the property 'bypassReason' */ @Test - void timestampTest() { - // TODO: test timestamp + void bypassReasonTest() { + // TODO: test bypassReason + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'prevStatus' */ + @Test + void prevStatusTest() { + // TODO: test prevStatus + } + + /** Test the property 'prevBypassReason' */ + @Test + void prevBypassReasonTest() { + // TODO: test prevBypassReason + } + + /** Test the property 'verdict' */ + @Test + void verdictTest() { + // TODO: test verdict + } + + /** Test the property 'risk' */ + @Test + void riskTest() { + // TODO: test risk + } + + /** Test the property 'extendedRisk' */ + @Test + void extendedRiskTest() { + // TODO: test extendedRisk + } + + /** Test the property 'externalId' */ + @Test + void externalIdTest() { + // TODO: test externalId + } + + /** Test the property 'customerRefId' */ + @Test + void customerRefIdTest() { + // TODO: test customerRefId + } + + /** Test the property 'refId' */ + @Test + void refIdTest() { + // TODO: test refId + } + + /** Test the property 'category' */ + @Test + void categoryTest() { + // TODO: test category + } + + /** Test the property 'categoryId' */ + @Test + void categoryIdTest() { + // TODO: test categoryId + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'destTag' */ + @Test + void destTagTest() { + // TODO: test destTag + } + + /** Test the property 'destRecordId' */ + @Test + void destRecordIdTest() { + // TODO: test destRecordId + } + + /** Test the property 'addressResolutionSignature' */ + @Test + void addressResolutionSignatureTest() { + // TODO: test addressResolutionSignature + } + + /** Test the property 'amlResult' */ + @Test + void amlResultTest() { + // TODO: test amlResult + } + + /** Test the property 'result' */ + @Test + void resultTest() { + // TODO: test result + } + + /** Test the property 'detailsMessage' */ + @Test + void detailsMessageTest() { + // TODO: test detailsMessage + } + + /** Test the property 'matchedAlert' */ + @Test + void matchedAlertTest() { + // TODO: test matchedAlert + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } + + /** Test the property 'matchedPrescreeningRule' */ + @Test + void matchedPrescreeningRuleTest() { + // TODO: test matchedPrescreeningRule + } + + /** Test the property 'matchedNoTrmScreeningRule' */ + @Test + void matchedNoTrmScreeningRuleTest() { + // TODO: test matchedNoTrmScreeningRule + } + + /** Test the property 'customerIntegrationId' */ + @Test + void customerIntegrationIdTest() { + // TODO: test customerIntegrationId + } + + /** Test the property 'customerShortName' */ + @Test + void customerShortNameTest() { + // TODO: test customerShortName + } + + /** Test the property 'travelRuleMessageId' */ + @Test + void travelRuleMessageIdTest() { + // TODO: test travelRuleMessageId } } diff --git a/src/test/java/com/fireblocks/sdk/model/DAppAddressConfigTest.java b/src/test/java/com/fireblocks/sdk/model/DAppAddressConfigTest.java new file mode 100644 index 00000000..c68e2090 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/DAppAddressConfigTest.java @@ -0,0 +1,51 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for DAppAddressConfig */ +class DAppAddressConfigTest { + private final DAppAddressConfig model = new DAppAddressConfig(); + + /** Model tests for DAppAddressConfig */ + @Test + void testDAppAddressConfig() { + // TODO: test DAppAddressConfig + } + + /** Test the property 'globalWhitelisted' */ + @Test + void globalWhitelistedTest() { + // TODO: test globalWhitelisted + } + + /** Test the property 'tenantWhitelisted' */ + @Test + void tenantWhitelistedTest() { + // TODO: test tenantWhitelisted + } + + /** Test the property 'urls' */ + @Test + void urlsTest() { + // TODO: test urls + } + + /** Test the property 'operator' */ + @Test + void operatorTest() { + // TODO: test operator + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/DestinationConfigTest.java b/src/test/java/com/fireblocks/sdk/model/DestinationConfigTest.java index 7f5fc1fd..47a2e871 100644 --- a/src/test/java/com/fireblocks/sdk/model/DestinationConfigTest.java +++ b/src/test/java/com/fireblocks/sdk/model/DestinationConfigTest.java @@ -43,6 +43,12 @@ void idsTest() { // TODO: test ids } + /** Test the property 'tags' */ + @Test + void tagsTest() { + // TODO: test tags + } + /** Test the property 'operator' */ @Test void operatorTest() { diff --git a/src/test/java/com/fireblocks/sdk/model/DirectAccessProviderDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/DirectAccessProviderDetailsTest.java new file mode 100644 index 00000000..9812e2d4 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/DirectAccessProviderDetailsTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for DirectAccessProviderDetails */ +class DirectAccessProviderDetailsTest { + private final DirectAccessProviderDetails model = new DirectAccessProviderDetails(); + + /** Model tests for DirectAccessProviderDetails */ + @Test + void testDirectAccessProviderDetails() { + // TODO: test DirectAccessProviderDetails + } + + /** Test the property 'approved' */ + @Test + void approvedTest() { + // TODO: test approved + } + + /** Test the property 'hasTermsOfService' */ + @Test + void hasTermsOfServiceTest() { + // TODO: test hasTermsOfService + } + + /** Test the property 'termsOfServiceUrl' */ + @Test + void termsOfServiceUrlTest() { + // TODO: test termsOfServiceUrl + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/FeePropertiesDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/FeePropertiesDetailsTest.java new file mode 100644 index 00000000..c1231af4 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/FeePropertiesDetailsTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for FeePropertiesDetails */ +class FeePropertiesDetailsTest { + private final FeePropertiesDetails model = new FeePropertiesDetails(); + + /** Model tests for FeePropertiesDetails */ + @Test + void testFeePropertiesDetails() { + // TODO: test FeePropertiesDetails + } + + /** Test the property 'feeType' */ + @Test + void feeTypeTest() { + // TODO: test feeType + } + + /** Test the property 'assetId' */ + @Test + void assetIdTest() { + // TODO: test assetId + } + + /** Test the property 'amountType' */ + @Test + void amountTypeTest() { + // TODO: test amountType + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/FiatDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/FiatDestinationTest.java new file mode 100644 index 00000000..dfdb6e58 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/FiatDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for FiatDestination */ +class FiatDestinationTest { + private final FiatDestination model = new FiatDestination(); + + /** Model tests for FiatDestination */ + @Test + void testFiatDestination() { + // TODO: test FiatDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/IbanAddressTest.java b/src/test/java/com/fireblocks/sdk/model/IbanAddressTest.java new file mode 100644 index 00000000..152a83ac --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/IbanAddressTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for IbanAddress */ +class IbanAddressTest { + private final IbanAddress model = new IbanAddress(); + + /** Model tests for IbanAddress */ + @Test + void testIbanAddress() { + // TODO: test IbanAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'iban' */ + @Test + void ibanTest() { + // TODO: test iban + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/IbanDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/IbanDestinationTest.java new file mode 100644 index 00000000..8ac91bd3 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/IbanDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for IbanDestination */ +class IbanDestinationTest { + private final IbanDestination model = new IbanDestination(); + + /** Model tests for IbanDestination */ + @Test + void testIbanDestination() { + // TODO: test IbanDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/LimitExecutionRequestDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/LimitExecutionRequestDetailsTest.java index 718fb749..d5fabdf0 100644 --- a/src/test/java/com/fireblocks/sdk/model/LimitExecutionRequestDetailsTest.java +++ b/src/test/java/com/fireblocks/sdk/model/LimitExecutionRequestDetailsTest.java @@ -25,6 +25,24 @@ void testLimitExecutionRequestDetails() { // TODO: test LimitExecutionRequestDetails } + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'timeInForce' */ + @Test + void timeInForceTest() { + // TODO: test timeInForce + } + + /** Test the property 'limitPrice' */ + @Test + void limitPriceTest() { + // TODO: test limitPrice + } + /** Test the property 'side' */ @Test void sideTest() { @@ -60,22 +78,4 @@ void quoteAssetIdTest() { void quoteAssetRailTest() { // TODO: test quoteAssetRail } - - /** Test the property 'type' */ - @Test - void typeTest() { - // TODO: test type - } - - /** Test the property 'timeInForce' */ - @Test - void timeInForceTest() { - // TODO: test timeInForce - } - - /** Test the property 'limitPrice' */ - @Test - void limitPriceTest() { - // TODO: test limitPrice - } } diff --git a/src/test/java/com/fireblocks/sdk/model/LimitExecutionResponseDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/LimitExecutionResponseDetailsTest.java index fec55f1d..18abcbdf 100644 --- a/src/test/java/com/fireblocks/sdk/model/LimitExecutionResponseDetailsTest.java +++ b/src/test/java/com/fireblocks/sdk/model/LimitExecutionResponseDetailsTest.java @@ -25,6 +25,24 @@ void testLimitExecutionResponseDetails() { // TODO: test LimitExecutionResponseDetails } + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'timeInForce' */ + @Test + void timeInForceTest() { + // TODO: test timeInForce + } + + /** Test the property 'limitPrice' */ + @Test + void limitPriceTest() { + // TODO: test limitPrice + } + /** Test the property 'side' */ @Test void sideTest() { @@ -60,22 +78,4 @@ void quoteAssetIdTest() { void quoteAssetRailTest() { // TODO: test quoteAssetRail } - - /** Test the property 'type' */ - @Test - void typeTest() { - // TODO: test type - } - - /** Test the property 'timeInForce' */ - @Test - void timeInForceTest() { - // TODO: test timeInForce - } - - /** Test the property 'limitPrice' */ - @Test - void limitPriceTest() { - // TODO: test limitPrice - } } diff --git a/src/test/java/com/fireblocks/sdk/model/LimitTypeDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/LimitTypeDetailsTest.java new file mode 100644 index 00000000..d5f64916 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/LimitTypeDetailsTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for LimitTypeDetails */ +class LimitTypeDetailsTest { + private final LimitTypeDetails model = new LimitTypeDetails(); + + /** Model tests for LimitTypeDetails */ + @Test + void testLimitTypeDetails() { + // TODO: test LimitTypeDetails + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'timeInForce' */ + @Test + void timeInForceTest() { + // TODO: test timeInForce + } + + /** Test the property 'limitPrice' */ + @Test + void limitPriceTest() { + // TODO: test limitPrice + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddressTest.java b/src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddressTest.java new file mode 100644 index 00000000..7ad0e7eb --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaAddressTest.java @@ -0,0 +1,51 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for LocalBankTransferAfricaAddress */ +class LocalBankTransferAfricaAddressTest { + private final LocalBankTransferAfricaAddress model = new LocalBankTransferAfricaAddress(); + + /** Model tests for LocalBankTransferAfricaAddress */ + @Test + void testLocalBankTransferAfricaAddress() { + // TODO: test LocalBankTransferAfricaAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'accountNumber' */ + @Test + void accountNumberTest() { + // TODO: test accountNumber + } + + /** Test the property 'bankName' */ + @Test + void bankNameTest() { + // TODO: test bankName + } + + /** Test the property 'bankCode' */ + @Test + void bankCodeTest() { + // TODO: test bankCode + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestinationTest.java new file mode 100644 index 00000000..45678fc5 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/LocalBankTransferAfricaDestinationTest.java @@ -0,0 +1,40 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for LocalBankTransferAfricaDestination */ +class LocalBankTransferAfricaDestinationTest { + private final LocalBankTransferAfricaDestination model = + new LocalBankTransferAfricaDestination(); + + /** Model tests for LocalBankTransferAfricaDestination */ + @Test + void testLocalBankTransferAfricaDestination() { + // TODO: test LocalBankTransferAfricaDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/MarketExecutionRequestDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/MarketExecutionRequestDetailsTest.java index 4d81d69b..e9bf497b 100644 --- a/src/test/java/com/fireblocks/sdk/model/MarketExecutionRequestDetailsTest.java +++ b/src/test/java/com/fireblocks/sdk/model/MarketExecutionRequestDetailsTest.java @@ -25,6 +25,12 @@ void testMarketExecutionRequestDetails() { // TODO: test MarketExecutionRequestDetails } + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + /** Test the property 'side' */ @Test void sideTest() { @@ -60,10 +66,4 @@ void quoteAssetIdTest() { void quoteAssetRailTest() { // TODO: test quoteAssetRail } - - /** Test the property 'type' */ - @Test - void typeTest() { - // TODO: test type - } } diff --git a/src/test/java/com/fireblocks/sdk/model/MarketExecutionResponseDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/MarketExecutionResponseDetailsTest.java index a2e337d0..0e9d3115 100644 --- a/src/test/java/com/fireblocks/sdk/model/MarketExecutionResponseDetailsTest.java +++ b/src/test/java/com/fireblocks/sdk/model/MarketExecutionResponseDetailsTest.java @@ -25,6 +25,12 @@ void testMarketExecutionResponseDetails() { // TODO: test MarketExecutionResponseDetails } + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + /** Test the property 'side' */ @Test void sideTest() { @@ -60,10 +66,4 @@ void quoteAssetIdTest() { void quoteAssetRailTest() { // TODO: test quoteAssetRail } - - /** Test the property 'type' */ - @Test - void typeTest() { - // TODO: test type - } } diff --git a/src/test/java/com/fireblocks/sdk/model/MarketTypeDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/MarketTypeDetailsTest.java new file mode 100644 index 00000000..5052d6c0 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/MarketTypeDetailsTest.java @@ -0,0 +1,33 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for MarketTypeDetails */ +class MarketTypeDetailsTest { + private final MarketTypeDetails model = new MarketTypeDetails(); + + /** Model tests for MarketTypeDetails */ + @Test + void testMarketTypeDetails() { + // TODO: test MarketTypeDetails + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/MobileMoneyAddressTest.java b/src/test/java/com/fireblocks/sdk/model/MobileMoneyAddressTest.java new file mode 100644 index 00000000..1a374c3b --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/MobileMoneyAddressTest.java @@ -0,0 +1,57 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for MobileMoneyAddress */ +class MobileMoneyAddressTest { + private final MobileMoneyAddress model = new MobileMoneyAddress(); + + /** Model tests for MobileMoneyAddress */ + @Test + void testMobileMoneyAddress() { + // TODO: test MobileMoneyAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'mobilePhoneNumber' */ + @Test + void mobilePhoneNumberTest() { + // TODO: test mobilePhoneNumber + } + + /** Test the property 'provider' */ + @Test + void providerTest() { + // TODO: test provider + } + + /** Test the property 'beneficiaryDocumentId' */ + @Test + void beneficiaryDocumentIdTest() { + // TODO: test beneficiaryDocumentId + } + + /** Test the property 'beneficiaryRelationship' */ + @Test + void beneficiaryRelationshipTest() { + // TODO: test beneficiaryRelationship + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/MobileMoneyDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/MobileMoneyDestinationTest.java new file mode 100644 index 00000000..99582e31 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/MobileMoneyDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for MobileMoneyDestination */ +class MobileMoneyDestinationTest { + private final MobileMoneyDestination model = new MobileMoneyDestination(); + + /** Model tests for MobileMoneyDestination */ + @Test + void testMobileMoneyDestination() { + // TODO: test MobileMoneyDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/OrderSideTest.java b/src/test/java/com/fireblocks/sdk/model/OrderSideTest.java new file mode 100644 index 00000000..4e12e03b --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/OrderSideTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for OrderSide */ +class OrderSideTest { + /** Model tests for OrderSide */ + @Test + void testOrderSide() { + // TODO: test OrderSide + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/PaymentInstructionsDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/PaymentInstructionsDetailsTest.java new file mode 100644 index 00000000..dbb55b2b --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/PaymentInstructionsDetailsTest.java @@ -0,0 +1,33 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for PaymentInstructionsDetails */ +class PaymentInstructionsDetailsTest { + private final PaymentInstructionsDetails model = new PaymentInstructionsDetails(); + + /** Model tests for PaymentInstructionsDetails */ + @Test + void testPaymentInstructionsDetails() { + // TODO: test PaymentInstructionsDetails + } + + /** Test the property 'referenceId' */ + @Test + void referenceIdTest() { + // TODO: test referenceId + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/PixAddressTest.java b/src/test/java/com/fireblocks/sdk/model/PixAddressTest.java new file mode 100644 index 00000000..5dcc9fc0 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/PixAddressTest.java @@ -0,0 +1,57 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for PixAddress */ +class PixAddressTest { + private final PixAddress model = new PixAddress(); + + /** Model tests for PixAddress */ + @Test + void testPixAddress() { + // TODO: test PixAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'pixKey' */ + @Test + void pixKeyTest() { + // TODO: test pixKey + } + + /** Test the property 'keyType' */ + @Test + void keyTypeTest() { + // TODO: test keyType + } + + /** Test the property 'bankName' */ + @Test + void bankNameTest() { + // TODO: test bankName + } + + /** Test the property 'bankCode' */ + @Test + void bankCodeTest() { + // TODO: test bankCode + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/PixDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/PixDestinationTest.java new file mode 100644 index 00000000..2134bef4 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/PixDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for PixDestination */ +class PixDestinationTest { + private final PixDestination model = new PixDestination(); + + /** Model tests for PixDestination */ + @Test + void testPixDestination() { + // TODO: test PixDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/PolicyCurrencyTest.java b/src/test/java/com/fireblocks/sdk/model/PolicyCurrencyTest.java new file mode 100644 index 00000000..fbd8f874 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/PolicyCurrencyTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for PolicyCurrency */ +class PolicyCurrencyTest { + /** Model tests for PolicyCurrency */ + @Test + void testPolicyCurrency() { + // TODO: test PolicyCurrency + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/PolicyRuleTest.java b/src/test/java/com/fireblocks/sdk/model/PolicyRuleTest.java index 3d3eafe3..9d2b0279 100644 --- a/src/test/java/com/fireblocks/sdk/model/PolicyRuleTest.java +++ b/src/test/java/com/fireblocks/sdk/model/PolicyRuleTest.java @@ -85,6 +85,12 @@ void accountTest() { // TODO: test account } + /** Test the property 'side' */ + @Test + void sideTest() { + // TODO: test side + } + /** Test the property 'verdict' */ @Test void verdictTest() { @@ -157,6 +163,12 @@ void baseAmountTest() { // TODO: test baseAmount } + /** Test the property 'dAppAddress' */ + @Test + void dAppAddressTest() { + // TODO: test dAppAddress + } + /** Test the property 'derivationPath' */ @Test void derivationPathTest() { diff --git a/src/test/java/com/fireblocks/sdk/model/PolicyTagTest.java b/src/test/java/com/fireblocks/sdk/model/PolicyTagTest.java new file mode 100644 index 00000000..771e7573 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/PolicyTagTest.java @@ -0,0 +1,33 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for PolicyTag */ +class PolicyTagTest { + private final PolicyTag model = new PolicyTag(); + + /** Model tests for PolicyTag */ + @Test + void testPolicyTag() { + // TODO: test PolicyTag + } + + /** Test the property 'id' */ + @Test + void idTest() { + // TODO: test id + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2Test.java b/src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2Test.java new file mode 100644 index 00000000..412b861d --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnum2Test.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for PolicyVerdictActionEnum2 */ +class PolicyVerdictActionEnum2Test { + /** Model tests for PolicyVerdictActionEnum2 */ + @Test + void testPolicyVerdictActionEnum2() { + // TODO: test PolicyVerdictActionEnum2 + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnumTest.java b/src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnumTest.java new file mode 100644 index 00000000..a185653c --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/PolicyVerdictActionEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for PolicyVerdictActionEnum */ +class PolicyVerdictActionEnumTest { + /** Model tests for PolicyVerdictActionEnum */ + @Test + void testPolicyVerdictActionEnum() { + // TODO: test PolicyVerdictActionEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetailsTest.java index 731367c4..b53c543c 100644 --- a/src/test/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetailsTest.java +++ b/src/test/java/com/fireblocks/sdk/model/QuoteExecutionResponseDetailsTest.java @@ -25,6 +25,24 @@ void testQuoteExecutionResponseDetails() { // TODO: test QuoteExecutionResponseDetails } + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'quoteId' */ + @Test + void quoteIdTest() { + // TODO: test quoteId + } + + /** Test the property 'quoteAmount' */ + @Test + void quoteAmountTest() { + // TODO: test quoteAmount + } + /** Test the property 'side' */ @Test void sideTest() { @@ -60,22 +78,4 @@ void quoteAssetIdTest() { void quoteAssetRailTest() { // TODO: test quoteAssetRail } - - /** Test the property 'type' */ - @Test - void typeTest() { - // TODO: test type - } - - /** Test the property 'quoteId' */ - @Test - void quoteIdTest() { - // TODO: test quoteId - } - - /** Test the property 'quoteAmount' */ - @Test - void quoteAmountTest() { - // TODO: test quoteAmount - } } diff --git a/src/test/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetailsTest.java new file mode 100644 index 00000000..53e8c914 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/QuoteExecutionTypeDetailsTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for QuoteExecutionTypeDetails */ +class QuoteExecutionTypeDetailsTest { + private final QuoteExecutionTypeDetails model = new QuoteExecutionTypeDetails(); + + /** Model tests for QuoteExecutionTypeDetails */ + @Test + void testQuoteExecutionTypeDetails() { + // TODO: test QuoteExecutionTypeDetails + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'quoteId' */ + @Test + void quoteIdTest() { + // TODO: test quoteId + } + + /** Test the property 'quoteAmount' */ + @Test + void quoteAmountTest() { + // TODO: test quoteAmount + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteTest.java b/src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteTest.java deleted file mode 100644 index ac97ec66..00000000 --- a/src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteTest.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Fireblocks API - * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) - * - * The version of the OpenAPI document: 1.6.2 - * Contact: support@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. - */ - -package com.fireblocks.sdk.model; - - -import org.junit.jupiter.api.Test; - -/** Model tests for QuoteExecutionWithRequoteResponseDetailsAllOfReQuote */ -class QuoteExecutionWithRequoteResponseDetailsAllOfReQuoteTest { - private final QuoteExecutionWithRequoteResponseDetailsAllOfReQuote model = - new QuoteExecutionWithRequoteResponseDetailsAllOfReQuote(); - - /** Model tests for QuoteExecutionWithRequoteResponseDetailsAllOfReQuote */ - @Test - void testQuoteExecutionWithRequoteResponseDetailsAllOfReQuote() { - // TODO: test QuoteExecutionWithRequoteResponseDetailsAllOfReQuote - } - - /** Test the property 'type' */ - @Test - void typeTest() { - // TODO: test type - } - - /** Test the property 'count' */ - @Test - void countTest() { - // TODO: test count - } - - /** Test the property 'slippageBps' */ - @Test - void slippageBpsTest() { - // TODO: test slippageBps - } -} diff --git a/src/test/java/com/fireblocks/sdk/model/QuotePropertiesDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/QuotePropertiesDetailsTest.java new file mode 100644 index 00000000..2150c817 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/QuotePropertiesDetailsTest.java @@ -0,0 +1,99 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for QuotePropertiesDetails */ +class QuotePropertiesDetailsTest { + private final QuotePropertiesDetails model = new QuotePropertiesDetails(); + + /** Model tests for QuotePropertiesDetails */ + @Test + void testQuotePropertiesDetails() { + // TODO: test QuotePropertiesDetails + } + + /** Test the property 'via' */ + @Test + void viaTest() { + // TODO: test via + } + + /** Test the property 'id' */ + @Test + void idTest() { + // TODO: test id + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'quoteAssetId' */ + @Test + void quoteAssetIdTest() { + // TODO: test quoteAssetId + } + + /** Test the property 'baseAssetId' */ + @Test + void baseAssetIdTest() { + // TODO: test baseAssetId + } + + /** Test the property 'baseAmount' */ + @Test + void baseAmountTest() { + // TODO: test baseAmount + } + + /** Test the property 'quoteAmount' */ + @Test + void quoteAmountTest() { + // TODO: test quoteAmount + } + + /** Test the property 'priceImpact' */ + @Test + void priceImpactTest() { + // TODO: test priceImpact + } + + /** Test the property 'quoteMinAmount' */ + @Test + void quoteMinAmountTest() { + // TODO: test quoteMinAmount + } + + /** Test the property 'executionSteps' */ + @Test + void executionStepsTest() { + // TODO: test executionSteps + } + + /** Test the property 'generalFees' */ + @Test + void generalFeesTest() { + // TODO: test generalFees + } + + /** Test the property 'side' */ + @Test + void sideTest() { + // TODO: test side + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteTest.java b/src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuoteTest.java similarity index 61% rename from src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteTest.java rename to src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuoteTest.java index 072eb706..9e54066c 100644 --- a/src/test/java/com/fireblocks/sdk/model/QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteTest.java +++ b/src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsReQuoteTest.java @@ -15,15 +15,14 @@ import org.junit.jupiter.api.Test; -/** Model tests for QuoteExecutionWithRequoteRequestDetailsAllOfReQuote */ -class QuoteExecutionWithRequoteRequestDetailsAllOfReQuoteTest { - private final QuoteExecutionWithRequoteRequestDetailsAllOfReQuote model = - new QuoteExecutionWithRequoteRequestDetailsAllOfReQuote(); +/** Model tests for ReQuoteDetailsReQuote */ +class ReQuoteDetailsReQuoteTest { + private final ReQuoteDetailsReQuote model = new ReQuoteDetailsReQuote(); - /** Model tests for QuoteExecutionWithRequoteRequestDetailsAllOfReQuote */ + /** Model tests for ReQuoteDetailsReQuote */ @Test - void testQuoteExecutionWithRequoteRequestDetailsAllOfReQuote() { - // TODO: test QuoteExecutionWithRequoteRequestDetailsAllOfReQuote + void testReQuoteDetailsReQuote() { + // TODO: test ReQuoteDetailsReQuote } /** Test the property 'type' */ diff --git a/src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsTest.java b/src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsTest.java new file mode 100644 index 00000000..9e7926c2 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ReQuoteDetailsTest.java @@ -0,0 +1,33 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ReQuoteDetails */ +class ReQuoteDetailsTest { + private final ReQuoteDetails model = new ReQuoteDetails(); + + /** Model tests for ReQuoteDetails */ + @Test + void testReQuoteDetails() { + // TODO: test ReQuoteDetails + } + + /** Test the property 'reQuote' */ + @Test + void reQuoteTest() { + // TODO: test reQuote + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/SEPAAddressTest.java b/src/test/java/com/fireblocks/sdk/model/SEPAAddressTest.java new file mode 100644 index 00000000..cd510f8c --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/SEPAAddressTest.java @@ -0,0 +1,75 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for SEPAAddress */ +class SEPAAddressTest { + private final SEPAAddress model = new SEPAAddress(); + + /** Model tests for SEPAAddress */ + @Test + void testSEPAAddress() { + // TODO: test SEPAAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'iban' */ + @Test + void ibanTest() { + // TODO: test iban + } + + /** Test the property 'bic' */ + @Test + void bicTest() { + // TODO: test bic + } + + /** Test the property 'bankName' */ + @Test + void bankNameTest() { + // TODO: test bankName + } + + /** Test the property 'bankBranch' */ + @Test + void bankBranchTest() { + // TODO: test bankBranch + } + + /** Test the property 'bankAddress' */ + @Test + void bankAddressTest() { + // TODO: test bankAddress + } + + /** Test the property 'purposeCode' */ + @Test + void purposeCodeTest() { + // TODO: test purposeCode + } + + /** Test the property 'taxId' */ + @Test + void taxIdTest() { + // TODO: test taxId + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/SEPADestinationTest.java b/src/test/java/com/fireblocks/sdk/model/SEPADestinationTest.java new file mode 100644 index 00000000..cb2803cf --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/SEPADestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for SEPADestination */ +class SEPADestinationTest { + private final SEPADestination model = new SEPADestination(); + + /** Model tests for SEPADestination */ + @Test + void testSEPADestination() { + // TODO: test SEPADestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnumTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnumTest.java new file mode 100644 index 00000000..e9bced55 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningAlertExposureTypeEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningAlertExposureTypeEnum */ +class ScreeningAlertExposureTypeEnumTest { + /** Model tests for ScreeningAlertExposureTypeEnum */ + @Test + void testScreeningAlertExposureTypeEnum() { + // TODO: test ScreeningAlertExposureTypeEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningAmlAlertTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningAmlAlertTest.java new file mode 100644 index 00000000..9790555b --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningAmlAlertTest.java @@ -0,0 +1,81 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningAmlAlert */ +class ScreeningAmlAlertTest { + private final ScreeningAmlAlert model = new ScreeningAmlAlert(); + + /** Model tests for ScreeningAmlAlert */ + @Test + void testScreeningAmlAlert() { + // TODO: test ScreeningAmlAlert + } + + /** Test the property 'alertLevel' */ + @Test + void alertLevelTest() { + // TODO: test alertLevel + } + + /** Test the property 'alertName' */ + @Test + void alertNameTest() { + // TODO: test alertName + } + + /** Test the property 'category' */ + @Test + void categoryTest() { + // TODO: test category + } + + /** Test the property 'service' */ + @Test + void serviceTest() { + // TODO: test service + } + + /** Test the property 'externalId' */ + @Test + void externalIdTest() { + // TODO: test externalId + } + + /** Test the property 'alertAmount' */ + @Test + void alertAmountTest() { + // TODO: test alertAmount + } + + /** Test the property 'exposureType' */ + @Test + void exposureTypeTest() { + // TODO: test exposureType + } + + /** Test the property 'policyAction' */ + @Test + void policyActionTest() { + // TODO: test policyAction + } + + /** Test the property 'categoryId' */ + @Test + void categoryIdTest() { + // TODO: test categoryId + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRuleTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRuleTest.java new file mode 100644 index 00000000..cdc1e1f3 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningAmlMatchedRuleTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningAmlMatchedRule */ +class ScreeningAmlMatchedRuleTest { + private final ScreeningAmlMatchedRule model = new ScreeningAmlMatchedRule(); + + /** Model tests for ScreeningAmlMatchedRule */ + @Test + void testScreeningAmlMatchedRule() { + // TODO: test ScreeningAmlMatchedRule + } + + /** Test the property 'ruleId' */ + @Test + void ruleIdTest() { + // TODO: test ruleId + } + + /** Test the property 'ruleName' */ + @Test + void ruleNameTest() { + // TODO: test ruleName + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningAmlResultTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningAmlResultTest.java new file mode 100644 index 00000000..f60cf4bc --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningAmlResultTest.java @@ -0,0 +1,51 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningAmlResult */ +class ScreeningAmlResultTest { + private final ScreeningAmlResult model = new ScreeningAmlResult(); + + /** Model tests for ScreeningAmlResult */ + @Test + void testScreeningAmlResult() { + // TODO: test ScreeningAmlResult + } + + /** Test the property 'alerts' */ + @Test + void alertsTest() { + // TODO: test alerts + } + + /** Test the property 'providerResponse' */ + @Test + void providerResponseTest() { + // TODO: test providerResponse + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } + + /** Test the property 'matchedAlert' */ + @Test + void matchedAlertTest() { + // TODO: test matchedAlert + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnumTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnumTest.java new file mode 100644 index 00000000..426a0610 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningRiskLevelEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningRiskLevelEnum */ +class ScreeningRiskLevelEnumTest { + /** Model tests for ScreeningRiskLevelEnum */ + @Test + void testScreeningRiskLevelEnum() { + // TODO: test ScreeningRiskLevelEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkAmountTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkAmountTest.java new file mode 100644 index 00000000..220be017 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkAmountTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTRLinkAmount */ +class ScreeningTRLinkAmountTest { + private final ScreeningTRLinkAmount model = new ScreeningTRLinkAmount(); + + /** Model tests for ScreeningTRLinkAmount */ + @Test + void testScreeningTRLinkAmount() { + // TODO: test ScreeningTRLinkAmount + } + + /** Test the property 'range' */ + @Test + void rangeTest() { + // TODO: test range + } + + /** Test the property 'currency' */ + @Test + void currencyTest() { + // TODO: test currency + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecisionTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecisionTest.java new file mode 100644 index 00000000..9d53c652 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmDecisionTest.java @@ -0,0 +1,165 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTRLinkMissingTrmDecision */ +class ScreeningTRLinkMissingTrmDecisionTest { + private final ScreeningTRLinkMissingTrmDecision model = new ScreeningTRLinkMissingTrmDecision(); + + /** Model tests for ScreeningTRLinkMissingTrmDecision */ + @Test + void testScreeningTRLinkMissingTrmDecision() { + // TODO: test ScreeningTRLinkMissingTrmDecision + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'validBefore' */ + @Test + void validBeforeTest() { + // TODO: test validBefore + } + + /** Test the property 'validAfter' */ + @Test + void validAfterTest() { + // TODO: test validAfter + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } + + /** Test the property 'source' */ + @Test + void sourceTest() { + // TODO: test source + } + + /** Test the property 'timestamp' */ + @Test + void timestampTest() { + // TODO: test timestamp + } + + /** Test the property 'reason' */ + @Test + void reasonTest() { + // TODO: test reason + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRuleTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRuleTest.java new file mode 100644 index 00000000..c149da32 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkMissingTrmRuleTest.java @@ -0,0 +1,147 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTRLinkMissingTrmRule */ +class ScreeningTRLinkMissingTrmRuleTest { + private final ScreeningTRLinkMissingTrmRule model = new ScreeningTRLinkMissingTrmRule(); + + /** Model tests for ScreeningTRLinkMissingTrmRule */ + @Test + void testScreeningTRLinkMissingTrmRule() { + // TODO: test ScreeningTRLinkMissingTrmRule + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'validBefore' */ + @Test + void validBeforeTest() { + // TODO: test validBefore + } + + /** Test the property 'validAfter' */ + @Test + void validAfterTest() { + // TODO: test validAfter + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRuleTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRuleTest.java new file mode 100644 index 00000000..d8120c0e --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPostScreeningRuleTest.java @@ -0,0 +1,159 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTRLinkPostScreeningRule */ +class ScreeningTRLinkPostScreeningRuleTest { + private final ScreeningTRLinkPostScreeningRule model = new ScreeningTRLinkPostScreeningRule(); + + /** Model tests for ScreeningTRLinkPostScreeningRule */ + @Test + void testScreeningTRLinkPostScreeningRule() { + // TODO: test ScreeningTRLinkPostScreeningRule + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'providerIdent' */ + @Test + void providerIdentTest() { + // TODO: test providerIdent + } + + /** Test the property 'trmStatus' */ + @Test + void trmStatusTest() { + // TODO: test trmStatus + } + + /** Test the property 'validBefore' */ + @Test + void validBeforeTest() { + // TODO: test validBefore + } + + /** Test the property 'validAfter' */ + @Test + void validAfterTest() { + // TODO: test validAfter + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRuleTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRuleTest.java new file mode 100644 index 00000000..df304403 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkPrescreeningRuleTest.java @@ -0,0 +1,135 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTRLinkPrescreeningRule */ +class ScreeningTRLinkPrescreeningRuleTest { + private final ScreeningTRLinkPrescreeningRule model = new ScreeningTRLinkPrescreeningRule(); + + /** Model tests for ScreeningTRLinkPrescreeningRule */ + @Test + void testScreeningTRLinkPrescreeningRule() { + // TODO: test ScreeningTRLinkPrescreeningRule + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBaseTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBaseTest.java new file mode 100644 index 00000000..45f2da85 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTRLinkRuleBaseTest.java @@ -0,0 +1,129 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTRLinkRuleBase */ +class ScreeningTRLinkRuleBaseTest { + private final ScreeningTRLinkRuleBase model = new ScreeningTRLinkRuleBase(); + + /** Model tests for ScreeningTRLinkRuleBase */ + @Test + void testScreeningTRLinkRuleBase() { + // TODO: test ScreeningTRLinkRuleBase + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRuleTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRuleTest.java new file mode 100644 index 00000000..6a59d432 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleMatchedRuleTest.java @@ -0,0 +1,63 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTravelRuleMatchedRule */ +class ScreeningTravelRuleMatchedRuleTest { + private final ScreeningTravelRuleMatchedRule model = new ScreeningTravelRuleMatchedRule(); + + /** Model tests for ScreeningTravelRuleMatchedRule */ + @Test + void testScreeningTravelRuleMatchedRule() { + // TODO: test ScreeningTravelRuleMatchedRule + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'amountUSD' */ + @Test + void amountUSDTest() { + // TODO: test amountUSD + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRuleTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRuleTest.java new file mode 100644 index 00000000..e01f4ae8 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRulePrescreeningRuleTest.java @@ -0,0 +1,130 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTravelRulePrescreeningRule */ +class ScreeningTravelRulePrescreeningRuleTest { + private final ScreeningTravelRulePrescreeningRule model = + new ScreeningTravelRulePrescreeningRule(); + + /** Model tests for ScreeningTravelRulePrescreeningRule */ + @Test + void testScreeningTravelRulePrescreeningRule() { + // TODO: test ScreeningTravelRulePrescreeningRule + } + + /** Test the property 'bypassReason' */ + @Test + void bypassReasonTest() { + // TODO: test bypassReason + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'transferPeerType' */ + @Test + void transferPeerTypeTest() { + // TODO: test transferPeerType + } + + /** Test the property 'transferPeerSubType' */ + @Test + void transferPeerSubTypeTest() { + // TODO: test transferPeerSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'amountUSD' */ + @Test + void amountUSDTest() { + // TODO: test amountUSD + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleResultTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleResultTest.java new file mode 100644 index 00000000..5d1e305a --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningTravelRuleResultTest.java @@ -0,0 +1,57 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningTravelRuleResult */ +class ScreeningTravelRuleResultTest { + private final ScreeningTravelRuleResult model = new ScreeningTravelRuleResult(); + + /** Model tests for ScreeningTravelRuleResult */ + @Test + void testScreeningTravelRuleResult() { + // TODO: test ScreeningTravelRuleResult + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'isVerified' */ + @Test + void isVerifiedTest() { + // TODO: test isVerified + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } + + /** Test the property 'providerResponse' */ + @Test + void providerResponseTest() { + // TODO: test providerResponse + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/ScreeningVerdictEnumTest.java b/src/test/java/com/fireblocks/sdk/model/ScreeningVerdictEnumTest.java new file mode 100644 index 00000000..23184f0c --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/ScreeningVerdictEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for ScreeningVerdictEnum */ +class ScreeningVerdictEnumTest { + /** Model tests for ScreeningVerdictEnum */ + @Test + void testScreeningVerdictEnum() { + // TODO: test ScreeningVerdictEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/SourceConfigTest.java b/src/test/java/com/fireblocks/sdk/model/SourceConfigTest.java new file mode 100644 index 00000000..1f97d235 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/SourceConfigTest.java @@ -0,0 +1,63 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for SourceConfig */ +class SourceConfigTest { + private final SourceConfig model = new SourceConfig(); + + /** Model tests for SourceConfig */ + @Test + void testSourceConfig() { + // TODO: test SourceConfig + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'subType' */ + @Test + void subTypeTest() { + // TODO: test subType + } + + /** Test the property 'ids' */ + @Test + void idsTest() { + // TODO: test ids + } + + /** Test the property 'tags' */ + @Test + void tagsTest() { + // TODO: test tags + } + + /** Test the property 'operator' */ + @Test + void operatorTest() { + // TODO: test operator + } + + /** Test the property 'matchFrom' */ + @Test + void matchFromTest() { + // TODO: test matchFrom + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/SpeiAddressTest.java b/src/test/java/com/fireblocks/sdk/model/SpeiAddressTest.java new file mode 100644 index 00000000..39cca542 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/SpeiAddressTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for SpeiAddress */ +class SpeiAddressTest { + private final SpeiAddress model = new SpeiAddress(); + + /** Model tests for SpeiAddress */ + @Test + void testSpeiAddress() { + // TODO: test SpeiAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'bankName' */ + @Test + void bankNameTest() { + // TODO: test bankName + } + + /** Test the property 'bankAccountNumber' */ + @Test + void bankAccountNumberTest() { + // TODO: test bankAccountNumber + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/SpeiDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/SpeiDestinationTest.java new file mode 100644 index 00000000..df926419 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/SpeiDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for SpeiDestination */ +class SpeiDestinationTest { + private final SpeiDestination model = new SpeiDestination(); + + /** Model tests for SpeiDestination */ + @Test + void testSpeiDestination() { + // TODO: test SpeiDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/SwiftAddressTest.java b/src/test/java/com/fireblocks/sdk/model/SwiftAddressTest.java new file mode 100644 index 00000000..ad19ae50 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/SwiftAddressTest.java @@ -0,0 +1,45 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for SwiftAddress */ +class SwiftAddressTest { + private final SwiftAddress model = new SwiftAddress(); + + /** Model tests for SwiftAddress */ + @Test + void testSwiftAddress() { + // TODO: test SwiftAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'swiftCode' */ + @Test + void swiftCodeTest() { + // TODO: test swiftCode + } + + /** Test the property 'routingNumber' */ + @Test + void routingNumberTest() { + // TODO: test routingNumber + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/SwiftDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/SwiftDestinationTest.java new file mode 100644 index 00000000..44aba20a --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/SwiftDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for SwiftDestination */ +class SwiftDestinationTest { + private final SwiftDestination model = new SwiftDestination(); + + /** Model tests for SwiftDestination */ + @Test + void testSwiftDestination() { + // TODO: test SwiftDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkAmountTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkAmountTest.java new file mode 100644 index 00000000..e9392164 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkAmountTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkAmount */ +class TRLinkAmountTest { + private final TRLinkAmount model = new TRLinkAmount(); + + /** Model tests for TRLinkAmount */ + @Test + void testTRLinkAmount() { + // TODO: test TRLinkAmount + } + + /** Test the property 'range' */ + @Test + void rangeTest() { + // TODO: test range + } + + /** Test the property 'currency' */ + @Test + void currencyTest() { + // TODO: test currency + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnumTest.java new file mode 100644 index 00000000..c617bd10 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkMissingTrmActionEnum */ +class TRLinkMissingTrmActionEnumTest { + /** Model tests for TRLinkMissingTrmActionEnum */ + @Test + void testTRLinkMissingTrmActionEnum() { + // TODO: test TRLinkMissingTrmActionEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionTest.java new file mode 100644 index 00000000..024877ca --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmActionTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkMissingTrmAction */ +class TRLinkMissingTrmActionTest { + /** Model tests for TRLinkMissingTrmAction */ + @Test + void testTRLinkMissingTrmAction() { + // TODO: test TRLinkMissingTrmAction + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecisionTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecisionTest.java new file mode 100644 index 00000000..d92c8c5b --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmDecisionTest.java @@ -0,0 +1,165 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkMissingTrmDecision */ +class TRLinkMissingTrmDecisionTest { + private final TRLinkMissingTrmDecision model = new TRLinkMissingTrmDecision(); + + /** Model tests for TRLinkMissingTrmDecision */ + @Test + void testTRLinkMissingTrmDecision() { + // TODO: test TRLinkMissingTrmDecision + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'validBefore' */ + @Test + void validBeforeTest() { + // TODO: test validBefore + } + + /** Test the property 'validAfter' */ + @Test + void validAfterTest() { + // TODO: test validAfter + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } + + /** Test the property 'source' */ + @Test + void sourceTest() { + // TODO: test source + } + + /** Test the property 'timestamp' */ + @Test + void timestampTest() { + // TODO: test timestamp + } + + /** Test the property 'reason' */ + @Test + void reasonTest() { + // TODO: test reason + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmRuleTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmRuleTest.java new file mode 100644 index 00000000..00bc7082 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkMissingTrmRuleTest.java @@ -0,0 +1,147 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkMissingTrmRule */ +class TRLinkMissingTrmRuleTest { + private final TRLinkMissingTrmRule model = new TRLinkMissingTrmRule(); + + /** Model tests for TRLinkMissingTrmRule */ + @Test + void testTRLinkMissingTrmRule() { + // TODO: test TRLinkMissingTrmRule + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'validBefore' */ + @Test + void validBeforeTest() { + // TODO: test validBefore + } + + /** Test the property 'validAfter' */ + @Test + void validAfterTest() { + // TODO: test validAfter + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkPostScreeningRuleTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkPostScreeningRuleTest.java new file mode 100644 index 00000000..baedfd3c --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkPostScreeningRuleTest.java @@ -0,0 +1,159 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkPostScreeningRule */ +class TRLinkPostScreeningRuleTest { + private final TRLinkPostScreeningRule model = new TRLinkPostScreeningRule(); + + /** Model tests for TRLinkPostScreeningRule */ + @Test + void testTRLinkPostScreeningRule() { + // TODO: test TRLinkPostScreeningRule + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'providerIdent' */ + @Test + void providerIdentTest() { + // TODO: test providerIdent + } + + /** Test the property 'trmStatus' */ + @Test + void trmStatusTest() { + // TODO: test trmStatus + } + + /** Test the property 'validBefore' */ + @Test + void validBeforeTest() { + // TODO: test validBefore + } + + /** Test the property 'validAfter' */ + @Test + void validAfterTest() { + // TODO: test validAfter + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnumTest.java new file mode 100644 index 00000000..d82fe812 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkPreScreeningActionEnum */ +class TRLinkPreScreeningActionEnumTest { + /** Model tests for TRLinkPreScreeningActionEnum */ + @Test + void testTRLinkPreScreeningActionEnum() { + // TODO: test TRLinkPreScreeningActionEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionTest.java new file mode 100644 index 00000000..4a6d967d --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningActionTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkPreScreeningAction */ +class TRLinkPreScreeningActionTest { + /** Model tests for TRLinkPreScreeningAction */ + @Test + void testTRLinkPreScreeningAction() { + // TODO: test TRLinkPreScreeningAction + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningRuleTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningRuleTest.java new file mode 100644 index 00000000..a498d869 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkPreScreeningRuleTest.java @@ -0,0 +1,135 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkPreScreeningRule */ +class TRLinkPreScreeningRuleTest { + private final TRLinkPreScreeningRule model = new TRLinkPreScreeningRule(); + + /** Model tests for TRLinkPreScreeningRule */ + @Test + void testTRLinkPreScreeningRule() { + // TODO: test TRLinkPreScreeningRule + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultTest.java new file mode 100644 index 00000000..ae339bc8 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultTest.java @@ -0,0 +1,33 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkProviderResult */ +class TRLinkProviderResultTest { + private final TRLinkProviderResult model = new TRLinkProviderResult(); + + /** Model tests for TRLinkProviderResult */ + @Test + void testTRLinkProviderResult() { + // TODO: test TRLinkProviderResult + } + + /** Test the property 'providerResponse' */ + @Test + void providerResponseTest() { + // TODO: test providerResponse + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2Test.java b/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2Test.java new file mode 100644 index 00000000..f368bcd0 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRule2Test.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkProviderResultWithRule2 */ +class TRLinkProviderResultWithRule2Test { + private final TRLinkProviderResultWithRule2 model = new TRLinkProviderResultWithRule2(); + + /** Model tests for TRLinkProviderResultWithRule2 */ + @Test + void testTRLinkProviderResultWithRule2() { + // TODO: test TRLinkProviderResultWithRule2 + } + + /** Test the property 'providerResponse' */ + @Test + void providerResponseTest() { + // TODO: test providerResponse + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRuleTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRuleTest.java new file mode 100644 index 00000000..fb05aa2c --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkProviderResultWithRuleTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkProviderResultWithRule */ +class TRLinkProviderResultWithRuleTest { + private final TRLinkProviderResultWithRule model = new TRLinkProviderResultWithRule(); + + /** Model tests for TRLinkProviderResultWithRule */ + @Test + void testTRLinkProviderResultWithRule() { + // TODO: test TRLinkProviderResultWithRule + } + + /** Test the property 'providerResponse' */ + @Test + void providerResponseTest() { + // TODO: test providerResponse + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayloadTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayloadTest.java new file mode 100644 index 00000000..f0da32f2 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultFullPayloadTest.java @@ -0,0 +1,88 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkRegistrationResultFullPayload */ +class TRLinkRegistrationResultFullPayloadTest { + private final TRLinkRegistrationResultFullPayload model = + new TRLinkRegistrationResultFullPayload(); + + /** Model tests for TRLinkRegistrationResultFullPayload */ + @Test + void testTRLinkRegistrationResultFullPayload() { + // TODO: test TRLinkRegistrationResultFullPayload + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'provider' */ + @Test + void providerTest() { + // TODO: test provider + } + + /** Test the property 'success' */ + @Test + void successTest() { + // TODO: test success + } + + /** Test the property 'timestamp' */ + @Test + void timestampTest() { + // TODO: test timestamp + } + + /** Test the property 'destRecordId' */ + @Test + void destRecordIdTest() { + // TODO: test destRecordId + } + + /** Test the property 'travelRuleMessageId' */ + @Test + void travelRuleMessageIdTest() { + // TODO: test travelRuleMessageId + } + + /** Test the property 'customerIntegrationId' */ + @Test + void customerIntegrationIdTest() { + // TODO: test customerIntegrationId + } + + /** Test the property 'customerShortName' */ + @Test + void customerShortNameTest() { + // TODO: test customerShortName + } + + /** Test the property 'result' */ + @Test + void resultTest() { + // TODO: test result + } + + /** Test the property 'matchedPrescreeningRule' */ + @Test + void matchedPrescreeningRuleTest() { + // TODO: test matchedPrescreeningRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultTest.java new file mode 100644 index 00000000..b27af9bf --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationResultTest.java @@ -0,0 +1,87 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkRegistrationResult */ +class TRLinkRegistrationResultTest { + private final TRLinkRegistrationResult model = new TRLinkRegistrationResult(); + + /** Model tests for TRLinkRegistrationResult */ + @Test + void testTRLinkRegistrationResult() { + // TODO: test TRLinkRegistrationResult + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'provider' */ + @Test + void providerTest() { + // TODO: test provider + } + + /** Test the property 'success' */ + @Test + void successTest() { + // TODO: test success + } + + /** Test the property 'timestamp' */ + @Test + void timestampTest() { + // TODO: test timestamp + } + + /** Test the property 'destRecordId' */ + @Test + void destRecordIdTest() { + // TODO: test destRecordId + } + + /** Test the property 'travelRuleMessageId' */ + @Test + void travelRuleMessageIdTest() { + // TODO: test travelRuleMessageId + } + + /** Test the property 'customerIntegrationId' */ + @Test + void customerIntegrationIdTest() { + // TODO: test customerIntegrationId + } + + /** Test the property 'customerShortName' */ + @Test + void customerShortNameTest() { + // TODO: test customerShortName + } + + /** Test the property 'result' */ + @Test + void resultTest() { + // TODO: test result + } + + /** Test the property 'matchedPrescreeningRule' */ + @Test + void matchedPrescreeningRuleTest() { + // TODO: test matchedPrescreeningRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnumTest.java new file mode 100644 index 00000000..51708364 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkRegistrationStatusEnum */ +class TRLinkRegistrationStatusEnumTest { + /** Model tests for TRLinkRegistrationStatusEnum */ + @Test + void testTRLinkRegistrationStatusEnum() { + // TODO: test TRLinkRegistrationStatusEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusTest.java new file mode 100644 index 00000000..329a7714 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkRegistrationStatusTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkRegistrationStatus */ +class TRLinkRegistrationStatusTest { + /** Model tests for TRLinkRegistrationStatus */ + @Test + void testTRLinkRegistrationStatus() { + // TODO: test TRLinkRegistrationStatus + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkResultFullPayloadTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkResultFullPayloadTest.java new file mode 100644 index 00000000..95459a9e --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkResultFullPayloadTest.java @@ -0,0 +1,111 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkResultFullPayload */ +class TRLinkResultFullPayloadTest { + private final TRLinkResultFullPayload model = new TRLinkResultFullPayload(); + + /** Model tests for TRLinkResultFullPayload */ + @Test + void testTRLinkResultFullPayload() { + // TODO: test TRLinkResultFullPayload + } + + /** Test the property 'provider' */ + @Test + void providerTest() { + // TODO: test provider + } + + /** Test the property 'timestamp' */ + @Test + void timestampTest() { + // TODO: test timestamp + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'verdict' */ + @Test + void verdictTest() { + // TODO: test verdict + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'destTag' */ + @Test + void destTagTest() { + // TODO: test destTag + } + + /** Test the property 'bypassReason' */ + @Test + void bypassReasonTest() { + // TODO: test bypassReason + } + + /** Test the property 'detailsMessage' */ + @Test + void detailsMessageTest() { + // TODO: test detailsMessage + } + + /** Test the property 'customerIntegrationId' */ + @Test + void customerIntegrationIdTest() { + // TODO: test customerIntegrationId + } + + /** Test the property 'customerShortName' */ + @Test + void customerShortNameTest() { + // TODO: test customerShortName + } + + /** Test the property 'travelRuleMessageId' */ + @Test + void travelRuleMessageIdTest() { + // TODO: test travelRuleMessageId + } + + /** Test the property 'result' */ + @Test + void resultTest() { + // TODO: test result + } + + /** Test the property 'matchedPrescreeningRule' */ + @Test + void matchedPrescreeningRuleTest() { + // TODO: test matchedPrescreeningRule + } + + /** Test the property 'matchedNoTrmScreeningRule' */ + @Test + void matchedNoTrmScreeningRuleTest() { + // TODO: test matchedNoTrmScreeningRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkResultTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkResultTest.java new file mode 100644 index 00000000..95179b07 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkResultTest.java @@ -0,0 +1,111 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkResult */ +class TRLinkResultTest { + private final TRLinkResult model = new TRLinkResult(); + + /** Model tests for TRLinkResult */ + @Test + void testTRLinkResult() { + // TODO: test TRLinkResult + } + + /** Test the property 'provider' */ + @Test + void providerTest() { + // TODO: test provider + } + + /** Test the property 'timestamp' */ + @Test + void timestampTest() { + // TODO: test timestamp + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'verdict' */ + @Test + void verdictTest() { + // TODO: test verdict + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'destTag' */ + @Test + void destTagTest() { + // TODO: test destTag + } + + /** Test the property 'bypassReason' */ + @Test + void bypassReasonTest() { + // TODO: test bypassReason + } + + /** Test the property 'detailsMessage' */ + @Test + void detailsMessageTest() { + // TODO: test detailsMessage + } + + /** Test the property 'customerIntegrationId' */ + @Test + void customerIntegrationIdTest() { + // TODO: test customerIntegrationId + } + + /** Test the property 'customerShortName' */ + @Test + void customerShortNameTest() { + // TODO: test customerShortName + } + + /** Test the property 'travelRuleMessageId' */ + @Test + void travelRuleMessageIdTest() { + // TODO: test travelRuleMessageId + } + + /** Test the property 'result' */ + @Test + void resultTest() { + // TODO: test result + } + + /** Test the property 'matchedPrescreeningRule' */ + @Test + void matchedPrescreeningRuleTest() { + // TODO: test matchedPrescreeningRule + } + + /** Test the property 'matchedNoTrmScreeningRule' */ + @Test + void matchedNoTrmScreeningRuleTest() { + // TODO: test matchedNoTrmScreeningRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkRuleBaseTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkRuleBaseTest.java new file mode 100644 index 00000000..51368ba0 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkRuleBaseTest.java @@ -0,0 +1,129 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkRuleBase */ +class TRLinkRuleBaseTest { + private final TRLinkRuleBase model = new TRLinkRuleBase(); + + /** Model tests for TRLinkRuleBase */ + @Test + void testTRLinkRuleBase() { + // TODO: test TRLinkRuleBase + } + + /** Test the property 'customerId' */ + @Test + void customerIdTest() { + // TODO: test customerId + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'sourceAddress' */ + @Test + void sourceAddressTest() { + // TODO: test sourceAddress + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'description' */ + @Test + void descriptionTest() { + // TODO: test description + } + + /** Test the property 'isDefault' */ + @Test + void isDefaultTest() { + // TODO: test isDefault + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnumTest.java new file mode 100644 index 00000000..42ecca12 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkTrmScreeningStatusEnum */ +class TRLinkTrmScreeningStatusEnumTest { + /** Model tests for TRLinkTrmScreeningStatusEnum */ + @Test + void testTRLinkTrmScreeningStatusEnum() { + // TODO: test TRLinkTrmScreeningStatusEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusTest.java new file mode 100644 index 00000000..08f9eaa3 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkTrmScreeningStatusTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkTrmScreeningStatus */ +class TRLinkTrmScreeningStatusTest { + /** Model tests for TRLinkTrmScreeningStatus */ + @Test + void testTRLinkTrmScreeningStatus() { + // TODO: test TRLinkTrmScreeningStatus + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkVerdictEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkVerdictEnumTest.java new file mode 100644 index 00000000..895cb338 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkVerdictEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkVerdictEnum */ +class TRLinkVerdictEnumTest { + /** Model tests for TRLinkVerdictEnum */ + @Test + void testTRLinkVerdictEnum() { + // TODO: test TRLinkVerdictEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TRLinkVerdictTest.java b/src/test/java/com/fireblocks/sdk/model/TRLinkVerdictTest.java new file mode 100644 index 00000000..bc406f49 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TRLinkVerdictTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TRLinkVerdict */ +class TRLinkVerdictTest { + /** Model tests for TRLinkVerdict */ + @Test + void testTRLinkVerdict() { + // TODO: test TRLinkVerdict + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TagAttachmentOperationActionTest.java b/src/test/java/com/fireblocks/sdk/model/TagAttachmentOperationActionTest.java new file mode 100644 index 00000000..501b3157 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TagAttachmentOperationActionTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TagAttachmentOperationAction */ +class TagAttachmentOperationActionTest { + /** Model tests for TagAttachmentOperationAction */ + @Test + void testTagAttachmentOperationAction() { + // TODO: test TagAttachmentOperationAction + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TagTest.java b/src/test/java/com/fireblocks/sdk/model/TagTest.java index e1111abd..8eb7c49f 100644 --- a/src/test/java/com/fireblocks/sdk/model/TagTest.java +++ b/src/test/java/com/fireblocks/sdk/model/TagTest.java @@ -42,4 +42,22 @@ void labelTest() { void descriptionTest() { // TODO: test description } + + /** Test the property 'isProtected' */ + @Test + void isProtectedTest() { + // TODO: test isProtected + } + + /** Test the property 'color' */ + @Test + void colorTest() { + // TODO: test color + } + + /** Test the property 'updatedAt' */ + @Test + void updatedAtTest() { + // TODO: test updatedAt + } } diff --git a/src/test/java/com/fireblocks/sdk/model/TransactionDirectionTest.java b/src/test/java/com/fireblocks/sdk/model/TransactionDirectionTest.java new file mode 100644 index 00000000..765a4ee9 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TransactionDirectionTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TransactionDirection */ +class TransactionDirectionTest { + /** Model tests for TransactionDirection */ + @Test + void testTransactionDirection() { + // TODO: test TransactionDirection + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TransactionOperationEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TransactionOperationEnumTest.java new file mode 100644 index 00000000..17c576d8 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TransactionOperationEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TransactionOperationEnum */ +class TransactionOperationEnumTest { + /** Model tests for TransactionOperationEnum */ + @Test + void testTransactionOperationEnum() { + // TODO: test TransactionOperationEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnumTest.java new file mode 100644 index 00000000..a4262e46 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TransferPeerSubTypeEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TransferPeerSubTypeEnum */ +class TransferPeerSubTypeEnumTest { + /** Model tests for TransferPeerSubTypeEnum */ + @Test + void testTransferPeerSubTypeEnum() { + // TODO: test TransferPeerSubTypeEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TransferPeerTypeEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TransferPeerTypeEnumTest.java new file mode 100644 index 00000000..292602f9 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TransferPeerTypeEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TransferPeerTypeEnum */ +class TransferPeerTypeEnumTest { + /** Model tests for TransferPeerTypeEnum */ + @Test + void testTransferPeerTypeEnum() { + // TODO: test TransferPeerTypeEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TravelRuleActionEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TravelRuleActionEnumTest.java new file mode 100644 index 00000000..632575bb --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TravelRuleActionEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TravelRuleActionEnum */ +class TravelRuleActionEnumTest { + /** Model tests for TravelRuleActionEnum */ + @Test + void testTravelRuleActionEnum() { + // TODO: test TravelRuleActionEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TravelRuleDirectionEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TravelRuleDirectionEnumTest.java new file mode 100644 index 00000000..248c07d1 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TravelRuleDirectionEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TravelRuleDirectionEnum */ +class TravelRuleDirectionEnumTest { + /** Model tests for TravelRuleDirectionEnum */ + @Test + void testTravelRuleDirectionEnum() { + // TODO: test TravelRuleDirectionEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TravelRuleMatchedRuleTest.java b/src/test/java/com/fireblocks/sdk/model/TravelRuleMatchedRuleTest.java new file mode 100644 index 00000000..87a96632 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TravelRuleMatchedRuleTest.java @@ -0,0 +1,63 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TravelRuleMatchedRule */ +class TravelRuleMatchedRuleTest { + private final TravelRuleMatchedRule model = new TravelRuleMatchedRule(); + + /** Model tests for TravelRuleMatchedRule */ + @Test + void testTravelRuleMatchedRule() { + // TODO: test TravelRuleMatchedRule + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'status' */ + @Test + void statusTest() { + // TODO: test status + } + + /** Test the property 'amountUSD' */ + @Test + void amountUSDTest() { + // TODO: test amountUSD + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TravelRulePrescreeningRuleTest.java b/src/test/java/com/fireblocks/sdk/model/TravelRulePrescreeningRuleTest.java new file mode 100644 index 00000000..351b519e --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TravelRulePrescreeningRuleTest.java @@ -0,0 +1,129 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TravelRulePrescreeningRule */ +class TravelRulePrescreeningRuleTest { + private final TravelRulePrescreeningRule model = new TravelRulePrescreeningRule(); + + /** Model tests for TravelRulePrescreeningRule */ + @Test + void testTravelRulePrescreeningRule() { + // TODO: test TravelRulePrescreeningRule + } + + /** Test the property 'bypassReason' */ + @Test + void bypassReasonTest() { + // TODO: test bypassReason + } + + /** Test the property 'sourceType' */ + @Test + void sourceTypeTest() { + // TODO: test sourceType + } + + /** Test the property 'sourceSubType' */ + @Test + void sourceSubTypeTest() { + // TODO: test sourceSubType + } + + /** Test the property 'destType' */ + @Test + void destTypeTest() { + // TODO: test destType + } + + /** Test the property 'destSubType' */ + @Test + void destSubTypeTest() { + // TODO: test destSubType + } + + /** Test the property 'transferPeerType' */ + @Test + void transferPeerTypeTest() { + // TODO: test transferPeerType + } + + /** Test the property 'transferPeerSubType' */ + @Test + void transferPeerSubTypeTest() { + // TODO: test transferPeerSubType + } + + /** Test the property 'destAddress' */ + @Test + void destAddressTest() { + // TODO: test destAddress + } + + /** Test the property 'sourceId' */ + @Test + void sourceIdTest() { + // TODO: test sourceId + } + + /** Test the property 'destId' */ + @Test + void destIdTest() { + // TODO: test destId + } + + /** Test the property 'asset' */ + @Test + void assetTest() { + // TODO: test asset + } + + /** Test the property 'baseAsset' */ + @Test + void baseAssetTest() { + // TODO: test baseAsset + } + + /** Test the property 'amount' */ + @Test + void amountTest() { + // TODO: test amount + } + + /** Test the property 'amountUSD' */ + @Test + void amountUSDTest() { + // TODO: test amountUSD + } + + /** Test the property 'networkProtocol' */ + @Test + void networkProtocolTest() { + // TODO: test networkProtocol + } + + /** Test the property 'operation' */ + @Test + void operationTest() { + // TODO: test operation + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TravelRuleResultTest.java b/src/test/java/com/fireblocks/sdk/model/TravelRuleResultTest.java new file mode 100644 index 00000000..6e4ffd39 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TravelRuleResultTest.java @@ -0,0 +1,57 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TravelRuleResult */ +class TravelRuleResultTest { + private final TravelRuleResult model = new TravelRuleResult(); + + /** Model tests for TravelRuleResult */ + @Test + void testTravelRuleResult() { + // TODO: test TravelRuleResult + } + + /** Test the property 'direction' */ + @Test + void directionTest() { + // TODO: test direction + } + + /** Test the property 'isVerified' */ + @Test + void isVerifiedTest() { + // TODO: test isVerified + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } + + /** Test the property 'providerResponse' */ + @Test + void providerResponseTest() { + // TODO: test providerResponse + } + + /** Test the property 'matchedRule' */ + @Test + void matchedRuleTest() { + // TODO: test matchedRule + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TravelRuleStatusEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TravelRuleStatusEnumTest.java new file mode 100644 index 00000000..e22c2063 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TravelRuleStatusEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TravelRuleStatusEnum */ +class TravelRuleStatusEnumTest { + /** Model tests for TravelRuleStatusEnum */ + @Test + void testTravelRuleStatusEnum() { + // TODO: test TravelRuleStatusEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/TravelRuleVerdictEnumTest.java b/src/test/java/com/fireblocks/sdk/model/TravelRuleVerdictEnumTest.java new file mode 100644 index 00000000..f2c05b03 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/TravelRuleVerdictEnumTest.java @@ -0,0 +1,25 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for TravelRuleVerdictEnum */ +class TravelRuleVerdictEnumTest { + /** Model tests for TravelRuleVerdictEnum */ + @Test + void testTravelRuleVerdictEnum() { + // TODO: test TravelRuleVerdictEnum + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/USWireAddressTest.java b/src/test/java/com/fireblocks/sdk/model/USWireAddressTest.java new file mode 100644 index 00000000..6b82d3e7 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/USWireAddressTest.java @@ -0,0 +1,57 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for USWireAddress */ +class USWireAddressTest { + private final USWireAddress model = new USWireAddress(); + + /** Model tests for USWireAddress */ + @Test + void testUSWireAddress() { + // TODO: test USWireAddress + } + + /** Test the property 'accountHolder' */ + @Test + void accountHolderTest() { + // TODO: test accountHolder + } + + /** Test the property 'bankName' */ + @Test + void bankNameTest() { + // TODO: test bankName + } + + /** Test the property 'bankAccountNumber' */ + @Test + void bankAccountNumberTest() { + // TODO: test bankAccountNumber + } + + /** Test the property 'routingNumber' */ + @Test + void routingNumberTest() { + // TODO: test routingNumber + } + + /** Test the property 'bankAddress' */ + @Test + void bankAddressTest() { + // TODO: test bankAddress + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/USWireDestinationTest.java b/src/test/java/com/fireblocks/sdk/model/USWireDestinationTest.java new file mode 100644 index 00000000..11235904 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/USWireDestinationTest.java @@ -0,0 +1,39 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for USWireDestination */ +class USWireDestinationTest { + private final USWireDestination model = new USWireDestination(); + + /** Model tests for USWireDestination */ + @Test + void testUSWireDestination() { + // TODO: test USWireDestination + } + + /** Test the property 'type' */ + @Test + void typeTest() { + // TODO: test type + } + + /** Test the property 'address' */ + @Test + void addressTest() { + // TODO: test address + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperationTest.java b/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperationTest.java new file mode 100644 index 00000000..22d554fc --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentOperationTest.java @@ -0,0 +1,46 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for VaultAccountTagAttachmentOperation */ +class VaultAccountTagAttachmentOperationTest { + private final VaultAccountTagAttachmentOperation model = + new VaultAccountTagAttachmentOperation(); + + /** Model tests for VaultAccountTagAttachmentOperation */ + @Test + void testVaultAccountTagAttachmentOperation() { + // TODO: test VaultAccountTagAttachmentOperation + } + + /** Test the property 'vaultAccountId' */ + @Test + void vaultAccountIdTest() { + // TODO: test vaultAccountId + } + + /** Test the property 'tagId' */ + @Test + void tagIdTest() { + // TODO: test tagId + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperationTest.java b/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperationTest.java new file mode 100644 index 00000000..b9a79ecc --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentPendingOperationTest.java @@ -0,0 +1,52 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for VaultAccountTagAttachmentPendingOperation */ +class VaultAccountTagAttachmentPendingOperationTest { + private final VaultAccountTagAttachmentPendingOperation model = + new VaultAccountTagAttachmentPendingOperation(); + + /** Model tests for VaultAccountTagAttachmentPendingOperation */ + @Test + void testVaultAccountTagAttachmentPendingOperation() { + // TODO: test VaultAccountTagAttachmentPendingOperation + } + + /** Test the property 'vaultAccountId' */ + @Test + void vaultAccountIdTest() { + // TODO: test vaultAccountId + } + + /** Test the property 'tagId' */ + @Test + void tagIdTest() { + // TODO: test tagId + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } + + /** Test the property 'approvalRequestId' */ + @Test + void approvalRequestIdTest() { + // TODO: test approvalRequestId + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperationTest.java b/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperationTest.java new file mode 100644 index 00000000..55c6dbfe --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/VaultAccountTagAttachmentRejectedOperationTest.java @@ -0,0 +1,52 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for VaultAccountTagAttachmentRejectedOperation */ +class VaultAccountTagAttachmentRejectedOperationTest { + private final VaultAccountTagAttachmentRejectedOperation model = + new VaultAccountTagAttachmentRejectedOperation(); + + /** Model tests for VaultAccountTagAttachmentRejectedOperation */ + @Test + void testVaultAccountTagAttachmentRejectedOperation() { + // TODO: test VaultAccountTagAttachmentRejectedOperation + } + + /** Test the property 'vaultAccountId' */ + @Test + void vaultAccountIdTest() { + // TODO: test vaultAccountId + } + + /** Test the property 'tagId' */ + @Test + void tagIdTest() { + // TODO: test tagId + } + + /** Test the property 'action' */ + @Test + void actionTest() { + // TODO: test action + } + + /** Test the property 'reason' */ + @Test + void reasonTest() { + // TODO: test reason + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequestTest.java b/src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequestTest.java new file mode 100644 index 00000000..8d827538 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsRequestTest.java @@ -0,0 +1,46 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for VaultAccountsTagAttachmentOperationsRequest */ +class VaultAccountsTagAttachmentOperationsRequestTest { + private final VaultAccountsTagAttachmentOperationsRequest model = + new VaultAccountsTagAttachmentOperationsRequest(); + + /** Model tests for VaultAccountsTagAttachmentOperationsRequest */ + @Test + void testVaultAccountsTagAttachmentOperationsRequest() { + // TODO: test VaultAccountsTagAttachmentOperationsRequest + } + + /** Test the property 'vaultAccountIds' */ + @Test + void vaultAccountIdsTest() { + // TODO: test vaultAccountIds + } + + /** Test the property 'tagIdsToAttach' */ + @Test + void tagIdsToAttachTest() { + // TODO: test tagIdsToAttach + } + + /** Test the property 'tagIdsToDetach' */ + @Test + void tagIdsToDetachTest() { + // TODO: test tagIdsToDetach + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponseTest.java b/src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponseTest.java new file mode 100644 index 00000000..683fb273 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/VaultAccountsTagAttachmentOperationsResponseTest.java @@ -0,0 +1,46 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for VaultAccountsTagAttachmentOperationsResponse */ +class VaultAccountsTagAttachmentOperationsResponseTest { + private final VaultAccountsTagAttachmentOperationsResponse model = + new VaultAccountsTagAttachmentOperationsResponse(); + + /** Model tests for VaultAccountsTagAttachmentOperationsResponse */ + @Test + void testVaultAccountsTagAttachmentOperationsResponse() { + // TODO: test VaultAccountsTagAttachmentOperationsResponse + } + + /** Test the property 'appliedOperations' */ + @Test + void appliedOperationsTest() { + // TODO: test appliedOperations + } + + /** Test the property 'pendingOperations' */ + @Test + void pendingOperationsTest() { + // TODO: test pendingOperations + } + + /** Test the property 'rejectedOperations' */ + @Test + void rejectedOperationsTest() { + // TODO: test rejectedOperations + } +} diff --git a/src/test/java/com/fireblocks/sdk/model/WebhookMetricTest.java b/src/test/java/com/fireblocks/sdk/model/WebhookMetricTest.java new file mode 100644 index 00000000..09834ed5 --- /dev/null +++ b/src/test/java/com/fireblocks/sdk/model/WebhookMetricTest.java @@ -0,0 +1,33 @@ +/* + * Fireblocks API + * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) + * + * The version of the OpenAPI document: 1.6.2 + * Contact: support@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. + */ + +package com.fireblocks.sdk.model; + + +import org.junit.jupiter.api.Test; + +/** Model tests for WebhookMetric */ +class WebhookMetricTest { + private final WebhookMetric model = new WebhookMetric(); + + /** Model tests for WebhookMetric */ + @Test + void testWebhookMetric() { + // TODO: test WebhookMetric + } + + /** Test the property 'value' */ + @Test + void valueTest() { + // TODO: test value + } +}