---
title: "Channels queries all the IBC channels of a chain."
method: GET
path: "/ibc/core/channel/v1/channels"
tags: ["Query"]
---

# Channels queries all the IBC channels of a chain.

`GET /ibc/core/channel/v1/channels`

## Query parameters

- `pagination.key` string, byte
- `pagination.offset` string, uint64
- `pagination.limit` string, uint64
- `pagination.count_total` boolean
- `pagination.reverse` boolean

## Response `200`

A successful response.

- IbcCoreChannelV1QueryChannelsResponse — QueryChannelsResponse is the response type for the Query/Channels RPC method.
  - `channels` IbcCoreChannelV1IdentifiedChannel[] — list of stored channels of the chain.
    - `state` 'STATE_UNINITIALIZED_UNSPECIFIED' | 'STATE_INIT' | 'STATE_TRYOPEN' | 'STATE_OPEN' | 'STATE_CLOSED' | 'STATE_FLUSHING' | 'STATE_FLUSHCOMPLETE' — State defines if a channel is in one of the following states: CLOSED, INIT, TRYOPEN, OPEN, FLUSHING, FLUSHCOMPLETE or UNINITIALIZED. - STATE_UNINITIALIZED_UNSPECIFIED: Default State - STATE_INIT: A channel has just started the opening handshake. - STATE_TRYOPEN: A channel has acknowledged the handshake step on the counterparty chain. - STATE_OPEN: A channel has completed the handshake. Open channels are ready to send and receive packets. - STATE_CLOSED: A channel has been closed and can no longer be used to send or receive packets. - STATE_FLUSHING: A channel has just accepted the upgrade handshake attempt and is flushing in-flight packets. - STATE_FLUSHCOMPLETE: A channel has just completed flushing any in-flight packets.
    - `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
    - `counterparty` IbcCoreChannelV1Counterparty
      - `port_id` string — port on the counterparty chain which owns the other end of the channel.
      - `channel_id` string
    - `connection_hops` string[]
    - `version` string
    - `port_id` string
    - `channel_id` string
    - `upgrade_sequence` string, uint64
  - `pagination` CosmosBaseQueryV1beta1PageResponse — PageResponse is to be embedded in gRPC response messages where the corresponding request message has used PageRequest. message SomeResponse { repeated Bar results = 1; PageResponse page = 2; }
    - `next_key` string, byte — next_key is the key to be passed to PageRequest.key to query the next page most efficiently. It will be empty if there are no more results.
    - `total` string, uint64
  - `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_number` string, uint64
    - `revision_height` string, uint64

## Other responses

- `default` — An unexpected error response.

---

[API](https://skmtc.net/coreumfoundation/apis/title-goes-here.md) · [All operations](https://skmtc.net/coreumfoundation/apis/title-goes-here/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/coreumfoundation/title-goes-here/revisions/2a2e5bc4593a/schema)
