@cdx-forge/di-typescript-sdk 0.1.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +439 -0
- package/dist/generated/src/apis/AccountsApi.d.ts +447 -0
- package/dist/generated/src/apis/AccountsApi.js +501 -0
- package/dist/generated/src/apis/AlertConfigurationApi.d.ts +533 -0
- package/dist/generated/src/apis/AlertConfigurationApi.js +572 -0
- package/dist/generated/src/apis/AlertDeliveryApi.d.ts +218 -0
- package/dist/generated/src/apis/AlertDeliveryApi.js +219 -0
- package/dist/generated/src/apis/AlertPreferencesApi.d.ts +437 -0
- package/dist/generated/src/apis/AlertPreferencesApi.js +467 -0
- package/dist/generated/src/apis/AuthenticationApi.d.ts +277 -0
- package/dist/generated/src/apis/AuthenticationApi.js +378 -0
- package/dist/generated/src/apis/BusinessBankingApi.d.ts +308 -0
- package/dist/generated/src/apis/BusinessBankingApi.js +340 -0
- package/dist/generated/src/apis/CustomerCampaignsApi.d.ts +527 -0
- package/dist/generated/src/apis/CustomerCampaignsApi.js +596 -0
- package/dist/generated/src/apis/CustomerManagementApi.d.ts +452 -0
- package/dist/generated/src/apis/CustomerManagementApi.js +486 -0
- package/dist/generated/src/apis/DocumentsAndPreferencesApi.d.ts +505 -0
- package/dist/generated/src/apis/DocumentsAndPreferencesApi.js +555 -0
- package/dist/generated/src/apis/MXApi.d.ts +211 -0
- package/dist/generated/src/apis/MXApi.js +252 -0
- package/dist/generated/src/apis/MoneyMovementApi.d.ts +299 -0
- package/dist/generated/src/apis/MoneyMovementApi.js +317 -0
- package/dist/generated/src/apis/NotificationChannelsApi.d.ts +403 -0
- package/dist/generated/src/apis/NotificationChannelsApi.js +444 -0
- package/dist/generated/src/apis/index.d.ts +12 -0
- package/dist/generated/src/apis/index.js +14 -0
- package/dist/generated/src/index.d.ts +3 -0
- package/dist/generated/src/index.js +5 -0
- package/dist/generated/src/models/Account.d.ts +218 -0
- package/dist/generated/src/models/Account.js +107 -0
- package/dist/generated/src/models/Account1.d.ts +206 -0
- package/dist/generated/src/models/Account1.js +103 -0
- package/dist/generated/src/models/Account2Inner.d.ts +399 -0
- package/dist/generated/src/models/Account2Inner.js +178 -0
- package/dist/generated/src/models/Account3.d.ts +636 -0
- package/dist/generated/src/models/Account3.js +300 -0
- package/dist/generated/src/models/AccountCategory.d.ts +28 -0
- package/dist/generated/src/models/AccountCategory.js +46 -0
- package/dist/generated/src/models/AccountEntitledFeature.d.ts +35 -0
- package/dist/generated/src/models/AccountEntitledFeature.js +44 -0
- package/dist/generated/src/models/AccountEvent.d.ts +46 -0
- package/dist/generated/src/models/AccountEvent.js +47 -0
- package/dist/generated/src/models/AccountId.d.ts +50 -0
- package/dist/generated/src/models/AccountId.js +54 -0
- package/dist/generated/src/models/AccountNickname.d.ts +38 -0
- package/dist/generated/src/models/AccountNickname.js +43 -0
- package/dist/generated/src/models/AccountNumber.d.ts +80 -0
- package/dist/generated/src/models/AccountNumber.js +57 -0
- package/dist/generated/src/models/AccountRefreshStatus.d.ts +77 -0
- package/dist/generated/src/models/AccountRefreshStatus.js +61 -0
- package/dist/generated/src/models/AccountStatus.d.ts +116 -0
- package/dist/generated/src/models/AccountStatus.js +69 -0
- package/dist/generated/src/models/AccountStatus1.d.ts +116 -0
- package/dist/generated/src/models/AccountStatus1.js +69 -0
- package/dist/generated/src/models/AccountStatuses.d.ts +116 -0
- package/dist/generated/src/models/AccountStatuses.js +69 -0
- package/dist/generated/src/models/AccountTransaction.d.ts +177 -0
- package/dist/generated/src/models/AccountTransaction.js +90 -0
- package/dist/generated/src/models/AccountTransaction1.d.ts +380 -0
- package/dist/generated/src/models/AccountTransaction1.js +203 -0
- package/dist/generated/src/models/AccountTransactions.d.ts +168 -0
- package/dist/generated/src/models/AccountTransactions.js +96 -0
- package/dist/generated/src/models/AccountType.d.ts +51 -0
- package/dist/generated/src/models/AccountType.js +48 -0
- package/dist/generated/src/models/AccountType1.d.ts +45 -0
- package/dist/generated/src/models/AccountType1.js +46 -0
- package/dist/generated/src/models/AccountType2.d.ts +80 -0
- package/dist/generated/src/models/AccountType2.js +76 -0
- package/dist/generated/src/models/AccountsResponse.d.ts +39 -0
- package/dist/generated/src/models/AccountsResponse.js +44 -0
- package/dist/generated/src/models/Action.d.ts +39 -0
- package/dist/generated/src/models/Action.js +44 -0
- package/dist/generated/src/models/Actions.d.ts +62 -0
- package/dist/generated/src/models/Actions.js +51 -0
- package/dist/generated/src/models/Actions1.d.ts +56 -0
- package/dist/generated/src/models/Actions1.js +49 -0
- package/dist/generated/src/models/AdditionalFilters.d.ts +47 -0
- package/dist/generated/src/models/AdditionalFilters.js +52 -0
- package/dist/generated/src/models/AlertHistoryContentResource.d.ts +68 -0
- package/dist/generated/src/models/AlertHistoryContentResource.js +53 -0
- package/dist/generated/src/models/AlertHistorySummaryResource.d.ts +94 -0
- package/dist/generated/src/models/AlertHistorySummaryResource.js +61 -0
- package/dist/generated/src/models/AlertHistorySummaryResources.d.ts +33 -0
- package/dist/generated/src/models/AlertHistorySummaryResources.js +42 -0
- package/dist/generated/src/models/AlertPreferenceAccountDetailsModel.d.ts +44 -0
- package/dist/generated/src/models/AlertPreferenceAccountDetailsModel.js +45 -0
- package/dist/generated/src/models/AlertPreferenceDetailsModel.d.ts +62 -0
- package/dist/generated/src/models/AlertPreferenceDetailsModel.js +51 -0
- package/dist/generated/src/models/AlertPreferenceResource.d.ts +64 -0
- package/dist/generated/src/models/AlertPreferenceResource.js +53 -0
- package/dist/generated/src/models/AlertPreferenceResources.d.ts +33 -0
- package/dist/generated/src/models/AlertPreferenceResources.js +42 -0
- package/dist/generated/src/models/AlertTemplateResource.d.ts +92 -0
- package/dist/generated/src/models/AlertTemplateResource.js +66 -0
- package/dist/generated/src/models/AlertTemplateResources.d.ts +33 -0
- package/dist/generated/src/models/AlertTemplateResources.js +42 -0
- package/dist/generated/src/models/AlertTypeResource.d.ts +108 -0
- package/dist/generated/src/models/AlertTypeResource.js +70 -0
- package/dist/generated/src/models/AlertTypeResources.d.ts +33 -0
- package/dist/generated/src/models/AlertTypeResources.js +42 -0
- package/dist/generated/src/models/AuthCode.d.ts +38 -0
- package/dist/generated/src/models/AuthCode.js +43 -0
- package/dist/generated/src/models/AuthorizationCodeResponse.d.ts +56 -0
- package/dist/generated/src/models/AuthorizationCodeResponse.js +49 -0
- package/dist/generated/src/models/Balance.d.ts +39 -0
- package/dist/generated/src/models/Balance.js +44 -0
- package/dist/generated/src/models/Balance1.d.ts +105 -0
- package/dist/generated/src/models/Balance1.js +66 -0
- package/dist/generated/src/models/BankAccount.d.ts +39 -0
- package/dist/generated/src/models/BankAccount.js +43 -0
- package/dist/generated/src/models/BankingImage.d.ts +120 -0
- package/dist/generated/src/models/BankingImage.js +73 -0
- package/dist/generated/src/models/BankingImages.d.ts +33 -0
- package/dist/generated/src/models/BankingImages.js +42 -0
- package/dist/generated/src/models/BaseGroupsWithParticipantsCountDTO.d.ts +47 -0
- package/dist/generated/src/models/BaseGroupsWithParticipantsCountDTO.js +48 -0
- package/dist/generated/src/models/BasePageDTOListImportJobDTO.d.ts +47 -0
- package/dist/generated/src/models/BasePageDTOListImportJobDTO.js +48 -0
- package/dist/generated/src/models/BasePageDTOListImportJobErrorDTO.d.ts +47 -0
- package/dist/generated/src/models/BasePageDTOListImportJobErrorDTO.js +48 -0
- package/dist/generated/src/models/BbRegistration.d.ts +134 -0
- package/dist/generated/src/models/BbRegistration.js +69 -0
- package/dist/generated/src/models/BbRegistrationStatus.d.ts +27 -0
- package/dist/generated/src/models/BbRegistrationStatus.js +45 -0
- package/dist/generated/src/models/BbRegistrationUser.d.ts +64 -0
- package/dist/generated/src/models/BbRegistrationUser.js +58 -0
- package/dist/generated/src/models/BbRegistrationUserType.d.ts +26 -0
- package/dist/generated/src/models/BbRegistrationUserType.js +44 -0
- package/dist/generated/src/models/BusinessAddress.d.ts +62 -0
- package/dist/generated/src/models/BusinessAddress.js +59 -0
- package/dist/generated/src/models/BusinessContact.d.ts +64 -0
- package/dist/generated/src/models/BusinessContact.js +52 -0
- package/dist/generated/src/models/BusinessDetails.d.ts +103 -0
- package/dist/generated/src/models/BusinessDetails.js +79 -0
- package/dist/generated/src/models/BusinessEntitlementsLimits.d.ts +48 -0
- package/dist/generated/src/models/BusinessEntitlementsLimits.js +49 -0
- package/dist/generated/src/models/BusinessRegistrationConfig.d.ts +41 -0
- package/dist/generated/src/models/BusinessRegistrationConfig.js +45 -0
- package/dist/generated/src/models/BusinessTinInfo.d.ts +57 -0
- package/dist/generated/src/models/BusinessTinInfo.js +53 -0
- package/dist/generated/src/models/BusinessUser.d.ts +94 -0
- package/dist/generated/src/models/BusinessUser.js +76 -0
- package/dist/generated/src/models/Calendar.d.ts +87 -0
- package/dist/generated/src/models/Calendar.js +60 -0
- package/dist/generated/src/models/ChallengeQuestionInfo.d.ts +74 -0
- package/dist/generated/src/models/ChallengeQuestionInfo.js +55 -0
- package/dist/generated/src/models/ChannelContent.d.ts +72 -0
- package/dist/generated/src/models/ChannelContent.js +67 -0
- package/dist/generated/src/models/ChannelInfo.d.ts +94 -0
- package/dist/generated/src/models/ChannelInfo.js +70 -0
- package/dist/generated/src/models/ChannelInfos.d.ts +33 -0
- package/dist/generated/src/models/ChannelInfos.js +42 -0
- package/dist/generated/src/models/ClientAuth.d.ts +45 -0
- package/dist/generated/src/models/ClientAuth.js +46 -0
- package/dist/generated/src/models/ClientAuthAdditionalInfo.d.ts +44 -0
- package/dist/generated/src/models/ClientAuthAdditionalInfo.js +45 -0
- package/dist/generated/src/models/ClientCredentialsResponse.d.ts +44 -0
- package/dist/generated/src/models/ClientCredentialsResponse.js +45 -0
- package/dist/generated/src/models/Condition.d.ts +25 -0
- package/dist/generated/src/models/Condition.js +43 -0
- package/dist/generated/src/models/ContactInfo.d.ts +61 -0
- package/dist/generated/src/models/ContactInfo.js +57 -0
- package/dist/generated/src/models/ContactInfo1.d.ts +38 -0
- package/dist/generated/src/models/ContactInfo1.js +43 -0
- package/dist/generated/src/models/ContactInfoEmail.d.ts +32 -0
- package/dist/generated/src/models/ContactInfoEmail.js +41 -0
- package/dist/generated/src/models/ContactInfoPhoneNumber.d.ts +50 -0
- package/dist/generated/src/models/ContactInfoPhoneNumber.js +47 -0
- package/dist/generated/src/models/ContactMethod.d.ts +83 -0
- package/dist/generated/src/models/ContactMethod.js +63 -0
- package/dist/generated/src/models/ContactMethod1.d.ts +53 -0
- package/dist/generated/src/models/ContactMethod1.js +52 -0
- package/dist/generated/src/models/ContactMethodResponse.d.ts +39 -0
- package/dist/generated/src/models/ContactMethodResponse.js +44 -0
- package/dist/generated/src/models/Controls.d.ts +39 -0
- package/dist/generated/src/models/Controls.js +44 -0
- package/dist/generated/src/models/CreateToken200Response.d.ts +25 -0
- package/dist/generated/src/models/CreateToken200Response.js +65 -0
- package/dist/generated/src/models/Credential.d.ts +71 -0
- package/dist/generated/src/models/Credential.js +59 -0
- package/dist/generated/src/models/CurrencyCode.d.ts +212 -0
- package/dist/generated/src/models/CurrencyCode.js +230 -0
- package/dist/generated/src/models/Customer.d.ts +58 -0
- package/dist/generated/src/models/Customer.js +54 -0
- package/dist/generated/src/models/CustomerAccountsResponse.d.ts +51 -0
- package/dist/generated/src/models/CustomerAccountsResponse.js +48 -0
- package/dist/generated/src/models/CustomerInformation.d.ts +172 -0
- package/dist/generated/src/models/CustomerInformation.js +99 -0
- package/dist/generated/src/models/CustomerRequest.d.ts +152 -0
- package/dist/generated/src/models/CustomerRequest.js +119 -0
- package/dist/generated/src/models/DIAccountType.d.ts +47 -0
- package/dist/generated/src/models/DIAccountType.js +65 -0
- package/dist/generated/src/models/DIAccountType1.d.ts +48 -0
- package/dist/generated/src/models/DIAccountType1.js +66 -0
- package/dist/generated/src/models/DataMap.d.ts +33 -0
- package/dist/generated/src/models/DataMap.js +42 -0
- package/dist/generated/src/models/Destination.d.ts +71 -0
- package/dist/generated/src/models/Destination.js +59 -0
- package/dist/generated/src/models/DisplayFlag.d.ts +62 -0
- package/dist/generated/src/models/DisplayFlag.js +51 -0
- package/dist/generated/src/models/DownloadTransactionLogs404Response.d.ts +32 -0
- package/dist/generated/src/models/DownloadTransactionLogs404Response.js +41 -0
- package/dist/generated/src/models/EStatementDisclosure.d.ts +71 -0
- package/dist/generated/src/models/EStatementDisclosure.js +59 -0
- package/dist/generated/src/models/EStatementDisclosureResponse.d.ts +33 -0
- package/dist/generated/src/models/EStatementDisclosureResponse.js +42 -0
- package/dist/generated/src/models/EStatementPreferencesRequest.d.ts +32 -0
- package/dist/generated/src/models/EStatementPreferencesRequest.js +43 -0
- package/dist/generated/src/models/EStatementPreferencesResponse.d.ts +38 -0
- package/dist/generated/src/models/EStatementPreferencesResponse.js +47 -0
- package/dist/generated/src/models/EStatementReport.d.ts +68 -0
- package/dist/generated/src/models/EStatementReport.js +53 -0
- package/dist/generated/src/models/EStatementReportRequest.d.ts +38 -0
- package/dist/generated/src/models/EStatementReportRequest.js +43 -0
- package/dist/generated/src/models/EStatementReportResponse.d.ts +39 -0
- package/dist/generated/src/models/EStatementReportResponse.js +44 -0
- package/dist/generated/src/models/EStatementRequest.d.ts +44 -0
- package/dist/generated/src/models/EStatementRequest.js +47 -0
- package/dist/generated/src/models/EntitledFeature.d.ts +39 -0
- package/dist/generated/src/models/EntitledFeature.js +46 -0
- package/dist/generated/src/models/EntitledTins.d.ts +54 -0
- package/dist/generated/src/models/EntitledTins.js +53 -0
- package/dist/generated/src/models/Entitlement.d.ts +61 -0
- package/dist/generated/src/models/Entitlement.js +54 -0
- package/dist/generated/src/models/Entitlements.d.ts +33 -0
- package/dist/generated/src/models/Entitlements.js +42 -0
- package/dist/generated/src/models/Entry.d.ts +38 -0
- package/dist/generated/src/models/Entry.js +43 -0
- package/dist/generated/src/models/Error1.d.ts +44 -0
- package/dist/generated/src/models/Error1.js +45 -0
- package/dist/generated/src/models/Error2.d.ts +32 -0
- package/dist/generated/src/models/Error2.js +41 -0
- package/dist/generated/src/models/Error3.d.ts +38 -0
- package/dist/generated/src/models/Error3.js +43 -0
- package/dist/generated/src/models/Error4.d.ts +38 -0
- package/dist/generated/src/models/Error4.js +43 -0
- package/dist/generated/src/models/Error5.d.ts +38 -0
- package/dist/generated/src/models/Error5.js +43 -0
- package/dist/generated/src/models/ErrorInfo.d.ts +38 -0
- package/dist/generated/src/models/ErrorInfo.js +43 -0
- package/dist/generated/src/models/ErrorInfo1.d.ts +38 -0
- package/dist/generated/src/models/ErrorInfo1.js +43 -0
- package/dist/generated/src/models/ErrorInfo2.d.ts +38 -0
- package/dist/generated/src/models/ErrorInfo2.js +43 -0
- package/dist/generated/src/models/ErrorInfo3.d.ts +54 -0
- package/dist/generated/src/models/ErrorInfo3.js +54 -0
- package/dist/generated/src/models/ErrorInfo4.d.ts +38 -0
- package/dist/generated/src/models/ErrorInfo4.js +47 -0
- package/dist/generated/src/models/ErrorInfo5.d.ts +38 -0
- package/dist/generated/src/models/ErrorInfo5.js +47 -0
- package/dist/generated/src/models/Event.d.ts +39 -0
- package/dist/generated/src/models/Event.js +44 -0
- package/dist/generated/src/models/Event1.d.ts +51 -0
- package/dist/generated/src/models/Event1.js +48 -0
- package/dist/generated/src/models/EventDetails.d.ts +80 -0
- package/dist/generated/src/models/EventDetails.js +57 -0
- package/dist/generated/src/models/Events.d.ts +33 -0
- package/dist/generated/src/models/Events.js +42 -0
- package/dist/generated/src/models/FIAccountType.d.ts +44 -0
- package/dist/generated/src/models/FIAccountType.js +45 -0
- package/dist/generated/src/models/FICustomer.d.ts +167 -0
- package/dist/generated/src/models/FICustomer.js +92 -0
- package/dist/generated/src/models/FICustomerId.d.ts +54 -0
- package/dist/generated/src/models/FICustomerId.js +58 -0
- package/dist/generated/src/models/FICustomerRequest.d.ts +91 -0
- package/dist/generated/src/models/FICustomerRequest.js +64 -0
- package/dist/generated/src/models/FICustomerRequestChannelInfos.d.ts +33 -0
- package/dist/generated/src/models/FICustomerRequestChannelInfos.js +42 -0
- package/dist/generated/src/models/FICustomerRequestChannelInfosChannelInfoInner.d.ts +39 -0
- package/dist/generated/src/models/FICustomerRequestChannelInfosChannelInfoInner.js +44 -0
- package/dist/generated/src/models/FICustomerRequestChannelInfosChannelInfoInnerCredential.d.ts +38 -0
- package/dist/generated/src/models/FICustomerRequestChannelInfosChannelInfoInnerCredential.js +43 -0
- package/dist/generated/src/models/FICustomerRequestFiId.d.ts +32 -0
- package/dist/generated/src/models/FICustomerRequestFiId.js +41 -0
- package/dist/generated/src/models/FICustomerRequestHostCredential.d.ts +32 -0
- package/dist/generated/src/models/FICustomerRequestHostCredential.js +41 -0
- package/dist/generated/src/models/FICustomerRequestId.d.ts +38 -0
- package/dist/generated/src/models/FICustomerRequestId.js +43 -0
- package/dist/generated/src/models/FICustomerRequestPerson.d.ts +46 -0
- package/dist/generated/src/models/FICustomerRequestPerson.js +47 -0
- package/dist/generated/src/models/FICustomerRequestPersonContactInfo.d.ts +46 -0
- package/dist/generated/src/models/FICustomerRequestPersonContactInfo.js +47 -0
- package/dist/generated/src/models/FICustomerRequestPersonContactInfoPhoneNumberInner.d.ts +38 -0
- package/dist/generated/src/models/FICustomerRequestPersonContactInfoPhoneNumberInner.js +43 -0
- package/dist/generated/src/models/FICustomerRequestPersonContactInfoPostalAddressInner.d.ts +68 -0
- package/dist/generated/src/models/FICustomerRequestPersonContactInfoPostalAddressInner.js +53 -0
- package/dist/generated/src/models/FICustomerRequestPersonPersonName.d.ts +38 -0
- package/dist/generated/src/models/FICustomerRequestPersonPersonName.js +43 -0
- package/dist/generated/src/models/FICustomerResponse.d.ts +110 -0
- package/dist/generated/src/models/FICustomerResponse.js +71 -0
- package/dist/generated/src/models/FICustomerResponseChannelInfos.d.ts +33 -0
- package/dist/generated/src/models/FICustomerResponseChannelInfos.js +42 -0
- package/dist/generated/src/models/FICustomerResponseChannelInfosChannelInfoInner.d.ts +39 -0
- package/dist/generated/src/models/FICustomerResponseChannelInfosChannelInfoInner.js +44 -0
- package/dist/generated/src/models/FICustomerResponseChannelInfosChannelInfoInnerCredential.d.ts +32 -0
- package/dist/generated/src/models/FICustomerResponseChannelInfosChannelInfoInnerCredential.js +41 -0
- package/dist/generated/src/models/FICustomerResponseDestinations.d.ts +33 -0
- package/dist/generated/src/models/FICustomerResponseDestinations.js +42 -0
- package/dist/generated/src/models/FICustomerResponseDestinationsDestinationInner.d.ts +44 -0
- package/dist/generated/src/models/FICustomerResponseDestinationsDestinationInner.js +45 -0
- package/dist/generated/src/models/FICustomerResponseFiId.d.ts +32 -0
- package/dist/generated/src/models/FICustomerResponseFiId.js +41 -0
- package/dist/generated/src/models/FICustomerResponseHostCredential.d.ts +32 -0
- package/dist/generated/src/models/FICustomerResponseHostCredential.js +41 -0
- package/dist/generated/src/models/FICustomerResponseId.d.ts +38 -0
- package/dist/generated/src/models/FICustomerResponseId.js +43 -0
- package/dist/generated/src/models/FICustomerResponsePerson.d.ts +46 -0
- package/dist/generated/src/models/FICustomerResponsePerson.js +47 -0
- package/dist/generated/src/models/FICustomerResponsePersonContactInfo.d.ts +46 -0
- package/dist/generated/src/models/FICustomerResponsePersonContactInfo.js +47 -0
- package/dist/generated/src/models/FICustomerResponsePersonContactInfoPhoneNumberInner.d.ts +38 -0
- package/dist/generated/src/models/FICustomerResponsePersonContactInfoPhoneNumberInner.js +43 -0
- package/dist/generated/src/models/FICustomerResponsePersonContactInfoPostalAddressInner.d.ts +68 -0
- package/dist/generated/src/models/FICustomerResponsePersonContactInfoPostalAddressInner.js +53 -0
- package/dist/generated/src/models/FICustomerResponsePersonPersonName.d.ts +56 -0
- package/dist/generated/src/models/FICustomerResponsePersonPersonName.js +49 -0
- package/dist/generated/src/models/FeatureLimits.d.ts +62 -0
- package/dist/generated/src/models/FeatureLimits.js +53 -0
- package/dist/generated/src/models/FiAlertPreferenceResource.d.ts +62 -0
- package/dist/generated/src/models/FiAlertPreferenceResource.js +51 -0
- package/dist/generated/src/models/FiAlertPreferenceResources.d.ts +33 -0
- package/dist/generated/src/models/FiAlertPreferenceResources.js +42 -0
- package/dist/generated/src/models/FileErrorReport.d.ts +32 -0
- package/dist/generated/src/models/FileErrorReport.js +41 -0
- package/dist/generated/src/models/FileMetadata.d.ts +50 -0
- package/dist/generated/src/models/FileMetadata.js +53 -0
- package/dist/generated/src/models/FileStatus.d.ts +50 -0
- package/dist/generated/src/models/FileStatus.js +47 -0
- package/dist/generated/src/models/Filter.d.ts +57 -0
- package/dist/generated/src/models/Filter.js +57 -0
- package/dist/generated/src/models/Frequency.d.ts +34 -0
- package/dist/generated/src/models/Frequency.js +52 -0
- package/dist/generated/src/models/GetUser404Response.d.ts +39 -0
- package/dist/generated/src/models/GetUser404Response.js +45 -0
- package/dist/generated/src/models/GetWidgetUrl200Response.d.ts +45 -0
- package/dist/generated/src/models/GetWidgetUrl200Response.js +47 -0
- package/dist/generated/src/models/GroupBaseRequestDTO.d.ts +64 -0
- package/dist/generated/src/models/GroupBaseRequestDTO.js +61 -0
- package/dist/generated/src/models/GroupBaseResponseDTO.d.ts +109 -0
- package/dist/generated/src/models/GroupBaseResponseDTO.js +79 -0
- package/dist/generated/src/models/GroupExperienceDTO.d.ts +50 -0
- package/dist/generated/src/models/GroupExperienceDTO.js +47 -0
- package/dist/generated/src/models/GroupsWithParticipantsCount.d.ts +57 -0
- package/dist/generated/src/models/GroupsWithParticipantsCount.js +50 -0
- package/dist/generated/src/models/HealthStatus.d.ts +32 -0
- package/dist/generated/src/models/HealthStatus.js +41 -0
- package/dist/generated/src/models/HostTransactionType.d.ts +86 -0
- package/dist/generated/src/models/HostTransactionType.js +59 -0
- package/dist/generated/src/models/IdType.d.ts +32 -0
- package/dist/generated/src/models/IdType.js +41 -0
- package/dist/generated/src/models/ImageInfo.d.ts +52 -0
- package/dist/generated/src/models/ImageInfo.js +49 -0
- package/dist/generated/src/models/ImageInfoType.d.ts +26 -0
- package/dist/generated/src/models/ImageInfoType.js +44 -0
- package/dist/generated/src/models/ImageType.d.ts +26 -0
- package/dist/generated/src/models/ImageType.js +44 -0
- package/dist/generated/src/models/ImageView.d.ts +27 -0
- package/dist/generated/src/models/ImageView.js +45 -0
- package/dist/generated/src/models/ImportJobDTO.d.ts +123 -0
- package/dist/generated/src/models/ImportJobDTO.js +72 -0
- package/dist/generated/src/models/ImportJobDTOSingle.d.ts +116 -0
- package/dist/generated/src/models/ImportJobDTOSingle.js +69 -0
- package/dist/generated/src/models/ImportJobErrorDTO.d.ts +45 -0
- package/dist/generated/src/models/ImportJobErrorDTO.js +46 -0
- package/dist/generated/src/models/InstitutionAlertTypeResource.d.ts +70 -0
- package/dist/generated/src/models/InstitutionAlertTypeResource.js +58 -0
- package/dist/generated/src/models/InstitutionAlertTypeResources.d.ts +33 -0
- package/dist/generated/src/models/InstitutionAlertTypeResources.js +42 -0
- package/dist/generated/src/models/InstitutionCustomer.d.ts +69 -0
- package/dist/generated/src/models/InstitutionCustomer.js +54 -0
- package/dist/generated/src/models/InstitutionCustomerAdditionalInfo.d.ts +33 -0
- package/dist/generated/src/models/InstitutionCustomerAdditionalInfo.js +42 -0
- package/dist/generated/src/models/InstitutionDisclosure.d.ts +63 -0
- package/dist/generated/src/models/InstitutionDisclosure.js +52 -0
- package/dist/generated/src/models/InstitutionDisclosureDataType.d.ts +24 -0
- package/dist/generated/src/models/InstitutionDisclosureDataType.js +42 -0
- package/dist/generated/src/models/InstitutionDisclosures.d.ts +33 -0
- package/dist/generated/src/models/InstitutionDisclosures.js +42 -0
- package/dist/generated/src/models/InstitutionUser.d.ts +149 -0
- package/dist/generated/src/models/InstitutionUser.js +92 -0
- package/dist/generated/src/models/InstitutionUserAdditionalInfo.d.ts +39 -0
- package/dist/generated/src/models/InstitutionUserAdditionalInfo.js +44 -0
- package/dist/generated/src/models/InstitutionUserDisclosure.d.ts +75 -0
- package/dist/generated/src/models/InstitutionUserDisclosure.js +56 -0
- package/dist/generated/src/models/InstitutionUserDisclosureStatus.d.ts +27 -0
- package/dist/generated/src/models/InstitutionUserDisclosureStatus.js +45 -0
- package/dist/generated/src/models/InstitutionUserDisclosures.d.ts +33 -0
- package/dist/generated/src/models/InstitutionUserDisclosures.js +42 -0
- package/dist/generated/src/models/JobUploadStatus.d.ts +63 -0
- package/dist/generated/src/models/JobUploadStatus.js +52 -0
- package/dist/generated/src/models/JobUploadStatusStatus.d.ts +50 -0
- package/dist/generated/src/models/JobUploadStatusStatus.js +47 -0
- package/dist/generated/src/models/LifeType.d.ts +26 -0
- package/dist/generated/src/models/LifeType.js +44 -0
- package/dist/generated/src/models/Limit.d.ts +113 -0
- package/dist/generated/src/models/Limit.js +90 -0
- package/dist/generated/src/models/Limits.d.ts +33 -0
- package/dist/generated/src/models/Limits.js +42 -0
- package/dist/generated/src/models/Links.d.ts +38 -0
- package/dist/generated/src/models/Links.js +43 -0
- package/dist/generated/src/models/ListUsers400Response.d.ts +46 -0
- package/dist/generated/src/models/ListUsers400Response.js +48 -0
- package/dist/generated/src/models/ListUsers400ResponseErrorsInner.d.ts +38 -0
- package/dist/generated/src/models/ListUsers400ResponseErrorsInner.js +43 -0
- package/dist/generated/src/models/ListUsers401Response.d.ts +39 -0
- package/dist/generated/src/models/ListUsers401Response.js +45 -0
- package/dist/generated/src/models/MapEntryInner.d.ts +38 -0
- package/dist/generated/src/models/MapEntryInner.js +43 -0
- package/dist/generated/src/models/MapItem.d.ts +38 -0
- package/dist/generated/src/models/MapItem.js +43 -0
- package/dist/generated/src/models/MfaCookie.d.ts +87 -0
- package/dist/generated/src/models/MfaCookie.js +60 -0
- package/dist/generated/src/models/ModelError.d.ts +38 -0
- package/dist/generated/src/models/ModelError.js +43 -0
- package/dist/generated/src/models/ModelMap.d.ts +33 -0
- package/dist/generated/src/models/ModelMap.js +42 -0
- package/dist/generated/src/models/Money.d.ts +39 -0
- package/dist/generated/src/models/Money.js +44 -0
- package/dist/generated/src/models/Money1.d.ts +48 -0
- package/dist/generated/src/models/Money1.js +52 -0
- package/dist/generated/src/models/Money2.d.ts +233 -0
- package/dist/generated/src/models/Money2.js +237 -0
- package/dist/generated/src/models/NonSubscriptionEvent.d.ts +45 -0
- package/dist/generated/src/models/NonSubscriptionEvent.js +46 -0
- package/dist/generated/src/models/Notification.d.ts +50 -0
- package/dist/generated/src/models/Notification.js +47 -0
- package/dist/generated/src/models/NotificationEvent.d.ts +46 -0
- package/dist/generated/src/models/NotificationEvent.js +47 -0
- package/dist/generated/src/models/Page.d.ts +50 -0
- package/dist/generated/src/models/Page.js +47 -0
- package/dist/generated/src/models/Pageable.d.ts +44 -0
- package/dist/generated/src/models/Pageable.js +45 -0
- package/dist/generated/src/models/PasswordResponse.d.ts +56 -0
- package/dist/generated/src/models/PasswordResponse.js +49 -0
- package/dist/generated/src/models/PaymentOptionType.d.ts +31 -0
- package/dist/generated/src/models/PaymentOptionType.js +49 -0
- package/dist/generated/src/models/Person.d.ts +33 -0
- package/dist/generated/src/models/Person.js +42 -0
- package/dist/generated/src/models/PhoneNumber.d.ts +66 -0
- package/dist/generated/src/models/PhoneNumber.js +58 -0
- package/dist/generated/src/models/PostalAddress.d.ts +68 -0
- package/dist/generated/src/models/PostalAddress.js +53 -0
- package/dist/generated/src/models/PostalAddress1.d.ts +94 -0
- package/dist/generated/src/models/PostalAddress1.js +76 -0
- package/dist/generated/src/models/ProductAppUserInfo.d.ts +98 -0
- package/dist/generated/src/models/ProductAppUserInfo.js +63 -0
- package/dist/generated/src/models/ProductAppUserInfos.d.ts +33 -0
- package/dist/generated/src/models/ProductAppUserInfos.js +42 -0
- package/dist/generated/src/models/ProductUserInfo.d.ts +32 -0
- package/dist/generated/src/models/ProductUserInfo.js +41 -0
- package/dist/generated/src/models/Protocol.d.ts +27 -0
- package/dist/generated/src/models/Protocol.js +45 -0
- package/dist/generated/src/models/Recipient.d.ts +87 -0
- package/dist/generated/src/models/Recipient.js +60 -0
- package/dist/generated/src/models/Recipients.d.ts +33 -0
- package/dist/generated/src/models/Recipients.js +42 -0
- package/dist/generated/src/models/RefreshTokenResponse.d.ts +56 -0
- package/dist/generated/src/models/RefreshTokenResponse.js +49 -0
- package/dist/generated/src/models/RegDLimits.d.ts +56 -0
- package/dist/generated/src/models/RegDLimits.js +49 -0
- package/dist/generated/src/models/RegDLimits1.d.ts +50 -0
- package/dist/generated/src/models/RegDLimits1.js +47 -0
- package/dist/generated/src/models/RegisterCustomerRequest.d.ts +33 -0
- package/dist/generated/src/models/RegisterCustomerRequest.js +44 -0
- package/dist/generated/src/models/RegisterCustomerResponse.d.ts +33 -0
- package/dist/generated/src/models/RegisterCustomerResponse.js +42 -0
- package/dist/generated/src/models/ResetPasswordRequest.d.ts +46 -0
- package/dist/generated/src/models/ResetPasswordRequest.js +52 -0
- package/dist/generated/src/models/Resource.d.ts +46 -0
- package/dist/generated/src/models/Resource.js +47 -0
- package/dist/generated/src/models/ResponseDTO.d.ts +38 -0
- package/dist/generated/src/models/ResponseDTO.js +43 -0
- package/dist/generated/src/models/Schedule.d.ts +88 -0
- package/dist/generated/src/models/Schedule.js +61 -0
- package/dist/generated/src/models/SearchCriteriaRequestBody.d.ts +112 -0
- package/dist/generated/src/models/SearchCriteriaRequestBody.js +78 -0
- package/dist/generated/src/models/SearchResultResponse.d.ts +40 -0
- package/dist/generated/src/models/SearchResultResponse.js +43 -0
- package/dist/generated/src/models/StatementType.d.ts +45 -0
- package/dist/generated/src/models/StatementType.js +63 -0
- package/dist/generated/src/models/Status.d.ts +39 -0
- package/dist/generated/src/models/Status.js +44 -0
- package/dist/generated/src/models/Status1.d.ts +39 -0
- package/dist/generated/src/models/Status1.js +44 -0
- package/dist/generated/src/models/Status1ErrorInfo.d.ts +53 -0
- package/dist/generated/src/models/Status1ErrorInfo.js +53 -0
- package/dist/generated/src/models/Status2.d.ts +39 -0
- package/dist/generated/src/models/Status2.js +44 -0
- package/dist/generated/src/models/Status2ErrorInfo.d.ts +53 -0
- package/dist/generated/src/models/Status2ErrorInfo.js +53 -0
- package/dist/generated/src/models/StatusAdditionalInfo.d.ts +62 -0
- package/dist/generated/src/models/StatusAdditionalInfo.js +51 -0
- package/dist/generated/src/models/SubFilter.d.ts +40 -0
- package/dist/generated/src/models/SubFilter.js +49 -0
- package/dist/generated/src/models/SubUserStatus.d.ts +93 -0
- package/dist/generated/src/models/SubUserStatus.js +62 -0
- package/dist/generated/src/models/Subscription.d.ts +74 -0
- package/dist/generated/src/models/Subscription.js +56 -0
- package/dist/generated/src/models/SubscriptionAction.d.ts +41 -0
- package/dist/generated/src/models/SubscriptionAction.js +45 -0
- package/dist/generated/src/models/SubscriptionActionAttributesMap.d.ts +33 -0
- package/dist/generated/src/models/SubscriptionActionAttributesMap.js +42 -0
- package/dist/generated/src/models/SubscriptionActions.d.ts +33 -0
- package/dist/generated/src/models/SubscriptionActions.js +42 -0
- package/dist/generated/src/models/SubscriptionEventConditionsMap.d.ts +33 -0
- package/dist/generated/src/models/SubscriptionEventConditionsMap.js +42 -0
- package/dist/generated/src/models/Term.d.ts +39 -0
- package/dist/generated/src/models/Term.js +44 -0
- package/dist/generated/src/models/TermType.d.ts +27 -0
- package/dist/generated/src/models/TermType.js +45 -0
- package/dist/generated/src/models/TimeZone.d.ts +50 -0
- package/dist/generated/src/models/TimeZone.js +47 -0
- package/dist/generated/src/models/Token.d.ts +68 -0
- package/dist/generated/src/models/Token.js +53 -0
- package/dist/generated/src/models/Transaction.d.ts +167 -0
- package/dist/generated/src/models/Transaction.js +88 -0
- package/dist/generated/src/models/TransactionCategory.d.ts +55 -0
- package/dist/generated/src/models/TransactionCategory.js +55 -0
- package/dist/generated/src/models/TransactionEvent.d.ts +46 -0
- package/dist/generated/src/models/TransactionEvent.js +47 -0
- package/dist/generated/src/models/TransactionList.d.ts +33 -0
- package/dist/generated/src/models/TransactionList.js +42 -0
- package/dist/generated/src/models/TransactionRange.d.ts +39 -0
- package/dist/generated/src/models/TransactionRange.js +44 -0
- package/dist/generated/src/models/TransactionStatus.d.ts +25 -0
- package/dist/generated/src/models/TransactionStatus.js +43 -0
- package/dist/generated/src/models/TransactionTransactionImage.d.ts +45 -0
- package/dist/generated/src/models/TransactionTransactionImage.js +46 -0
- package/dist/generated/src/models/TransactionType.d.ts +73 -0
- package/dist/generated/src/models/TransactionType.js +91 -0
- package/dist/generated/src/models/Transfer.d.ts +120 -0
- package/dist/generated/src/models/Transfer.js +73 -0
- package/dist/generated/src/models/TransferStatus.d.ts +25 -0
- package/dist/generated/src/models/TransferStatus.js +43 -0
- package/dist/generated/src/models/UpdateContactInfoPostalAddress.d.ts +62 -0
- package/dist/generated/src/models/UpdateContactInfoPostalAddress.js +51 -0
- package/dist/generated/src/models/UploadResponse.d.ts +32 -0
- package/dist/generated/src/models/UploadResponse.js +41 -0
- package/dist/generated/src/models/UploadResponseDTO.d.ts +50 -0
- package/dist/generated/src/models/UploadResponseDTO.js +47 -0
- package/dist/generated/src/models/User.d.ts +134 -0
- package/dist/generated/src/models/User.js +89 -0
- package/dist/generated/src/models/UserEntitlementsLimits.d.ts +48 -0
- package/dist/generated/src/models/UserEntitlementsLimits.js +49 -0
- package/dist/generated/src/models/UserEvent.d.ts +45 -0
- package/dist/generated/src/models/UserEvent.js +46 -0
- package/dist/generated/src/models/UserList.d.ts +38 -0
- package/dist/generated/src/models/UserList.js +47 -0
- package/dist/generated/src/models/UserListFileDTO.d.ts +47 -0
- package/dist/generated/src/models/UserListFileDTO.js +48 -0
- package/dist/generated/src/models/UserListsDTO.d.ts +33 -0
- package/dist/generated/src/models/UserListsDTO.js +42 -0
- package/dist/generated/src/models/UserListsFileResponse.d.ts +33 -0
- package/dist/generated/src/models/UserListsFileResponse.js +42 -0
- package/dist/generated/src/models/UserListsWithFileMetadata.d.ts +33 -0
- package/dist/generated/src/models/UserListsWithFileMetadata.js +42 -0
- package/dist/generated/src/models/UserStatus.d.ts +80 -0
- package/dist/generated/src/models/UserStatus.js +57 -0
- package/dist/generated/src/models/UserStatus1.d.ts +284 -0
- package/dist/generated/src/models/UserStatus1.js +125 -0
- package/dist/generated/src/models/UserStatus2.d.ts +94 -0
- package/dist/generated/src/models/UserStatus2.js +63 -0
- package/dist/generated/src/models/UsersList.d.ts +33 -0
- package/dist/generated/src/models/UsersList.js +44 -0
- package/dist/generated/src/models/index.d.ts +266 -0
- package/dist/generated/src/models/index.js +268 -0
- package/dist/generated/src/runtime.d.ts +184 -0
- package/dist/generated/src/runtime.js +348 -0
- package/dist/src/auth.d.ts +71 -0
- package/dist/src/auth.js +226 -0
- package/dist/src/client.d.ts +86 -0
- package/dist/src/client.js +399 -0
- package/dist/src/completions.d.ts +4 -0
- package/dist/src/completions.js +5 -0
- package/dist/src/errors.d.ts +49 -0
- package/dist/src/errors.js +119 -0
- package/dist/src/index.d.ts +26 -0
- package/dist/src/index.js +29 -0
- package/dist/src/operations.d.ts +31 -0
- package/dist/src/operations.js +45 -0
- package/dist/src/pagination.d.ts +31 -0
- package/dist/src/pagination.js +67 -0
- package/dist/src/registry.d.ts +69 -0
- package/dist/src/registry.js +4820 -0
- package/dist/src/result.d.ts +29 -0
- package/dist/src/result.js +26 -0
- package/dist/src/retry.d.ts +12 -0
- package/dist/src/retry.js +51 -0
- package/dist/src/transport.d.ts +53 -0
- package/dist/src/transport.js +115 -0
- package/dist/src/validate.d.ts +27 -0
- package/dist/src/validate.js +68 -0
- package/package.json +58 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Main Candescent DI TypeScript SDK client.
|
|
3
|
+
*
|
|
4
|
+
* Wraps OpenAPI-generated API classes with automatic auth injection,
|
|
5
|
+
* tracing headers, and token lifecycle management. Generated API methods
|
|
6
|
+
* have clean signatures with typed models — no raw JSON.
|
|
7
|
+
*
|
|
8
|
+
* @example Client credentials (server-to-server)
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { CandescentClient, Environment } from "@candescent/di-typescript-sdk";
|
|
11
|
+
*
|
|
12
|
+
* const client = new CandescentClient({
|
|
13
|
+
* clientId: "my-id",
|
|
14
|
+
* clientSecret: "my-secret",
|
|
15
|
+
* institutionId: "12345",
|
|
16
|
+
* environment: Environment.Stage,
|
|
17
|
+
* });
|
|
18
|
+
*
|
|
19
|
+
* // Register a customer with typed models
|
|
20
|
+
* const result = await client.customerManagement.register({
|
|
21
|
+
* diFiid: "05523",
|
|
22
|
+
* fICustomer: { fiId: { value: "05523" }, memberNumber: "123456789", ... },
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* // List accounts (hostUserId and loginId are mutually exclusive — pass one, not both)
|
|
26
|
+
* const accounts = await client.accounts.list({ hostUserId: "HOST01" });
|
|
27
|
+
*
|
|
28
|
+
* await client.close();
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* @example From environment variables
|
|
32
|
+
* ```ts
|
|
33
|
+
* const client = CandescentClient.fromEnv();
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
import { type TokenProvider } from "./auth.js";
|
|
37
|
+
import { AccountsApi, AlertConfigurationApi, AlertDeliveryApi, AlertPreferencesApi, AuthenticationApi, BusinessBankingApi, CustomerCampaignsApi, CustomerManagementApi, DocumentsAndPreferencesApi, MoneyMovementApi, MXApi, NotificationChannelsApi } from "../generated/src/apis/index.js";
|
|
38
|
+
export { type RequestOptions } from "./transport.js";
|
|
39
|
+
export declare enum Environment {
|
|
40
|
+
Stage = "https://api.candescent.com/digitalbanking/stage",
|
|
41
|
+
Production = "https://api.candescent.com/digitalbanking"
|
|
42
|
+
}
|
|
43
|
+
export interface ClientConfig {
|
|
44
|
+
clientId?: string;
|
|
45
|
+
clientSecret?: string;
|
|
46
|
+
institutionId: string;
|
|
47
|
+
username?: string;
|
|
48
|
+
password?: string;
|
|
49
|
+
environment?: Environment;
|
|
50
|
+
baseUrl?: string;
|
|
51
|
+
bearerToken?: string;
|
|
52
|
+
/** Provide a custom token provider; used for both V1 and V2 paths. */
|
|
53
|
+
tokenProvider?: TokenProvider;
|
|
54
|
+
debug?: boolean;
|
|
55
|
+
}
|
|
56
|
+
export declare class CandescentClient {
|
|
57
|
+
private readonly v2TokenProvider;
|
|
58
|
+
private readonly v1TokenProvider;
|
|
59
|
+
readonly accounts: AccountsApi;
|
|
60
|
+
readonly alertConfiguration: AlertConfigurationApi;
|
|
61
|
+
readonly alertDelivery: AlertDeliveryApi;
|
|
62
|
+
readonly alertPreferences: AlertPreferencesApi;
|
|
63
|
+
readonly authentication: AuthenticationApi;
|
|
64
|
+
readonly businessBanking: BusinessBankingApi;
|
|
65
|
+
readonly customerCampaigns: CustomerCampaignsApi;
|
|
66
|
+
readonly customerManagement: CustomerManagementApi;
|
|
67
|
+
readonly documents: DocumentsAndPreferencesApi;
|
|
68
|
+
readonly moneyMovement: MoneyMovementApi;
|
|
69
|
+
readonly mx: MXApi;
|
|
70
|
+
readonly notificationChannels: NotificationChannelsApi;
|
|
71
|
+
constructor(config: ClientConfig);
|
|
72
|
+
close(): Promise<void>;
|
|
73
|
+
/**
|
|
74
|
+
* Build a client from environment variables (zero hardcoded secrets).
|
|
75
|
+
*
|
|
76
|
+
* Reads:
|
|
77
|
+
* - `CANDESCENT_CLIENT_ID`
|
|
78
|
+
* - `CANDESCENT_CLIENT_SECRET`
|
|
79
|
+
* - `CANDESCENT_INSTITUTION_ID`
|
|
80
|
+
* - `CANDESCENT_BEARER_TOKEN` (skip OAuth entirely)
|
|
81
|
+
* - `CANDESCENT_ENVIRONMENT` ("stage" | "production")
|
|
82
|
+
* - `CANDESCENT_USERNAME` (optional, for password grant)
|
|
83
|
+
* - `CANDESCENT_PASSWORD` (optional, for password grant)
|
|
84
|
+
*/
|
|
85
|
+
static fromEnv(): CandescentClient;
|
|
86
|
+
}
|
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Main Candescent DI TypeScript SDK client.
|
|
3
|
+
*
|
|
4
|
+
* Wraps OpenAPI-generated API classes with automatic auth injection,
|
|
5
|
+
* tracing headers, and token lifecycle management. Generated API methods
|
|
6
|
+
* have clean signatures with typed models — no raw JSON.
|
|
7
|
+
*
|
|
8
|
+
* @example Client credentials (server-to-server)
|
|
9
|
+
* ```ts
|
|
10
|
+
* import { CandescentClient, Environment } from "@candescent/di-typescript-sdk";
|
|
11
|
+
*
|
|
12
|
+
* const client = new CandescentClient({
|
|
13
|
+
* clientId: "my-id",
|
|
14
|
+
* clientSecret: "my-secret",
|
|
15
|
+
* institutionId: "12345",
|
|
16
|
+
* environment: Environment.Stage,
|
|
17
|
+
* });
|
|
18
|
+
*
|
|
19
|
+
* // Register a customer with typed models
|
|
20
|
+
* const result = await client.customerManagement.register({
|
|
21
|
+
* diFiid: "05523",
|
|
22
|
+
* fICustomer: { fiId: { value: "05523" }, memberNumber: "123456789", ... },
|
|
23
|
+
* });
|
|
24
|
+
*
|
|
25
|
+
* // List accounts (hostUserId and loginId are mutually exclusive — pass one, not both)
|
|
26
|
+
* const accounts = await client.accounts.list({ hostUserId: "HOST01" });
|
|
27
|
+
*
|
|
28
|
+
* await client.close();
|
|
29
|
+
* ```
|
|
30
|
+
*
|
|
31
|
+
* @example From environment variables
|
|
32
|
+
* ```ts
|
|
33
|
+
* const client = CandescentClient.fromEnv();
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
import { ClientCredentialsProvider, PasswordGrantProvider, StaticTokenProvider, TokenEndpoint, } from "./auth.js";
|
|
37
|
+
import { CandescentError, errorForStatus } from "./errors.js";
|
|
38
|
+
import { validateUrlParams } from "./validate.js";
|
|
39
|
+
import { DEFAULT_RETRY, withRetry } from "./retry.js";
|
|
40
|
+
import { Configuration, } from "../generated/src/runtime.js";
|
|
41
|
+
import { AccountsApi, AlertConfigurationApi, AlertDeliveryApi, AlertPreferencesApi, AuthenticationApi, BusinessBankingApi, CustomerCampaignsApi, CustomerManagementApi, DocumentsAndPreferencesApi, MoneyMovementApi, MXApi, NotificationChannelsApi, } from "../generated/src/apis/index.js";
|
|
42
|
+
export var Environment;
|
|
43
|
+
(function (Environment) {
|
|
44
|
+
Environment["Stage"] = "https://api.candescent.com/digitalbanking/stage";
|
|
45
|
+
Environment["Production"] = "https://api.candescent.com/digitalbanking";
|
|
46
|
+
})(Environment || (Environment = {}));
|
|
47
|
+
/**
|
|
48
|
+
* URL path segments that require a V1 (legacy) OAuth token.
|
|
49
|
+
* All other paths use V2 (current) tokens.
|
|
50
|
+
*/
|
|
51
|
+
const V1_PATH_SEGMENTS = [
|
|
52
|
+
"/bankingservices/",
|
|
53
|
+
"/registration/",
|
|
54
|
+
"/destinations/",
|
|
55
|
+
"/subscriptions/",
|
|
56
|
+
"/send-event/",
|
|
57
|
+
];
|
|
58
|
+
function isV1Path(url) {
|
|
59
|
+
return V1_PATH_SEGMENTS.some((seg) => url.includes(seg));
|
|
60
|
+
}
|
|
61
|
+
// ── XML → JSON transparent conversion ───────────────────────────────
|
|
62
|
+
// Several Candescent endpoints (registration, bankingservices) return
|
|
63
|
+
// XML regardless of the Accept header. The generated runtime assumes
|
|
64
|
+
// JSON, so we intercept XML responses in a `post` middleware and
|
|
65
|
+
// convert them to JSON transparently.
|
|
66
|
+
const XML_ENTITIES = {
|
|
67
|
+
"&": "&",
|
|
68
|
+
"<": "<",
|
|
69
|
+
">": ">",
|
|
70
|
+
"'": "'",
|
|
71
|
+
""": '"',
|
|
72
|
+
};
|
|
73
|
+
function decodeXmlEntities(s) {
|
|
74
|
+
return s
|
|
75
|
+
.replace(/&|<|>|'|"/g, (m) => XML_ENTITIES[m] ?? m)
|
|
76
|
+
.replace(/&#(\d+);/g, (_, n) => String.fromCodePoint(Number(n)))
|
|
77
|
+
.replace(/&#x([0-9a-fA-F]+);/g, (_, h) => String.fromCodePoint(parseInt(h, 16)));
|
|
78
|
+
}
|
|
79
|
+
function stripCdata(s) {
|
|
80
|
+
return s.replace(/<!\[CDATA\[([\s\S]*?)]]>/g, (_, content) => content);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Check if a parent element name is the plural/collection form of a
|
|
84
|
+
* child name, meaning the child should always be an array.
|
|
85
|
+
* Handles: channelInfos→channelInfo, destinations→destination,
|
|
86
|
+
* postalAddresses→postalAddress, phoneNumbers→phoneNumber, etc.
|
|
87
|
+
*/
|
|
88
|
+
function isCollectionParent(parentKey, childKey) {
|
|
89
|
+
const p = parentKey.toLowerCase();
|
|
90
|
+
const c = childKey.toLowerCase();
|
|
91
|
+
return (p === c + "s" ||
|
|
92
|
+
p === c + "es" ||
|
|
93
|
+
(c.endsWith("y") && p === c.slice(0, -1) + "ies") ||
|
|
94
|
+
(p.endsWith("s") && p.startsWith(c)));
|
|
95
|
+
}
|
|
96
|
+
function normalizeArrays(obj, parentKey) {
|
|
97
|
+
if (obj === null || obj === undefined || typeof obj !== "object")
|
|
98
|
+
return obj;
|
|
99
|
+
if (Array.isArray(obj))
|
|
100
|
+
return obj.map((item) => normalizeArrays(item));
|
|
101
|
+
const result = {};
|
|
102
|
+
for (const [key, value] of Object.entries(obj)) {
|
|
103
|
+
let normalized = normalizeArrays(value, key);
|
|
104
|
+
if (parentKey && isCollectionParent(parentKey, key) && !Array.isArray(normalized)) {
|
|
105
|
+
normalized = [normalized];
|
|
106
|
+
}
|
|
107
|
+
result[key] = normalized;
|
|
108
|
+
}
|
|
109
|
+
return result;
|
|
110
|
+
}
|
|
111
|
+
function parseXmlToJson(xml) {
|
|
112
|
+
const processed = stripCdata(xml).replace(/<\?xml[^?]*\?>\s*/, "");
|
|
113
|
+
const stack = [];
|
|
114
|
+
let root = {};
|
|
115
|
+
let current = null;
|
|
116
|
+
const tagRe = /<!--[\s\S]*?-->|<!\[CDATA\[[\s\S]*?]]>|<\/?([^\s>\/]+)[^>]*>|([^<]+)/g;
|
|
117
|
+
let match;
|
|
118
|
+
while ((match = tagRe.exec(processed)) !== null) {
|
|
119
|
+
const full = match[0];
|
|
120
|
+
const text = match[2];
|
|
121
|
+
// Skip comments and any residual CDATA markers
|
|
122
|
+
if (full.startsWith("<!--") || full.startsWith("<!["))
|
|
123
|
+
continue;
|
|
124
|
+
if (text !== undefined) {
|
|
125
|
+
if (current)
|
|
126
|
+
current.text += decodeXmlEntities(text.trim());
|
|
127
|
+
continue;
|
|
128
|
+
}
|
|
129
|
+
if (full.startsWith("</")) {
|
|
130
|
+
if (!current)
|
|
131
|
+
continue;
|
|
132
|
+
const rawTag = current.tag;
|
|
133
|
+
const key = rawTag.includes(":") ? rawTag.split(":").pop() : rawTag;
|
|
134
|
+
const hasChildren = Object.keys(current.children).length > 0;
|
|
135
|
+
const value = hasChildren ? current.children : (current.text || null);
|
|
136
|
+
const parent = stack.pop();
|
|
137
|
+
if (parent) {
|
|
138
|
+
if (key in parent.children) {
|
|
139
|
+
const existing = parent.children[key];
|
|
140
|
+
parent.children[key] = Array.isArray(existing)
|
|
141
|
+
? [...existing, value]
|
|
142
|
+
: [existing, value];
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
parent.children[key] = value;
|
|
146
|
+
}
|
|
147
|
+
current = parent;
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
root[key] = value;
|
|
151
|
+
current = null;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
else if (!full.endsWith("/>")) {
|
|
155
|
+
const tag = match[1];
|
|
156
|
+
const node = { tag, children: {}, text: "" };
|
|
157
|
+
if (current)
|
|
158
|
+
stack.push(current);
|
|
159
|
+
current = node;
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
const tag = match[1];
|
|
163
|
+
const key = tag.includes(":") ? tag.split(":").pop() : tag;
|
|
164
|
+
if (current) {
|
|
165
|
+
current.children[key] = null;
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
root[key] = null;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return normalizeArrays(root);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Middleware that converts XML responses into JSON transparently.
|
|
176
|
+
* If a response has an XML content-type, the body is parsed and a new
|
|
177
|
+
* Response with `application/json` is returned so the generated
|
|
178
|
+
* `JSONApiResponse.value()` works correctly.
|
|
179
|
+
*
|
|
180
|
+
* When the XML has a single root element, the converted JSON includes
|
|
181
|
+
* BOTH the wrapped form (root key → children) and the unwrapped children
|
|
182
|
+
* at the top level. This ensures compatibility with both transformer
|
|
183
|
+
* styles: some expect `{FICustomer: {...}}` while others expect the
|
|
184
|
+
* inner fields directly.
|
|
185
|
+
*/
|
|
186
|
+
const xmlToJsonMiddleware = {
|
|
187
|
+
async post(context) {
|
|
188
|
+
const ct = context.response.headers.get("content-type") ?? "";
|
|
189
|
+
if (!ct.includes("xml"))
|
|
190
|
+
return;
|
|
191
|
+
const text = await context.response.text();
|
|
192
|
+
let json;
|
|
193
|
+
try {
|
|
194
|
+
json = parseXmlToJson(text);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
return new Response(text, {
|
|
198
|
+
status: context.response.status,
|
|
199
|
+
statusText: context.response.statusText,
|
|
200
|
+
headers: context.response.headers,
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
// If the XML had a single root element, merge its children at the
|
|
204
|
+
// top level so both wrapped and unwrapped transformers can find data.
|
|
205
|
+
const keys = Object.keys(json);
|
|
206
|
+
if (keys.length === 1 && typeof json[keys[0]] === "object" && json[keys[0]] !== null) {
|
|
207
|
+
json = { ...json[keys[0]], ...json };
|
|
208
|
+
}
|
|
209
|
+
return new Response(JSON.stringify(json), {
|
|
210
|
+
status: context.response.status,
|
|
211
|
+
statusText: context.response.statusText,
|
|
212
|
+
headers: {
|
|
213
|
+
...Object.fromEntries(context.response.headers.entries()),
|
|
214
|
+
"content-type": "application/json",
|
|
215
|
+
"x-original-content-type": ct,
|
|
216
|
+
},
|
|
217
|
+
});
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
/**
|
|
221
|
+
* Middleware that intercepts non-2xx responses and throws a rich ApiError
|
|
222
|
+
* (with status, body, headers) instead of the generated ResponseError
|
|
223
|
+
* which only says "Response returned an error code".
|
|
224
|
+
*/
|
|
225
|
+
const errorBodyMiddleware = {
|
|
226
|
+
async post(context) {
|
|
227
|
+
const { response } = context;
|
|
228
|
+
if (response.ok)
|
|
229
|
+
return;
|
|
230
|
+
const body = await response.text();
|
|
231
|
+
let message = `${response.status} ${response.statusText}`;
|
|
232
|
+
try {
|
|
233
|
+
const parsed = JSON.parse(body);
|
|
234
|
+
if (parsed.message)
|
|
235
|
+
message = `${message}: ${parsed.message}`;
|
|
236
|
+
if (parsed.code)
|
|
237
|
+
message = `[${parsed.code}] ${message}`;
|
|
238
|
+
}
|
|
239
|
+
catch {
|
|
240
|
+
if (body)
|
|
241
|
+
message = `${message}\n${body}`;
|
|
242
|
+
}
|
|
243
|
+
throw errorForStatus(response.status, response.headers, body, new Response(body, {
|
|
244
|
+
status: response.status,
|
|
245
|
+
statusText: response.statusText,
|
|
246
|
+
headers: response.headers,
|
|
247
|
+
}));
|
|
248
|
+
},
|
|
249
|
+
};
|
|
250
|
+
export class CandescentClient {
|
|
251
|
+
v2TokenProvider;
|
|
252
|
+
v1TokenProvider;
|
|
253
|
+
accounts;
|
|
254
|
+
alertConfiguration;
|
|
255
|
+
alertDelivery;
|
|
256
|
+
alertPreferences;
|
|
257
|
+
authentication;
|
|
258
|
+
businessBanking;
|
|
259
|
+
customerCampaigns;
|
|
260
|
+
customerManagement;
|
|
261
|
+
documents;
|
|
262
|
+
moneyMovement;
|
|
263
|
+
mx;
|
|
264
|
+
notificationChannels;
|
|
265
|
+
constructor(config) {
|
|
266
|
+
const baseUrl = config.baseUrl ?? config.environment ?? Environment.Stage;
|
|
267
|
+
const institutionId = config.institutionId;
|
|
268
|
+
if (config.tokenProvider) {
|
|
269
|
+
this.v2TokenProvider = config.tokenProvider;
|
|
270
|
+
this.v1TokenProvider = config.tokenProvider;
|
|
271
|
+
}
|
|
272
|
+
else if (config.bearerToken) {
|
|
273
|
+
const staticProvider = new StaticTokenProvider(config.bearerToken);
|
|
274
|
+
this.v2TokenProvider = staticProvider;
|
|
275
|
+
this.v1TokenProvider = staticProvider;
|
|
276
|
+
}
|
|
277
|
+
else if (config.clientId && config.clientSecret && config.username && config.password) {
|
|
278
|
+
this.v2TokenProvider = new PasswordGrantProvider(config.clientId, config.clientSecret, config.username, config.password, institutionId, baseUrl, TokenEndpoint.V2_CURRENT);
|
|
279
|
+
this.v1TokenProvider = new PasswordGrantProvider(config.clientId, config.clientSecret, config.username, config.password, institutionId, baseUrl, TokenEndpoint.V1_LEGACY);
|
|
280
|
+
}
|
|
281
|
+
else if (config.clientId && config.clientSecret) {
|
|
282
|
+
this.v2TokenProvider = new ClientCredentialsProvider(config.clientId, config.clientSecret, institutionId, baseUrl, TokenEndpoint.V2_CURRENT);
|
|
283
|
+
this.v1TokenProvider = new ClientCredentialsProvider(config.clientId, config.clientSecret, institutionId, baseUrl, TokenEndpoint.V1_LEGACY);
|
|
284
|
+
}
|
|
285
|
+
else {
|
|
286
|
+
throw new CandescentError("Provide clientId+clientSecret, bearerToken, or a custom tokenProvider");
|
|
287
|
+
}
|
|
288
|
+
const v2tp = this.v2TokenProvider;
|
|
289
|
+
const v1tp = this.v1TokenProvider;
|
|
290
|
+
const debugMode = config.debug ?? false;
|
|
291
|
+
const dualTokenMiddleware = {
|
|
292
|
+
async pre(context) {
|
|
293
|
+
const isV1 = isV1Path(context.url);
|
|
294
|
+
const tp = isV1 ? v1tp : v2tp;
|
|
295
|
+
const token = await tp.getToken();
|
|
296
|
+
const uuid = crypto.randomUUID();
|
|
297
|
+
const tidKey = isV1 ? "di_tid" : "transactionId";
|
|
298
|
+
const headers = {
|
|
299
|
+
Accept: "application/json",
|
|
300
|
+
...context.init.headers,
|
|
301
|
+
Authorization: `${token.tokenType} ${token.token}`,
|
|
302
|
+
[tidKey]: uuid,
|
|
303
|
+
correlationId: uuid,
|
|
304
|
+
institutionId,
|
|
305
|
+
};
|
|
306
|
+
if (debugMode) {
|
|
307
|
+
const method = context.init.method ?? "GET";
|
|
308
|
+
const safeHeaders = { ...headers };
|
|
309
|
+
delete safeHeaders["Authorization"];
|
|
310
|
+
console.debug(`[candescent] ${method} ${context.url}`, safeHeaders);
|
|
311
|
+
}
|
|
312
|
+
return { url: context.url, init: { ...context.init, headers } };
|
|
313
|
+
},
|
|
314
|
+
async post(context) {
|
|
315
|
+
if (debugMode) {
|
|
316
|
+
const { response } = context;
|
|
317
|
+
console.debug(`[candescent] ${response.status} ${response.statusText} ${context.url}`);
|
|
318
|
+
}
|
|
319
|
+
return undefined;
|
|
320
|
+
},
|
|
321
|
+
};
|
|
322
|
+
const paramValidationMiddleware = {
|
|
323
|
+
async pre(context) {
|
|
324
|
+
validateUrlParams(context.url);
|
|
325
|
+
return undefined;
|
|
326
|
+
},
|
|
327
|
+
};
|
|
328
|
+
const generatedConfig = new Configuration({
|
|
329
|
+
basePath: baseUrl,
|
|
330
|
+
fetchApi: (url, init) => withRetry(() => fetch(url, init), DEFAULT_RETRY),
|
|
331
|
+
middleware: [
|
|
332
|
+
paramValidationMiddleware,
|
|
333
|
+
dualTokenMiddleware,
|
|
334
|
+
xmlToJsonMiddleware,
|
|
335
|
+
errorBodyMiddleware,
|
|
336
|
+
],
|
|
337
|
+
});
|
|
338
|
+
this.accounts = new AccountsApi(generatedConfig);
|
|
339
|
+
this.alertConfiguration = new AlertConfigurationApi(generatedConfig);
|
|
340
|
+
this.alertDelivery = new AlertDeliveryApi(generatedConfig);
|
|
341
|
+
this.alertPreferences = new AlertPreferencesApi(generatedConfig);
|
|
342
|
+
this.authentication = new AuthenticationApi(generatedConfig);
|
|
343
|
+
this.businessBanking = new BusinessBankingApi(generatedConfig);
|
|
344
|
+
this.customerCampaigns = new CustomerCampaignsApi(generatedConfig);
|
|
345
|
+
this.customerManagement = new CustomerManagementApi(generatedConfig);
|
|
346
|
+
this.documents = new DocumentsAndPreferencesApi(generatedConfig);
|
|
347
|
+
this.moneyMovement = new MoneyMovementApi(generatedConfig);
|
|
348
|
+
this.mx = new MXApi(generatedConfig);
|
|
349
|
+
this.notificationChannels = new NotificationChannelsApi(generatedConfig);
|
|
350
|
+
}
|
|
351
|
+
async close() {
|
|
352
|
+
for (const tp of [this.v2TokenProvider, this.v1TokenProvider]) {
|
|
353
|
+
if (tp.revokeToken) {
|
|
354
|
+
try {
|
|
355
|
+
await tp.revokeToken();
|
|
356
|
+
}
|
|
357
|
+
catch { /* best-effort */ }
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
/**
|
|
362
|
+
* Build a client from environment variables (zero hardcoded secrets).
|
|
363
|
+
*
|
|
364
|
+
* Reads:
|
|
365
|
+
* - `CANDESCENT_CLIENT_ID`
|
|
366
|
+
* - `CANDESCENT_CLIENT_SECRET`
|
|
367
|
+
* - `CANDESCENT_INSTITUTION_ID`
|
|
368
|
+
* - `CANDESCENT_BEARER_TOKEN` (skip OAuth entirely)
|
|
369
|
+
* - `CANDESCENT_ENVIRONMENT` ("stage" | "production")
|
|
370
|
+
* - `CANDESCENT_USERNAME` (optional, for password grant)
|
|
371
|
+
* - `CANDESCENT_PASSWORD` (optional, for password grant)
|
|
372
|
+
*/
|
|
373
|
+
static fromEnv() {
|
|
374
|
+
const env = (k) => process.env[k];
|
|
375
|
+
const clientId = env("CANDESCENT_CLIENT_ID");
|
|
376
|
+
const clientSecret = env("CANDESCENT_CLIENT_SECRET");
|
|
377
|
+
const institutionId = env("CANDESCENT_INSTITUTION_ID");
|
|
378
|
+
const bearerToken = env("CANDESCENT_BEARER_TOKEN");
|
|
379
|
+
const envName = env("CANDESCENT_ENVIRONMENT")?.toLowerCase();
|
|
380
|
+
const username = env("CANDESCENT_USERNAME");
|
|
381
|
+
const password = env("CANDESCENT_PASSWORD");
|
|
382
|
+
if (!institutionId) {
|
|
383
|
+
throw new CandescentError("CANDESCENT_INSTITUTION_ID is required");
|
|
384
|
+
}
|
|
385
|
+
if (!bearerToken && !(clientId && clientSecret)) {
|
|
386
|
+
throw new CandescentError("Set CANDESCENT_BEARER_TOKEN or both CANDESCENT_CLIENT_ID and CANDESCENT_CLIENT_SECRET");
|
|
387
|
+
}
|
|
388
|
+
const environment = envName === "production" ? Environment.Production : Environment.Stage;
|
|
389
|
+
return new CandescentClient({
|
|
390
|
+
clientId,
|
|
391
|
+
clientSecret,
|
|
392
|
+
institutionId,
|
|
393
|
+
bearerToken,
|
|
394
|
+
username,
|
|
395
|
+
password,
|
|
396
|
+
environment,
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// Auto-generated — lightweight string arrays for shell autocomplete
|
|
2
|
+
export const TAG_GROUP_NAMES = ["authentication", "customer-management", "core-banking", "business-banking", "money-movement", "alerts-and-notifications", "documents-and-preferences", "customer-campaigns", "mx"];
|
|
3
|
+
export const TAG_NAMES = ["oauth-v1", "oauth-v2", "registration-and-access", "profile-and-status", "contact-info", "accounts", "transactions", "banking-activities", "images", "registration", "profile", "entitlements", "recipients", "transfers", "system-alerts", "institution-alerts", "templates", "institution-preferences", "user-preferences", "notification-channels", "history-and-events", "institution-disclosures", "user-disclosures", "electronic-statements", "experience-groups", "jobs", "promotions-suite", "audience", "users", "data", "widgets"];
|
|
4
|
+
export const BROWSABLE_NAMES = ["authentication", "customer-management", "core-banking", "business-banking", "money-movement", "alerts-and-notifications", "documents-and-preferences", "customer-campaigns", "mx", "oauth-v1", "oauth-v2", "registration-and-access", "profile-and-status", "contact-info", "accounts", "transactions", "banking-activities", "images", "registration", "profile", "entitlements", "recipients", "transfers", "system-alerts", "institution-alerts", "templates", "institution-preferences", "user-preferences", "notification-channels", "history-and-events", "institution-disclosures", "user-disclosures", "electronic-statements", "experience-groups", "jobs", "promotions-suite", "audience", "users", "data", "widgets"];
|
|
5
|
+
export const QUALIFIED_OP_NAMES = ["accounts.list", "accounts.get", "audience.getUserListDetails", "audience.createUserListMetadata", "images.listBankingImages", "images.getBankingImage", "institution-disclosures.listInstitutionDisclosures", "institution-disclosures.createInstitutionDisclosure", "institution-disclosures.updateInstitutionDisclosure", "user-disclosures.listUserDisclosures", "user-disclosures.updateUserDisclosure", "user-disclosures.createUserDisclosure", "user-disclosures.deleteUserDisclosure", "experience-groups.uploadUserListFile", "experience-groups.createExperienceGroup", "experience-groups.listExperienceGroups", "jobs.getJobErrors", "jobs.getJob", "jobs.listJobs", "experience-groups.deleteExperienceGroup", "experience-groups.updateExperienceGroup", "profile-and-status.getInstitutionUser", "history-and-events.listHistory", "history-and-events.getHistoryContent", "templates.listTemplates", "templates.createTemplate", "templates.updateTemplate", "templates.deleteTemplate", "system-alerts.listTypes", "system-alerts.createType", "system-alerts.updateType", "system-alerts.deleteType", "institution-alerts.listInstitutionTypes", "institution-alerts.createInstitutionType", "institution-alerts.updateInstitutionType", "institution-alerts.deleteInstitutionType", "user-preferences.list", "user-preferences.create", "user-preferences.get", "user-preferences.update", "user-preferences.delete", "institution-preferences.listInstitution", "institution-preferences.createInstitution", "institution-preferences.updateInstitution", "institution-preferences.deleteInstitution", "history-and-events.publishEvents", "recipients.listRecipients", "recipients.createRecipient", "recipients.getRecipient", "recipients.updateRecipient", "recipients.deleteRecipient", "transactions.listTransactions", "transfers.createTransfer", "profile-and-status.getInformation", "accounts.getAccounts", "electronic-statements.getEstatementsReport", "contact-info.getContactMethods", "registration-and-access.resetPassword", "registration-and-access.unlockUser", "contact-info.updateContactInfo", "electronic-statements.getDisclosuresByAccount", "electronic-statements.updateStatementDeliveryPreference", "electronic-statements.updateEStatementPreferences", "oauth-v2.getAuthorizationCode", "oauth-v2.authorizeClient", "profile-and-status.getCustomer", "accounts.listCustomerAccounts", "oauth-v1.createLegacyToken", "promotions-suite.createUserList", "promotions-suite.getUserListStatus", "registration-and-access.register", "notification-channels.listUserSubscriptions", "notification-channels.updateSubscription", "notification-channels.createSubscription", "notification-channels.listInstitutionSubscriptions", "notification-channels.getSubscription", "notification-channels.deleteSubscription", "notification-channels.sendCustomerEvent", "oauth-v2.createToken", "oauth-v2.revokeToken", "profile-and-status.getUserStatus", "banking-activities.searchActivities", "users.listUsers", "users.getUser", "widgets.getWidgetUrl", "data.downloadTransactionLogs", "profile.getBusinessDetails", "registration.getRegistrationConfig", "registration.getRegistrationByConfirmation", "registration.createRegistration", "registration.getRegistrationById", "entitlements.getBusinessEntitlements", "entitlements.getUserEntitlements"];
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Candescent SDK error hierarchy.
|
|
3
|
+
*
|
|
4
|
+
* Modeled after Stainless — each HTTP status gets its own class.
|
|
5
|
+
* Every ApiError exposes: statusCode, message, headers, body, rawResponse.
|
|
6
|
+
*/
|
|
7
|
+
export declare class CandescentError extends Error {
|
|
8
|
+
constructor(message: string);
|
|
9
|
+
}
|
|
10
|
+
export declare class ApiError extends CandescentError {
|
|
11
|
+
readonly statusCode: number;
|
|
12
|
+
readonly headers: Headers;
|
|
13
|
+
readonly body: string;
|
|
14
|
+
readonly rawResponse: Response;
|
|
15
|
+
constructor(statusCode: number, message: string, headers: Headers, body: string, rawResponse: Response);
|
|
16
|
+
toString(): string;
|
|
17
|
+
}
|
|
18
|
+
export declare class BadRequestError extends ApiError {
|
|
19
|
+
constructor(h: Headers, b: string, r: Response);
|
|
20
|
+
}
|
|
21
|
+
export declare class AuthenticationError extends ApiError {
|
|
22
|
+
constructor(h: Headers, b: string, r: Response);
|
|
23
|
+
}
|
|
24
|
+
export declare class PermissionDeniedError extends ApiError {
|
|
25
|
+
constructor(h: Headers, b: string, r: Response);
|
|
26
|
+
}
|
|
27
|
+
export declare class NotFoundError extends ApiError {
|
|
28
|
+
constructor(h: Headers, b: string, r: Response);
|
|
29
|
+
}
|
|
30
|
+
export declare class ConflictError extends ApiError {
|
|
31
|
+
constructor(h: Headers, b: string, r: Response);
|
|
32
|
+
}
|
|
33
|
+
export declare class UnprocessableEntityError extends ApiError {
|
|
34
|
+
constructor(h: Headers, b: string, r: Response);
|
|
35
|
+
}
|
|
36
|
+
export declare class RateLimitError extends ApiError {
|
|
37
|
+
readonly retryAfter: number | null;
|
|
38
|
+
constructor(h: Headers, b: string, r: Response);
|
|
39
|
+
}
|
|
40
|
+
export declare class InternalServerError extends ApiError {
|
|
41
|
+
constructor(status: number, h: Headers, b: string, r: Response);
|
|
42
|
+
}
|
|
43
|
+
export declare class ConnectionError extends CandescentError {
|
|
44
|
+
constructor(message: string);
|
|
45
|
+
}
|
|
46
|
+
export declare class RequestTimeoutError extends CandescentError {
|
|
47
|
+
constructor(message: string);
|
|
48
|
+
}
|
|
49
|
+
export declare function errorForStatus(statusCode: number, headers: Headers, body: string, rawResponse: Response): ApiError;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Candescent SDK error hierarchy.
|
|
3
|
+
*
|
|
4
|
+
* Modeled after Stainless — each HTTP status gets its own class.
|
|
5
|
+
* Every ApiError exposes: statusCode, message, headers, body, rawResponse.
|
|
6
|
+
*/
|
|
7
|
+
export class CandescentError extends Error {
|
|
8
|
+
constructor(message) {
|
|
9
|
+
super(message);
|
|
10
|
+
this.name = "CandescentError";
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
export class ApiError extends CandescentError {
|
|
14
|
+
statusCode;
|
|
15
|
+
headers;
|
|
16
|
+
body;
|
|
17
|
+
rawResponse;
|
|
18
|
+
constructor(statusCode, message, headers, body, rawResponse) {
|
|
19
|
+
super(message);
|
|
20
|
+
this.name = "ApiError";
|
|
21
|
+
this.statusCode = statusCode;
|
|
22
|
+
this.headers = headers;
|
|
23
|
+
this.body = body;
|
|
24
|
+
this.rawResponse = rawResponse;
|
|
25
|
+
}
|
|
26
|
+
toString() {
|
|
27
|
+
let s = `${this.name} (HTTP ${this.statusCode})`;
|
|
28
|
+
if (this.body) {
|
|
29
|
+
try {
|
|
30
|
+
const parsed = JSON.parse(this.body);
|
|
31
|
+
s += `: ${JSON.stringify(parsed, null, 2)}`;
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
s += `: ${this.body}`;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return s;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export class BadRequestError extends ApiError {
|
|
41
|
+
constructor(h, b, r) {
|
|
42
|
+
super(400, b, h, b, r);
|
|
43
|
+
this.name = "BadRequestError";
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
export class AuthenticationError extends ApiError {
|
|
47
|
+
constructor(h, b, r) {
|
|
48
|
+
super(401, b, h, b, r);
|
|
49
|
+
this.name = "AuthenticationError";
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
export class PermissionDeniedError extends ApiError {
|
|
53
|
+
constructor(h, b, r) {
|
|
54
|
+
super(403, b, h, b, r);
|
|
55
|
+
this.name = "PermissionDeniedError";
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
export class NotFoundError extends ApiError {
|
|
59
|
+
constructor(h, b, r) {
|
|
60
|
+
super(404, b, h, b, r);
|
|
61
|
+
this.name = "NotFoundError";
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
export class ConflictError extends ApiError {
|
|
65
|
+
constructor(h, b, r) {
|
|
66
|
+
super(409, b, h, b, r);
|
|
67
|
+
this.name = "ConflictError";
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
export class UnprocessableEntityError extends ApiError {
|
|
71
|
+
constructor(h, b, r) {
|
|
72
|
+
super(422, b, h, b, r);
|
|
73
|
+
this.name = "UnprocessableEntityError";
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
export class RateLimitError extends ApiError {
|
|
77
|
+
retryAfter;
|
|
78
|
+
constructor(h, b, r) {
|
|
79
|
+
super(429, b, h, b, r);
|
|
80
|
+
this.name = "RateLimitError";
|
|
81
|
+
const ra = h.get("Retry-After");
|
|
82
|
+
this.retryAfter = ra ? parseFloat(ra) || null : null;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
export class InternalServerError extends ApiError {
|
|
86
|
+
constructor(status, h, b, r) {
|
|
87
|
+
super(status, b, h, b, r);
|
|
88
|
+
this.name = "InternalServerError";
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
export class ConnectionError extends CandescentError {
|
|
92
|
+
constructor(message) {
|
|
93
|
+
super(message);
|
|
94
|
+
this.name = "ConnectionError";
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
export class RequestTimeoutError extends CandescentError {
|
|
98
|
+
constructor(message) {
|
|
99
|
+
super(message);
|
|
100
|
+
this.name = "RequestTimeoutError";
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
const STATUS_MAP = {
|
|
104
|
+
400: BadRequestError,
|
|
105
|
+
401: AuthenticationError,
|
|
106
|
+
403: PermissionDeniedError,
|
|
107
|
+
404: NotFoundError,
|
|
108
|
+
409: ConflictError,
|
|
109
|
+
422: UnprocessableEntityError,
|
|
110
|
+
429: RateLimitError,
|
|
111
|
+
};
|
|
112
|
+
export function errorForStatus(statusCode, headers, body, rawResponse) {
|
|
113
|
+
const Cls = STATUS_MAP[statusCode];
|
|
114
|
+
if (Cls)
|
|
115
|
+
return new Cls(headers, body, rawResponse);
|
|
116
|
+
if (statusCode >= 500)
|
|
117
|
+
return new InternalServerError(statusCode, headers, body, rawResponse);
|
|
118
|
+
return new ApiError(statusCode, body, headers, body, rawResponse);
|
|
119
|
+
}
|