---
title: "UpdateParams defines a (governance) operation for updating the module
parameters. The authority defaults to the x/gov module account."
method: POST
path: "/pocket.shared.Msg/UpdateParams"
tags: ["Msg"]
---

# UpdateParams defines a (governance) operation for updating the module
parameters. The authority defaults to the x/gov module account.

`POST /pocket.shared.Msg/UpdateParams`

## Request body

- PocketSharedMsgUpdateParams — MsgUpdateParams is the Msg/UpdateParams request type.
  - `authority` string — authority is the address that controls the module (defaults to x/gov unless overwritten).
  - `params` PocketSharedParams — Params defines the parameters for the module.
    - `application_unbonding_period_sessions` string, uint64 — application_unbonding_period_sessions is the number of sessions that an application must wait after unstaking before their staked assets are moved to their account balance. Onchain business logic requires, and ensures, that the corresponding block count of the application unbonding period will exceed the end of its corresponding proof window close height.
    - `claim_window_close_offset_blocks` string, uint64 — claim_window_close_offset_blocks is the number of blocks after the claim window open height, at which the claim window closes.
    - `claim_window_open_offset_blocks` string, uint64 — claim_window_open_offset_blocks is the number of blocks after the session grace period height, at which the claim window opens.
    - `compute_unit_cost_granularity` string, uint64 — compute_unit_cost_granularity is the fraction of the base unit (uPOKT) used to represent the smallest price of a single compute unit. compute_unit_cost_granularity defines the smallest fraction of uPOKT that can represent the cost of a single compute unit. It acts as a denominator in the formula: compute_unit_cost_in_uPOKT = compute_units_to_tokens_multiplier / compute_unit_cost_granularity This enables high-precision pricing of compute units using integer math. For example: +-------------------------------+---------------------------------------------+ | compute_unit_cost_granularity | compute_units_to_tokens_multiplier unit | +-------------------------------+---------------------------------------------+ | 1 | uPOKT | | 1_000 | nPOKT (nanoPOKT, 1e-3 uPOKT) | | 1_000_000 | pPOKT (picoPOKT, 1e-6 uPOKT) | +-------------------------------+---------------------------------------------+ ⚠️ Note: This value is a configurable global network parameter (not a constant). It must be a power of 10, allowing precise denomination shifts without affecting ongoing sessions. This prevents sessions from settling using parameters that were not in effect during their creation.
    - `compute_units_to_tokens_multiplier` string, uint64 — The amount of tokens that a compute unit should translate to when settling a session. It is denominated in fractional uPOKT (1/compute_unit_cost_granularity) DEV_NOTE: This used to be under x/tokenomics but has been moved here to avoid cyclic dependencies.
    - `gateway_unbonding_period_sessions` string, uint64 — gateway_unbonding_period_sessions is the number of sessions that a gateway must wait after unstaking before their staked assets are moved to its account balance.
    - `grace_period_end_offset_blocks` string, uint64 — grace_period_end_offset_blocks is the number of blocks, after the session end height, during which the supplier can still service payable relays. Suppliers will need to recreate a claim for the previous session (if already created) to get paid for the additional relays.
    - `num_blocks_per_session` string, uint64 — num_blocks_per_session is the number of blocks between the session start & end heights.
    - `proof_window_close_offset_blocks` string, uint64 — proof_window_close_offset_blocks is the number of blocks after the proof window open height, at which the proof window closes.
    - `proof_window_open_offset_blocks` string, uint64 — proof_window_open_offset_blocks is the number of blocks after the claim window close height, at which the proof window opens.
    - `session_grid_anchor_height` string, uint64 — session_grid_anchor_height is the block height at which this params epoch's session grid begins. Boundary math is computed relative to this anchor instead of block 1, so that changing num_blocks_per_session does not misalign in-flight sessions (#543). DERIVED metadata, NOT governable: set by the param-update handler to the next session boundary; any value supplied via governance is ignored/overwritten. A zero value falls back to the genesis block-1 grid (legacy behavior).
    - `session_number_at_anchor` string, uint64 — session_number_at_anchor is the session number of the session starting at session_grid_anchor_height. Used to keep GetSessionNumber monotonic across epochs (epoch-relative numbering would otherwise reset at each change). DERIVED metadata, NOT governable.
    - `supplier_unbonding_period_sessions` string, uint64 — supplier_unbonding_period_sessions is the number of sessions that a supplier must wait after unstaking before their staked assets are moved to their account balance. Onchain business logic requires, and ensures, that the corresponding block count of the unbonding period will exceed the end of any active claim & proof lifecycles.

## Response `200`

A successful response.

- PocketSharedMsgUpdateParamsResponse — MsgUpdateParamsResponse defines the response structure for executing a MsgUpdateParams message.

## Other responses

- `default` — An unexpected error response.

## Changes

> 52 revisions in range; 30 could not be searched.

- **2023-11-01** `3f51f9b9a127` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/pokt-network/apis/http-api-console/changes/pocket.shared.Msg/UpdateParams/post.md)

---

[API](https://skmtc.dev/pokt-network/apis/http-api-console.md) · [All operations](https://skmtc.dev/pokt-network/apis/http-api-console/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/pokt-network/http-api-console/revisions/1fc29453a1ef/schema)
