---
title: "PATCH /v1/admin/channels/{id}"
method: PATCH
path: "/v1/admin/channels/{id}"
tags: ["ChannelAdminService"]
---

# PATCH /v1/admin/channels/{id}

`PATCH /v1/admin/channels/{id}`

## Path parameters

- `id` string, required

## Request body

- ChannelV1UpdateChannelRequest — UpdateChannelRequest PATCH 语义：仅传需要更新的字段；未传字段保持不变。
  - `apiKey` string
  - `autoDisableJson` string
  - `baseUrl` string
  - `costRatio` string — 成本倍率 PATCH 三态：不传=不变；""=清空为未配置（落 NULL）；非空 decimal=覆盖。 非法值返回 400，reason=CHANNEL_COST_RATIO_INVALID。
  - `extraConfigJson` string
  - `hasApiKey` boolean — api_key：has_api_key=true 且 api_key 非空 → 旋转密钥；空字符串视为不变（避免误清空）。
  - `headerOverrideJson` string — 覆盖三件套 PATCH 三态： - 不传 = 不改； - "" / "{}" = 清空该配置； - 非空 JSON = 覆盖。 param/header 均不允许 stream 键（写入前 biz 侧拒 400）。
  - `headerStripJson` string — header_strip PATCH 三态 (对齐 header_override_json 的 optional string 语义): - 不传 = 不改 - "" / "[]" = 清空 - '["X-Foo", "X-Bar"]' JSON 数组 = 覆盖 后端解析 JSON 到 []string; biz 校验 blocklist / 数量上限。
  - `id` string
  - `modelMappingJson` string
  - `name` string
  - `paramOverrideJson` string
  - `passthroughBody` boolean
  - `priority` integer
  - `region` string
  - `remark` string
  - `retryJson` string
  - `status` integer
  - `timeoutMs` integer

## Response `200`

OK

- ChannelV1UpdateChannelReply
  - `channel` ChannelV1ChannelInfo — ChannelInfo 渠道展示模型；api_key 永远只回显 mask（"sk-****abcd"）。
    - `apiKeyMask` string
    - `autoDisableJson` string
    - `baseUrl` string
    - `costRatio` string — 渠道成本倍率 decimal 字符串（如 "0.8500"）；空串=未配置（快照 NULL）。仅审计不计费。
    - `createdAt` string, date-time
    - `extraConfigJson` string
    - `headerOverrideJson` string — header_override_json 请求头覆盖：{key: string | true} JSON；空/"{}" 表示未配置。 网关发往上游前 Set 到 HTTP header；支持 {api_key} / {client_header:Name} 模板变量 与 "*": true / "re:pat": true 通配 passthrough；不允许覆盖 stream 键。
    - `headerStripJson` string — header_strip_json 请求头剔除列表 JSON: '["X-Foo", "X-Bar"]'; 空/"[]"/"null" = 未配置。 与 header_override 独立字段, Phase 3 应用 (在 override 之后, 保证剔除优先级最高)。 大小写不敏感, 写侧 blocklist 拒绝 Content-Type / Host / Authorization 等协议关键头。
    - `id` string
    - `modelMappingJson` string
    - `name` string
    - `paramOverrideJson` string — param_override_json 请求参数覆盖：{key: any} JSON；空/"{}" 表示未配置。 网关发往上游前用 sjson 覆写请求体 JSON；不允许覆盖 stream 键。
    - `passthroughBody` boolean — passthrough_body true 时，网关直接把用户请求体透传给上游，不做任何 reshape。
    - `priority` integer
    - `region` string
    - `remark` string
    - `retryJson` string
    - `status` integer
    - `timeoutMs` integer
    - `type` string
    - `updatedAt` string, date-time
    - `vendorId` string

---

[API](https://skmtc.dev/apiqik/apis/apiqik-api.md) · [All operations](https://skmtc.dev/apiqik/apis/apiqik-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/apiqik/apiqik-api/revisions/e06b96127408/schema)
