---
title: "ChannelUpgradeTry defines a rpc handler method for MsgChannelUpgradeTry."
method: POST
path: "/ibc.core.channel.v1.Msg/ChannelUpgradeTry"
tags: ["Msg"]
---

# ChannelUpgradeTry defines a rpc handler method for MsgChannelUpgradeTry.

`POST /ibc.core.channel.v1.Msg/ChannelUpgradeTry`

## Request body

- IbcCoreChannelV1MsgChannelUpgradeTry
  - `channel_id` string
  - `counterparty_upgrade_fields` IbcCoreChannelV1UpgradeFields — UpgradeFields are the fields in a channel end which may be changed during a channel upgrade.
    - `connection_hops` string[]
    - `ordering` 'ORDER_NONE_UNSPECIFIED' | 'ORDER_UNORDERED' | 'ORDER_ORDERED' — - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in which they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
    - `version` string
  - `counterparty_upgrade_sequence` string, uint64
  - `port_id` string
  - `proof_channel` string, byte
  - `proof_height` IbcCoreClientV1Height — Normally the RevisionHeight is incremented at each height while keeping RevisionNumber the same. However some consensus algorithms may choose to reset the height in certain conditions e.g. hard forks, state-machine breaking changes In these cases, the RevisionNumber is incremented so that height continues to be monitonically increasing even as the RevisionHeight gets reset
    - `revision_height` string, uint64
    - `revision_number` string, uint64
  - `proof_upgrade` string, byte
  - `proposed_upgrade_connection_hops` string[]
  - `signer` string

## Response `200`

A successful response.

- IbcCoreChannelV1MsgChannelUpgradeTryResponse
  - `result` 'RESPONSE_RESULT_TYPE_UNSPECIFIED' | 'RESPONSE_RESULT_TYPE_NOOP' | 'RESPONSE_RESULT_TYPE_SUCCESS' | 'RESPONSE_RESULT_TYPE_FAILURE' — - RESPONSE_RESULT_TYPE_UNSPECIFIED: Default zero value enumeration - RESPONSE_RESULT_TYPE_NOOP: The message did not call the IBC application callbacks (because, for example, the packet had already been relayed) - RESPONSE_RESULT_TYPE_SUCCESS: The message was executed successfully - RESPONSE_RESULT_TYPE_FAILURE: The message was executed unsuccessfully
  - `upgrade` IbcCoreChannelV1Upgrade — Upgrade is a verifiable type which contains the relevant information for an attempted upgrade. It provides the proposed changes to the channel end, the timeout for this upgrade attempt and the next packet sequence which allows the counterparty to efficiently know the highest sequence it has received. The next sequence send is used for pruning and upgrading from unordered to ordered channels.
    - `fields` IbcCoreChannelV1UpgradeFields — UpgradeFields are the fields in a channel end which may be changed during a channel upgrade.
      - `connection_hops` string[]
      - `ordering` 'ORDER_NONE_UNSPECIFIED' | 'ORDER_UNORDERED' | 'ORDER_ORDERED' — - ORDER_NONE_UNSPECIFIED: zero-value for channel ordering - ORDER_UNORDERED: packets can be delivered in any order, which may differ from the order in which they were sent. - ORDER_ORDERED: packets are delivered exactly in the order which they were sent
      - `version` string
    - `next_sequence_send` string, uint64
    - `timeout` IbcCoreChannelV1Timeout — Timeout defines an execution deadline structure for 04-channel handlers. This includes packet lifecycle handlers as well as the upgrade handshake handlers. A valid Timeout contains either one or both of a timestamp and block height (sequence).
      - `height` IbcCoreClientV1Height — Normally the RevisionHeight is incremented at each height while keeping RevisionNumber the same. However some consensus algorithms may choose to reset the height in certain conditions e.g. hard forks, state-machine breaking changes In these cases, the RevisionNumber is incremented so that height continues to be monitonically increasing even as the RevisionHeight gets reset
        - `revision_height` string, uint64
        - `revision_number` string, uint64
      - `timestamp` string, uint64
  - `upgrade_sequence` string, uint64

## Other responses

- `default` — An unexpected error response.

## Changes

- **2024-08-14** `21c607e4fa20` — 1 info
  - endpoint added
- **2024-07-31** `19416a3f0cd1` — 1 breaking
  - api path removed without deprecation
- **2024-07-11** `ca7e84576c8e` — 1 info
  - endpoint added
- **2024-05-15** `41fb8b09e244` — 1 breaking
  - api path removed without deprecation
- **2024-03-06** `0ded0c5649f1` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/pokt-network/apis/http-api-console/changes/ibc.core.channel.v1.Msg/ChannelUpgradeTry/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/de0653d8a73d/schema)
