@cfxlabsinc/b2b-services
    Preparing search index...

    Manage customer-wide notification preferences

    Index

    Constructors

    Methods

    • Parameters

      • __namedParameters: { customerId: string }

      Returns Promise<
          {
              ok: true;
              value: | Required<
                  {
                      email?: {
                          emailAddresses: string[];
                          events: {
                              cardTransactionCreated: "ACTIVE"
                              | "DISABLED";
                              cardTransactionFailed: "ACTIVE" | "DISABLED";
                              identityActive: "ACTIVE" | "DISABLED";
                              identityBlocked: "ACTIVE" | "DISABLED";
                              identityDeleted: "ACTIVE" | "DISABLED";
                              identityDisabled: "ACTIVE" | "DISABLED";
                              identityPendingVerification: "ACTIVE" | "DISABLED";
                              identityReview: "ACTIVE" | "DISABLED";
                              ledgerAccountCreated: "ACTIVE" | "DISABLED";
                              moneyInCreated: "ACTIVE" | "DISABLED";
                              moneyInFailed: "ACTIVE" | "DISABLED";
                              moneyOutCreated: "ACTIVE" | "DISABLED";
                              moneyOutFailed: "ACTIVE" | "DISABLED";
                              organizationActive: "ACTIVE" | "DISABLED";
                              organizationDisabled: "ACTIVE" | "DISABLED";
                              organizationPendingVerification: "ACTIVE" | "DISABLED";
                              paymentInstrumentActive: "ACTIVE" | "DISABLED";
                              paymentInstrumentBlocked: "ACTIVE" | "DISABLED";
                              paymentInstrumentPendingVerification: "ACTIVE" | "DISABLED";
                              transferCreated: "ACTIVE" | "DISABLED";
                              transferFailed: "ACTIVE" | "DISABLED";
                          };
                          userGroups: string[];
                          userIds: string[];
                      };
                      slack?: {
                          cardTransactionCreated: "ACTIVE"
                          | "DISABLED";
                          cardTransactionFailed: "ACTIVE" | "DISABLED";
                          identityActive: "ACTIVE" | "DISABLED";
                          identityBlocked: "ACTIVE" | "DISABLED";
                          identityDeleted: "ACTIVE" | "DISABLED";
                          identityDisabled: "ACTIVE" | "DISABLED";
                          identityPendingVerification: "ACTIVE" | "DISABLED";
                          identityReview: "ACTIVE" | "DISABLED";
                          ledgerAccountCreated: "ACTIVE" | "DISABLED";
                          moneyInCreated: "ACTIVE" | "DISABLED";
                          moneyInFailed: "ACTIVE" | "DISABLED";
                          moneyOutCreated: "ACTIVE" | "DISABLED";
                          moneyOutFailed: "ACTIVE" | "DISABLED";
                          organizationActive: "ACTIVE" | "DISABLED";
                          organizationDisabled: "ACTIVE" | "DISABLED";
                          organizationPendingVerification: "ACTIVE" | "DISABLED";
                          paymentInstrumentActive: "ACTIVE" | "DISABLED";
                          paymentInstrumentBlocked: "ACTIVE" | "DISABLED";
                          paymentInstrumentPendingVerification: "ACTIVE" | "DISABLED";
                          transferCreated: "ACTIVE" | "DISABLED";
                          transferFailed: "ACTIVE" | "DISABLED";
                      };
                  },
              >
              | null;
          },
      >

      Persisted customer notification preferences, or the defaults if not set. null if the customer does not exist.

    • Create or update the customer notification preferences

      The top-level fields are replaced completely if present, i.e. if email preferences are supplied, it overrides the persisted values but leaves slack preferences as-is.

      Parameters

      • __namedParameters: Partial<
            Required<
                {
                    email?: {
                        emailAddresses: string[];
                        events: {
                            cardTransactionCreated: "ACTIVE"
                            | "DISABLED";
                            cardTransactionFailed: "ACTIVE" | "DISABLED";
                            identityActive: "ACTIVE" | "DISABLED";
                            identityBlocked: "ACTIVE" | "DISABLED";
                            identityDeleted: "ACTIVE" | "DISABLED";
                            identityDisabled: "ACTIVE" | "DISABLED";
                            identityPendingVerification: "ACTIVE" | "DISABLED";
                            identityReview: "ACTIVE" | "DISABLED";
                            ledgerAccountCreated: "ACTIVE" | "DISABLED";
                            moneyInCreated: "ACTIVE" | "DISABLED";
                            moneyInFailed: "ACTIVE" | "DISABLED";
                            moneyOutCreated: "ACTIVE" | "DISABLED";
                            moneyOutFailed: "ACTIVE" | "DISABLED";
                            organizationActive: "ACTIVE" | "DISABLED";
                            organizationDisabled: "ACTIVE" | "DISABLED";
                            organizationPendingVerification: "ACTIVE" | "DISABLED";
                            paymentInstrumentActive: "ACTIVE" | "DISABLED";
                            paymentInstrumentBlocked: "ACTIVE" | "DISABLED";
                            paymentInstrumentPendingVerification: "ACTIVE" | "DISABLED";
                            transferCreated: "ACTIVE" | "DISABLED";
                            transferFailed: "ACTIVE" | "DISABLED";
                        };
                        userGroups: string[];
                        userIds: string[];
                    };
                    slack?: {
                        cardTransactionCreated: "ACTIVE"
                        | "DISABLED";
                        cardTransactionFailed: "ACTIVE" | "DISABLED";
                        identityActive: "ACTIVE" | "DISABLED";
                        identityBlocked: "ACTIVE" | "DISABLED";
                        identityDeleted: "ACTIVE" | "DISABLED";
                        identityDisabled: "ACTIVE" | "DISABLED";
                        identityPendingVerification: "ACTIVE" | "DISABLED";
                        identityReview: "ACTIVE" | "DISABLED";
                        ledgerAccountCreated: "ACTIVE" | "DISABLED";
                        moneyInCreated: "ACTIVE" | "DISABLED";
                        moneyInFailed: "ACTIVE" | "DISABLED";
                        moneyOutCreated: "ACTIVE" | "DISABLED";
                        moneyOutFailed: "ACTIVE" | "DISABLED";
                        organizationActive: "ACTIVE" | "DISABLED";
                        organizationDisabled: "ACTIVE" | "DISABLED";
                        organizationPendingVerification: "ACTIVE" | "DISABLED";
                        paymentInstrumentActive: "ACTIVE" | "DISABLED";
                        paymentInstrumentBlocked: "ACTIVE" | "DISABLED";
                        paymentInstrumentPendingVerification: "ACTIVE" | "DISABLED";
                        transferCreated: "ACTIVE" | "DISABLED";
                        transferFailed: "ACTIVE" | "DISABLED";
                    };
                },
            >,
        > & { customerId: string }

      Returns Promise<{ error: ServiceError; ok: false } | { ok: true; value: T }>