Skip to main content
Channels

List channels

List external IM channels with filters and cursor pagination.

GET /api/v1/forward/channels Returns Channel records owned by the authenticated account.

Headers

HeaderRequiredDescription
AuthorizationYesBearer <PAT or SAT>

Query parameters

ParameterTypeRequiredDefaultDescription
channel_typestringNo-Filter by wechat, wecom, feishu, or dingtalk.
enabledbooleanNo-Filter by manual enable state.
binding_statusstringNo-Filter by unbound, bound, or expired.
identity_idstringNo-Filter by Forward Identity ID.
template_idstringNo-Filter by Forward Template ID.
limitintegerNo20Items per page. Maximum 100.
after_idstringNo-Cursor for records after the given Channel ID.
before_idstringNo-Cursor for records before the given Channel ID.

Example request

curl -s -X GET 'https://api.qoder.com/api/v1/forward/channels?identity_id=idn_019eabc123&limit=20' \
  -H "Authorization: Bearer $QODER_ACCESS_TOKEN"

Example response

HTTP 200 OK
{
  "data": [
    {
      "id": "channel_019eabc123",
      "type": "channel",
      "identity_id": "idn_019eabc123",
      "identity_resolution": {
        "mode": "fixed"
      },
      "template_id": "tmpl_support",
      "channel_type": "feishu",
      "name": "Support Feishu channel",
      "enabled": true,
      "binding_status": "bound",
      "channel_config": {
        "response_options": {
          "include_tool_calls": false,
          "include_thinking": false
        }
      },
      "created_at": "2026-06-18T10:00:00Z",
      "updated_at": "2026-06-18T10:00:00Z"
    }
  ],
  "first_id": "channel_019eabc123",
  "last_id": "channel_019eabc123",
  "has_more": false
}

Response fields

FieldTypeDescription
dataarrayChannel objects on the current page.
first_idstring|nullID of the first Channel on this page.
last_idstring|nullID of the last Channel on this page.
has_morebooleanWhether more records remain.

Error codes

HTTPTypeTrigger
400invalid_request_errorPagination parameters are invalid.
400invalid_request_errorChannel type filter is unsupported.
401authentication_errorPAT or SAT is invalid or expired.

Notes

  • after_id and before_id are mutually exclusive.
  • Channels are returned only inside the caller's account boundary.
  • Each Channel object includes identity_resolution.mode. In pairing mode, identity_id and template_id are both null.