# List channels

Retrieves a paginated list of channels for the specified account. This endpoint requires an account-level API key.

Endpoint: POST /channels/list
Version: 2.0.0
Security: bearerAuth

## Request fields (application/json):

  - `pagination` (object)
    Pagination details.

  - `pagination.page_size` (integer, required)
    Number of items returned in this response.
    Example: 20

  - `pagination.next_page_token` (string)
    Token to retrieve the next page of results. It is empty on the last page.
    Example: "eyJMYXN0SUQiOiIxYTYyYjQ0Ni01ZDM0LTRiYTQtOGRlZS02NTM5NTU0NjY2MTQifQ=="

## Response 200 fields (application/json):

  - `items` (array)
    List of channels for the current page.

  - `items.id` (string, required)
    Unique channel identifier.
    Example: "chn_01KTBNAWDRCQG7ZE1FKV6M3DAM"

  - `items.name` (string, required)
    Channel name.
    Example: "Production Channel"

  - `items.description` (string)
    Channel description.
    Example: "Main production payment channel"

  - `items.status` (string, required)
    Channel status.
    Enum: "ACTIVE", "INACTIVE"

  - `items.environment` (string, required)
    Channel environment.
    Enum: "MERCHANT_SANDBOX", "MERCHANT_LIVE"

  - `items.created_at` (string, required)
    Date and time when the channel was created.
    Example: "2024-01-01T10:00:00.000000Z"

  - `items.updated_at` (string, required)
    Date and time when the channel was updated.
    Example: "2024-01-02T15:00:00.000000Z"

  - `pagination` (object)
    Pagination details.

  - `pagination.page_size` (integer, required)
    Number of items returned in this response.
    Example: 20

  - `pagination.next_page_token` (string)
    Token to retrieve the next page of results. It is empty on the last page.
    Example: "eyJMYXN0SUQiOiIxYTYyYjQ0Ni01ZDM0LTRiYTQtOGRlZS02NTM5NTU0NjY2MTQifQ=="

## Response 400 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
    Enum: "VALIDATION"

  - `message` (string, required)
    Message describing the error.
    Example: "One or more fields failed validation due to constraints"

  - `context` (object, required)
    Additional context about the validation error, including specific constraints.
    Example: {"constraints":{"email":{"type":"TYPE","message":"The 'email' field must be a valid email address"},"age":{"type":"MIN","message":"The 'age' field must be a number greater than or equal to 18"}}}

  - `context.constraints` (object, required)
    Failed constraints keyed by the field name.
    Example: {"email":{"type":"TYPE","message":"The 'email' field must be a valid email address"},"age":{"type":"MIN","message":"The 'age' field must be a number greater than or equal to 18"}}

## Response 401 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
    Enum: "UNAUTHENTICATED"

  - `message` (string, required)
    Message describing the error.
    Example: "Credentials are invalid or missing"

## Response 403 fields (application/json):

  - `code` (string, required)
    Code identifying the error type.
    Enum: "PERMISSION_DENIED"

  - `message` (string, required)
    Message describing the error.
    Example: "Permission denied"


