Channels commands
Reference for the `revenexx channels` commands — every subcommand with a runnable example.
Auto-generated. This page is generated from the revenexx CLI by
tools/sync-cli-reference.mjs. Don't edit it by hand — your changes will be overwritten.
Every revenexx channels subcommand. The example shows the required arguments; the options table lists every flag the command accepts, with a ✓ marking required flags. Some flag names carry a -_ (e.g. --attribute-_values) — that is the exact token the CLI accepts, so copy them verbatim. Run revenexx channels <command> --help for the live options.
context
Bash
revenexx channels context
| Flag | Required | Description |
|---|---|---|
--channel <channel> | Channel code to resolve. Overrides the scope_context.channel claim and the default channel, and is the only way to name a channel explicitly through the gateway. |
create
Bash
revenexx channels create \
--code shop \
--name Shop
| Flag | Required | Description |
|---|---|---|
--code <code> | — | |
--name <name> | Display name. | |
--is-default [value] | Mark as the default channel (default false). At most one channel carries it — setting it demotes the previous holder. | |
--labels <labels> | Localized display names. A locale map keyed by language tag: {"en": …, "de": …}. Read the requested tag and fall back to the plain column beside it. | |
--position <position> | Sort position (default 0). | |
--status <status> | Lifecycle status (default 'active'). Whether the channel is in service. What 'inactive' DOES is the tenant's inactive_channel_behavior setting: on 'serve' it is a label and the channel still resolves, on 'block' /channels/context answers resolved:false with reason 'channel_inactive'. Served as the 'channels.statuses' vocabulary. | |
--type <type> | Which channel type this is. One of the codes the tenant keeps under GET /channels/types — served with labels as the 'channels.types' vocabulary. Deliberately NOT an enum: the set is the tenant's own rows, not a CHECK constraint this repo could quote. A fresh install starts with storefront, punchout, marketplace, api, pos, which is why 'storefront' is the example here, but a merchant may rename or retire any of them and add their own (a feed or a print channel), so read the list rather than assuming it. Omitted on create it falls back to the type the tenant flagged as their default, never to a hardcoded value; a code the tenant does not keep is a 400 that names the ones they do. | |
--unassigned-visibility <unassigned-visibility> | — |
defaults
Bash
revenexx channels defaults
delete
Bash
revenexx channels delete \
--id ''
| Flag | Required | Description |
|---|---|---|
--id <id> | The channel, by id. This is the uuid, not the \ |
get
Bash
revenexx channels get \
--id ''
| Flag | Required | Description |
|---|---|---|
--id <id> | The channel, by id. This is the uuid, not the \ |
list
Bash
revenexx channels list
| Flag | Required | Description |
|---|---|---|
--id <id> | Filter to one channel by row id. The same row GET /channels/{id} answers, but inside the list envelope — so a caller gets \ | |
--code <code> | Filter to one channel by its scope slug. Unique per tenant, so this selects at most one row — the way to turn a scope slug held by another app into the channel it names. | |
--name <name> | Filter by display name. Whole-string, case-sensitive equality — there is no contains or prefix form; \ | |
--labels <labels> | Filter by the localized-names map, as an exact jsonb document: the value must be a whole JSON object and it must match the stored map completely, not merely overlap it. Key order and whitespace do not matter (the column is jsonb, which normalizes both); a missing or extra language tag does. A value that is not valid JSON is refused with 400 \ | |
--type <type> | Filter to one channel type, by code. One of the codes the tenant keeps under GET /channels/types — served with labels as the 'channels.types' vocabulary. Deliberately NOT an enum: the set is the tenant's own rows, not a CHECK constraint this repo could quote. A fresh install starts with storefront, punchout, marketplace, api, pos, which is why 'storefront' is the example here, but a merchant may rename or retire any of them and add their own (a feed or a print channel), so read the list rather than assuming it. | |
--status <status> | Filter by lifecycle status. A value outside the CHECK constraint is not an error — it simply matches nothing and comes back as a 200 with an empty page. | |
--unassigned-visibility <unassigned-visibility> | Filter by the per-channel visibility override — how a punchout channel that closed its assortment is found. \ | |
--is-default [value] | Filter to the default channel — the one a request naming no channel falls back to. More than one row coming back is a misconfiguration; /channels/context reports the same condition as default_ambiguous. | |
--position <position> | Filter by exact sort position. An equality, not a range: there is no \ | |
--created-at <created-at> | Filter by exact insert instant — equality to the microsecond, not a range, so this is for reproducing a known row rather than for windowing. Use \ | |
--updated-at <updated-at> | Filter by exact last-write instant. Equality to the microsecond, like \ | |
--limit <limit> | Page size (default 50, max 200). | |
--offset <offset> | Row offset for pagination (default 0). | |
--order <order> | Sort by one column: 'column' | 'column.asc' | 'column.desc'. A bare column sorts ascending. Anything else — or a column this entity does not have — is refused with 400. | |
--filter <column=value> | Filter rows by column equality (repeatable). |
types-create
Bash
revenexx channels types-create \
--code feed \
--title Product feed
| Flag | Required | Description |
|---|---|---|
--code <code> | What \ | |
--title <title> | The fallback name. \ | |
--description <description> | One sentence on what kind of place this type of channel is, for the merchant choosing between them. Plain text, in the tenant's primary language; \ | |
--descriptions <descriptions> | A locale map keyed by language tag: {"en": …, "de": …}. Read the requested tag and fall back to the plain column beside it. | |
--is-default [value] | Promote this type; the previous default is demoted. The default is the type a channel created without one gets. | |
--labels <labels> | A locale map keyed by language tag: {"en": …, "de": …}. Read the requested tag and fall back to the plain column beside it. | |
--position <position> | Sort position (default 0). GET /channels/types answers in this order; ties fall back to the code. | |
--tone <tone> | Badge colour (default 'neutral'). A value outside the palette is ignored rather than refused. |
types-delete
Bash
revenexx channels types-delete \
--id ''
| Flag | Required | Description |
|---|---|---|
--id <id> | The channel type, by id. This is the uuid, not the type \ |
types-get
Bash
revenexx channels types-get \
--id ''
| Flag | Required | Description |
|---|---|---|
--id <id> | The channel type, by id. This is the uuid, not the type \ |
types-list
Bash
revenexx channels types-list
| Flag | Required | Description |
|---|---|---|
--limit <limit> | Page size (default 50, max 200). | |
--offset <offset> | Row offset for pagination (default 0). | |
--filter <column=value> | Filter rows by column equality (repeatable). |
types-update
Bash
revenexx channels types-update \
--id ''
| Flag | Required | Description |
|---|---|---|
--id <id> | The channel type, by id. This is the uuid, not the type \ | |
--description <description> | Replace the one-sentence description. Sent as null it is cleared; omitted it is kept. \ | |
--descriptions <descriptions> | A locale map keyed by language tag: {"en": …, "de": …}. Read the requested tag and fall back to the plain column beside it. | |
--is-default [value] | Promote this type; the previous default is demoted. Only \ | |
--labels <labels> | A locale map keyed by language tag: {"en": …, "de": …}. Read the requested tag and fall back to the plain column beside it. | |
--position <position> | Move the type in the order GET /channels/types answers in. | |
--title <title> | Rename the type. A blank or non-string title is ignored, not refused — the stored one is kept. | |
--tone <tone> | Change the badge colour. A value outside the palette is ignored rather than refused, and the stored tone is kept. |
update
Bash
revenexx channels update \
--id ''
| Flag | Required | Description |
|---|---|---|
--id <id> | The channel, by id. This is the uuid, not the \ | |
--code <code> | — | |
--is-default [value] | Mark as the default channel (default false). At most one channel carries it — setting it demotes the previous holder. | |
--labels <labels> | Localized display names. A locale map keyed by language tag: {"en": …, "de": …}. Read the requested tag and fall back to the plain column beside it. | |
--name <name> | Display name. | |
--position <position> | Sort position (default 0). | |
--status <status> | Lifecycle status (default 'active'). Whether the channel is in service. What 'inactive' DOES is the tenant's inactive_channel_behavior setting: on 'serve' it is a label and the channel still resolves, on 'block' /channels/context answers resolved:false with reason 'channel_inactive'. Served as the 'channels.statuses' vocabulary. | |
--type <type> | Which channel type this is. One of the codes the tenant keeps under GET /channels/types — served with labels as the 'channels.types' vocabulary. Deliberately NOT an enum: the set is the tenant's own rows, not a CHECK constraint this repo could quote. A fresh install starts with storefront, punchout, marketplace, api, pos, which is why 'storefront' is the example here, but a merchant may rename or retire any of them and add their own (a feed or a print channel), so read the list rather than assuming it. Omitted on create it falls back to the type the tenant flagged as their default, never to a hardcoded value; a code the tenant does not keep is a 400 that names the ones they do. | |
--unassigned-visibility <unassigned-visibility> | — |
visibility
Bash
revenexx channels visibility \
--items one two three
| Flag | Required | Description |
|---|---|---|
--items [items...] | — | |
--channel <channel> | Channel code to evaluate against, for a caller that would rather not touch the payload. The body field wins if both are sent; everything else about it is identical. | |
--channel-body <channel-body> | The channel \ |
vocabularies-get
Bash
revenexx channels vocabularies-get \
--name statuses
| Flag | Required | Description |
|---|---|---|
--name <name> | The vocabulary name — the part after the dot in the qualified id. |
vocabularies-list
Bash
revenexx channels vocabularies-list
| Flag | Required | Description |
|---|---|---|
--filter <column=value> | Filter rows by column equality (repeatable). |