ワンクリックで
webex-cli-messaging
Webex Messaging commands: rooms, messages, teams, memberships, webhooks, and related resources.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Webex Messaging commands: rooms, messages, teams, memberships, webhooks, and related resources.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | webex-cli/messaging |
| description | Webex Messaging commands: rooms, messages, teams, memberships, webhooks, and related resources. |
Commands: webex messaging <resource> <action> [flags]
Alias: webex msg <resource> <action> [flags]
| Resource | Operations |
|---|---|
messages | list, list-direct, get, create, edit, delete |
rooms | list, get, get-meeting, create, update, delete |
memberships | list, get, create, update, delete |
teams | list, get, create, update, delete |
team-memberships | list, get, create, update, delete |
webhooks | list, get, create, update, delete |
people | list, get-person, get-my-own, create-person, update-person, delete-person |
attachment-actions | get, create |
room-tabs | list, get, create, update, delete |
events | list |
ecm-folder-linking | list, get, create, delete |
hds | (status/settings commands) |
webex messaging messages list --room-id <roomId> [flags]
Flags:
--room-id — target space ID (required for list)--max — max returned (≤100 when combined with --mentioned-people)--before — ISO 8601 timestamp; list messages sent before this time--before-message — list messages sent before this message ID--mentioned-people — filter by person ID; use me for current user. Bots must include this flag to list messages in group spaces.--parent-id — list threaded replies under a parent message--paginate — auto-fetch all pageswebex messaging messages list-direct --person-email <email>
webex messaging messages list-direct --person-id <personId>
webex messaging messages list-direct --person-email <email> --parent-id <msgId>
Use list-direct for 1:1 DM threads — no --room-id needed.
create takes --body (raw JSON) or --body-file <path>. No discrete content flags.
# To a space
webex messaging messages create --body '{"roomId":"<roomId>","text":"Hello!"}'
# 1:1 by person ID or email (creates/reuses the direct room)
webex messaging messages create --body '{"toPersonId":"<personId>","text":"Hello!"}'
webex messaging messages create --body '{"toPersonEmail":"user@example.com","markdown":"**Hello!**"}'
# Threaded reply
webex messaging messages create --body '{"roomId":"<roomId>","parentId":"<parentMsgId>","text":"Reply"}'
# File attachment (URL)
webex messaging messages create --body '{"roomId":"<roomId>","text":"See attached","files":["https://example.com/file.pdf"]}'
Message body fields:
| Field | Notes |
|---|---|
roomId | Target space — mutually exclusive with toPersonId/toPersonEmail |
toPersonId | Send 1:1 by person ID |
toPersonEmail | Send 1:1 by email |
text | Plain text |
markdown | Markdown (renders in clients; takes precedence over text) |
html | HTML subset |
files | Array of file URLs (max 1 currently) |
attachments | Array of Adaptive Card objects |
parentId | Thread reply — parent message ID |
webex messaging messages edit --message-id <id> --body '{"text":"Updated text"}'
webex messaging messages delete --message-id <id>
webex messaging messages get --message-id <id>
webex messaging rooms list [flags]
Flags:
--max — max results (1–1000)--type — direct (1:1) or group--last — shorthand duration, e.g. 24h, 7d — sets --from automatically--from / --to — filter by madePublic timestamp--team-id — rooms belonging to a specific team--sort-by — sort field; cannot combine with --org-public-spaces--org-public-spaces — list org's public spaces (joined and unjoined)webex messaging rooms list --type group --last 48h
webex messaging rooms list --type direct
webex messaging rooms list --team-id <teamId>
webex messaging rooms list --paginate
webex messaging rooms create --title "Project Alpha"
webex messaging rooms create --body '{"title":"Project Alpha","teamId":"<tid>","isLocked":true}'
# Body fields: title, teamId, classificationId, description, isLocked, isAnnouncementOnly, isPublic
webex messaging rooms update --room-id <id> --body '{"title":"New Name"}'
webex messaging rooms delete --room-id <id>
webex messaging rooms get-meeting --room-id <id> # SIP/PSTN join info
# List members of a space
webex messaging memberships list --room-id <roomId>
webex messaging memberships list --room-id <roomId> --person-email user@example.com
# Compliance officers: query all rooms for a person (no --room-id needed)
webex messaging memberships list --person-id <personId>
webex messaging memberships list --person-email user@example.com
# Add member
webex messaging memberships create --body '{"roomId":"<roomId>","personEmail":"user@example.com"}'
webex messaging memberships create --body '{"roomId":"<roomId>","personId":"<id>","isModerator":true}'
# Update / remove
webex messaging memberships update --membership-id <id> --body '{"isModerator":true}'
webex messaging memberships delete --membership-id <id>
webex messaging teams list [--max <n>]
webex messaging teams create --name "Engineering"
webex messaging teams create --body '{"name":"Engineering","description":"..."}'
webex messaging teams update --team-id <id> --body '{"name":"New Name"}'
webex messaging teams delete --team-id <id>
webex messaging team-memberships list --team-id <teamId>
webex messaging team-memberships create --body '{"teamId":"<id>","personEmail":"user@example.com"}'
webex messaging team-memberships create --body '{"teamId":"<id>","personId":"<id>","isModerator":true}'
webex messaging team-memberships update --team-membership-id <id> --body '{"isModerator":true}'
webex messaging team-memberships delete --team-membership-id <id>
webex messaging webhooks create \
--name "New Messages" \
--target-url "https://myapp.example.com/hook" \
--resource messages \
--event created \
--filter "roomId=<roomId>"
# With secret for HMAC signature validation
webex messaging webhooks create --body '{
"name":"New Messages","targetUrl":"https://myapp.example.com/hook",
"resource":"messages","event":"created","filter":"roomId=<id>","secret":"<s>"
}'
# Org-wide webhook
webex messaging webhooks create --owned-by org --name "Org" \
--target-url "https://..." --resource messages --event created
| Resource | Events |
|---|---|
messages | created, updated, deleted, seen |
memberships | created, updated, deleted |
rooms | created, updated, deleted |
teams | created, updated, deleted |
teamMemberships | created, updated, deleted |
attachmentActions | created |
videoMesh | (varies) |
Use all as the event to subscribe to all events for a resource.
Filter syntax: roomId=<id>, personEmail=<email>. Combine with &.
webex messaging webhooks list [--owned-by org]
webex messaging webhooks get --webhook-id <id>
webex messaging webhooks update --webhook-id <id> --body '{"targetUrl":"https://new"}'
webex messaging webhooks delete --webhook-id <id>
# People
webex messaging people list --email user@example.com
webex messaging people get-my-own
webex messaging people get-person --person-id <id>
# Adaptive Card actions (from card button clicks)
webex messaging attachment-actions get --attachment-action-id <id>
# Room tabs
webex messaging room-tabs list --room-id <roomId>
webex messaging room-tabs create --body '{"roomId":"<id>","displayName":"Wiki","contentUrl":"https://..."}'
# Compliance events
webex messaging events list --resource messages --type created
Bots in group spaces — bots get an empty result from messages list without --mentioned-people me. Always include this flag for bot tokens listing group space messages.
list vs list-direct — messages list requires --room-id (space messages). messages list-direct uses --person-email or --person-id (1:1 DM thread, no roomId needed).
Threading — to reply in a thread: include "parentId": "<messageId>" in the create body. To fetch replies: messages list --room-id <roomId> --parent-id <messageId>.
Rich text — use markdown for formatted messages. text is the plain-text fallback. Provide both when targeting mixed clients.
1:1 rooms — rooms list --type direct returns 1:1 spaces. The room title is the other person's display name. Send a message with toPersonEmail to start a new 1:1 — Webex creates the room automatically.
Compliance officer memberships — query all rooms a person belongs to org-wide via memberships list --person-email <email> (no --room-id). Requires compliance officer scope.
Auto-generated from Postman collections. Run
make codegento update.
| Command | Flags |
|---|---|
get | --id (required) |
create | --body, --body-file |
| Command | Flags |
|---|---|
list | --room-id |
get | --id (required) |
create-configuration | --room-id, --content-url, --display-name, --drive-id, --item-id, --default-folder, --body, --body-file |
update-linked | --id (required), --room-id, --content-url, --display-name, --drive-id, --item-id, --default-folder, --body, --body-file |
unlink-linked | --id (required) |
| Command | Flags |
|---|---|
list | --resource, --type, --actor-id, --from, --to, --max, --service-type, --last |
get | --event-id (required) |
| Command | Flags |
|---|---|
list | --room-id, --person-id, --person-email, --max |
get | --membership-id (required) |
create | --room-id, --person-id, --person-email, --is-moderator, --body, --body-file |
update | --membership-id (required), --is-moderator, --is-room-hidden, --body, --body-file |
delete | --membership-id (required) |
| Command | Flags |
|---|---|
list | --room-id, --parent-id, --mentioned-people, --before, --before-message, --max |
list-direct | --parent-id, --person-id, --person-email |
get | --message-id (required) |
create | --body, --body-file |
edit | --message-id (required), --room-id, --text, --markdown, --body, --body-file |
delete | --message-id (required) |
| Command | Flags |
|---|---|
list | --email, --display-name, --id, --org-id, --roles, --calling-data, --location-id, --max, --exclude-status |
get-person | --person-id (required), --calling-data |
get-my-own | --calling-data |
create-person | --calling-data, --min-response, --body, --body-file |
update-person | --person-id (required), --calling-data, --show-all-types, --min-response, --body, --body-file |
delete-person | --person-id (required) |
| Command | Flags |
|---|---|
list | --room-id |
get | --id (required) |
create | --room-id, --content-url, --display-name, --body, --body-file |
update | --id (required), --room-id, --content-url, --display-name, --body, --body-file |
delete | --id (required) |
| Command | Flags |
|---|---|
list | --team-id, --type, --org-public-spaces, --from, --to, --sort-by, --max, --last |
get | --room-id (required) |
get-meeting | --room-id (required) |
create | --title, --team-id, --classification-id, --is-locked, --is-public, --description, --is-announcement-only, --body, --body-file |
update | --room-id (required), --title, --classification-id, --team-id, --is-locked, --is-public, --description, --is-announcement-only, --is-read-only, --body, --body-file |
delete | --room-id (required) |
| Command | Flags |
|---|---|
list | --team-id, --max |
get | --membership-id (required) |
create | --team-id, --person-id, --person-email, --is-moderator, --body, --body-file |
update | --membership-id (required), --is-moderator, --body, --body-file |
delete | --membership-id (required) |
| Command | Flags |
|---|---|
list | --max |
get | --team-id (required), --description |
create | --name, --description, --body, --body-file |
update | --team-id (required), --name, --description, --body, --body-file |
delete | --team-id (required) |
| Command | Flags |
|---|---|
list | --max, --owned-by |
get | --webhook-id (required) |
create | --name, --target-url, --resource, --event, --filter, --secret, --owned-by, --body, --body-file |
update | --webhook-id (required), --name, --target-url, --secret, --owned-by, --status, --body, --body-file |
delete | --webhook-id (required) |
| Command | Flags |
|---|---|
get-test-results-node | --node-id (required), --trigger-type |
get-cluster | --cluster-id (required) |
get-org | --organization-id (required) |
get-node | --node-id (required) |
get-database-org | --organization-id (required) |
get-multi-tenant-org | --organization-id (required) |
get-availability-cluster | --cluster-id (required), --from, --to, --last |
get-database-org-2 | --organization-id (required) |
get-multi-tenant-org-2 | --organization-id (required) |
Webex CLI: query and manage Webex Admin, Calling, Contact Center, Devices, Meetings, and Messaging APIs via the `webex` command-line tool. Use for listing resources, checking configurations, debugging API calls, and administering Webex environments.
Webex Admin commands: people, organizations, licenses, roles, groups, reports, events, recordings, and SCIM 2.0 user/group management.
Webex Calling commands: locations, people, devices, call queues, hunt groups, auto attendants, recordings, and telephony configuration.
Webex Contact Center commands: sites, queues, entry points, flows, agents, audio files, and configuration resources.
Webex Device commands: devices, workspaces, device configurations, xAPI, workspace locations, and hot desking.
Webex Meetings commands: scheduling, recordings, transcripts, participants, invitees, preferences, and site settings.