public static function update(
        int $monetaryAccountBankId,
        string $description = null,
        Amount $dailyLimit = null,
        string $avatarUuid = null,
        string $status = null,
        string $subStatus = null,
        string $reason = null,
        string $reasonDescription = null,
        array $notificationFilters = null,
        MonetaryAccountSetting $setting = null,
        array $customHeaders = []
    ): BunqResponseInt {
        $apiClient = new ApiClient(static::getApiContext());
        $responseRaw = $apiClient->put(
            vsprintf(
                self::ENDPOINT_URL_UPDATE,
                [static::determineUserId(), $monetaryAccountBankId]
            ),
            [
                self::FIELD_DESCRIPTION => $description,
                self::FIELD_DAILY_LIMIT => $dailyLimit,
                self::FIELD_AVATAR_UUID => $avatarUuid,
                self::FIELD_STATUS => $status,
                self::FIELD_SUB_STATUS => $subStatus,
                self::FIELD_REASON => $reason,
                self::FIELD_REASON_DESCRIPTION => $reasonDescription,
                self::FIELD_NOTIFICATION_FILTERS => $notificationFilters,
                self::FIELD_SETTING => $setting,
            ],
            $customHeaders
        );

        return BunqResponseInt::castFromBunqResponse(
            static::processForId($responseRaw)
        );
    }
public static function update(
        int $monetaryAccountBankId,
        string $description = null,
        Amount $dailyLimit = null,
        string $avatarUuid = null,
        string $status = null,
        string $subStatus = null,
        string $reason = null,
        string $reasonDescription = null,
        array $notificationFilters = null,
        MonetaryAccountSetting $setting = null,
        array $customHeaders = []
    ): BunqResponseInt {
        $apiClient = new ApiClient(static::getApiContext());
        $responseRaw = $apiClient->put(
            vsprintf(
                self::ENDPOINT_URL_UPDATE,
                [static::determineUserId(), $monetaryAccountBankId]
            ),
            [
                self::FIELD_DESCRIPTION => $description,
                self::FIELD_DAILY_LIMIT => $dailyLimit,
                self::FIELD_AVATAR_UUID => $avatarUuid,
                self::FIELD_STATUS => $status,
                self::FIELD_SUB_STATUS => $subStatus,
                self::FIELD_REASON => $reason,
                self::FIELD_REASON_DESCRIPTION => $reasonDescription,
                self::FIELD_NOTIFICATION_FILTERS => $notificationFilters,
                self::FIELD_SETTING => $setting,
            ],
            $customHeaders
        );

        return BunqResponseInt::castFromBunqResponse(
            static::processForId($responseRaw)
        );
    }
public static function update ( int $ monetaryAccountBankId , string $ description = null , Amount $ dailyLimit = null , string $ avatarUuid = null , string $ status = null , string $ subStatus = null , string $ reason = null , string $ reasonDescription = null , array $ notificationFilters = null , MonetaryAccountSetting $ setting = null , array $ customHeaders = [ ] ) : BunqResponseInt { $ apiClient = new ApiClient ( static :: getApiContext ( ) ) ; $ responseRaw = $ apiClient -> put ( vsprintf ( self :: ENDPOINT_URL_UPDATE , [ static :: determineUserId ( ) , $ monetaryAccountBankId ] ) , [ self :: FIELD_DESCRIPTION => $ description , self :: FIELD_DAILY_LIMIT => $ dailyLimit , self :: FIELD_AVATAR_UUID => $ avatarUuid , self :: FIELD_STATUS => $ status , self :: FIELD_SUB_STATUS => $ subStatus , self :: FIELD_REASON => $ reason , self :: FIELD_REASON_DESCRIPTION => $ reasonDescription , self :: FIELD_NOTIFICATION_FILTERS => $ notificationFilters , self :: FIELD_SETTING => $ setting , ] , $ customHeaders ) ; return BunqResponseInt :: castFromBunqResponse ( static :: processForId ( $ responseRaw ) ) ; }
Update a specific existing MonetaryAccountBank.

@param int $monetaryAccountBankId
@param string|null $description                       The description of the
MonetaryAccountBank. Defaults to 'bunq account'.
@param Amount|null $dailyLimit                        The daily spending limit Amount of the
MonetaryAccountBank. Defaults to 1000 EUR. Currency must
match the MonetaryAccountBank's currency. Limited to 10000
EUR.
@param string|null $avatarUuid                        The UUID of the Avatar of the
MonetaryAccountBank.
@param string|null $status                            The status of the MonetaryAccountBank. Ignored
in POST requests (always set to ACTIVE) can be CANCELLED
or
PENDING_REOPEN in PUT requests to cancel (close) or reopen
the MonetaryAccountBank. When updating the status and/or
sub_status no other fields can be updated in the same
request (and vice versa).
@param string|null $subStatus                         The sub-status of the MonetaryAccountBank
providing extra information regarding the status. Should
be ignored for POST requests. In case of PUT requests with
status CANCELLED it can only be REDEMPTION_VOLUNTARY,
while with status PENDING_REOPEN it can only be NONE. When
updating the status and/or sub_status no other fields can
be updated in the same request (and vice versa).
@param string|null $reason                            The reason for voluntarily cancelling
(closing) the MonetaryAccountBank, can only be OTHER.
Should only be specified if updating the status to
CANCELLED.
@param string|null $reasonDescription                 The optional free-form reason for
voluntarily cancelling (closing) the MonetaryAccountBank.
Can be any user provided message. Should only be specified
if updating the status to CANCELLED.
@param NotificationFilter[]|null $notificationFilters The types of
notifications that will result in a push notification or
URL callback for this MonetaryAccountBank.
@param MonetaryAccountSetting|null $setting           The settings of the
MonetaryAccountBank.
@param string[] $customHeaders

@return BunqResponseInt
Update a specific existing MonetaryAccountBank .