Create a channel
create_channelCreate a channel of an app: a named stream of releases a device follows, such as "staging", "beta" or a preview channel per pull request. Use this to separate audiences. isProtected reserves releases, pause, resume and deletion for Owners and Admins, the setting for production; isDiscoverable lets a device switch to the channel by name; expiresAt ends a preview channel on its own; the failure* fields set the auto-pause policy, null keeping the default. The name takes letters, digits, - and _, up to 64 characters, unique per app, and counts against channelCountPerAppLimit. Returns the created channel; pass its id to create_release. Do not use this to publish an update (use create_release) or to pause an existing channel (use pause_channel).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"appId": "<appId>",
"name": "<name>"
},
"name": "create_channel"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The name of the channel, e.g. "staging". | |
| appId | Yes | The id of the app, e.g. "a1b2c3d4-0000-4000-8000-000000000000". Use `list_apps` to look it up by name. | |
| expiresAt | No | When the channel stops serving releases, ISO 8601 in UTC, e.g. "2026-12-31T00:00:00Z" for a preview channel; null never expires. Optional. | |
| isProtected | No | Whether releases, pause, resume and deletion take an Owner or Admin, e.g. true for production. Optional. | |
| failureAction | No | What auto-pause does when a release fails above the threshold: "pause" stops offering it and devices on it keep it, "revoke" also moves them back, "notify" only notifies, "none" evaluates the rule but acts on nothing; null keeps the default. Optional. | |
| isDiscoverable | No | Whether a device may switch to the channel by name at runtime, e.g. true for a beta channel testers opt into. Optional. | |
| failureThresholdPercent | No | The share of applied updates that may fail before auto-pause acts, e.g. 5; null keeps the default. Optional. | |
| failureMinimumUpdateCount | No | The applied updates a release needs before the threshold is judged, e.g. 50; null keeps the default. Optional. |