> For the complete documentation index, see [llms.txt](https://docs.creditcoin.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.creditcoin.org/releases/3.52.0-mainnet/3.52.0-mainnet-api-changes.md).

# 3.52.0-Mainnet API Changes

### API changes for runtime users

* `pallet-balances`&#x20;
  * Extrinsics
    * &#x20;`transfer > transferAllowDeath` / `transferKeepAlive`&#x20;
* `pallet-staking`
  * Extrinsics
    * If a validator has more than `maxExposurePageSize` nominators (512 in our case) then `payoutStakers` will need to be called multiple times to repay all of the nominators. The extrinsic only pays out the top one page (512) nominators at a time.
    * Alternatively, if you know which page your nominator stash belongs to, you can perform `payoutStakersByPage` and specify the page (0, 1, 2, etc) to pay out specific nominators that belong to that page. This can be used to avoid paying transaction fees while unintentionally paying out other accounts.
  * Storage Calls
    * `erasstakers > erasStakersPaged` Use the old API for eras up to the runtime upgrade, and the new api for eras after it
    * `erasStakersClipped > erasStakersOverview` Use the old API for eras up to the runtime upgrade, and the new api for eras after it
    * `claimedRewards` inside the `ledger` storage item has been deprecated and changed to `legacyClaimedRewards`. It will only reflect the rewards claimed before the runtime upgrade. Users should use the new `staking.claimedRewards` storage call to get the history of claimed paged rewards by era and validator
  * Storage Constants
    * `maxNominatorRewardedPerValidator > maxExposurePageSize`&#x20;
* `pallet-nomination-pools`
  * Added the ability to configure who can claim commission from nomination pools.

    * Previously, only the pool's root role was allowed to call `claim_commission`. This was limiting for use cases where pools wanted to allow third-party bots, external accounts, or anyone to claim commission on their behalf. This change allows pool operators to configure this behavior.
      * A new `claim_permission` field has been added to the `Commission` struct inside `BondedPool`.
      * If `claim_permission` is set to:
        * `Permissionless`: **anyone** can call `claim_commission`
        * `Account(some_account)`: only the specified account can call `claim_commission`
        * `None`: falls back to current behavior (only the pool's root can call it)

    This change introduces a migration to extend existing pools with the new optional field. All existing pools will default to `None`, preserving the current behavior unless explicitly updated.

    To enable permissionless claiming or delegate it to another account, the pool's root role must update the `claim_permission` field accordingly. This could be done by:

    * Extrinsics > `nominationPools` > `setCommissionClaimPermission`
      * provide `pool_id` and enable `CommissionClaimPermission`option, and set it either to `Permissionless` or specify an `Account` that will have the permission to withdraw commissions
    * No action is required unless the pools want to change this behavior.
