nodes:sharing:set-bulk

Apply one sharing policy to up to 1000 nodes, all or nothing.

Reference for flywheel nodes:sharing:set-bulk.

Command Group

Nodes & Graph Commands

Summary

Apply one sharing policy to up to 1000 nodes, all or nothing.

Effect

DESTRUCTIVE: deletes, overwrites or revokes something

Usage

flywheel nodes:sharing:set-bulk <FLAGS>

Required flags

FlagValueDefaultChoicesDescription
--node_idsstringNode UUIDs from node_id in hosted:node:list or graph:get. Missing or hidden: 404 on reads, exports and merges; bulk writes skip and list them. Comma-separated; at most 1000 distinct, and repeated IDs count once. Owner or admin only; nodes you may not change are skipped with reasons. An error answer means no node changed. If no answer arrives, read sharing back with nodes:sharing:get. Omitted collaborators keep every collaborator and repository role. To share a whole graph of any size, use nodes:sharing:set-graph with any node of that graph.
--sharing_modestringOne of private|public|unlisted.

Optional flags

FlagValueDefaultChoicesDescription
--collaboratorsjsonComplete replacement list of {"email":"person@example.com","role":"viewer|editor|admin"} as JSON or @file.json; role defaults to viewer. Omit to keep collaborators and repository roles; [] removes everyone except owners.
--peoplejsonChange only named people, keeping everyone else: JSON {"add":[{"email":"person@example.com","write":true}],"remove":["email@example.com",{"user_id":"account-id"}],"set":[{"email":"person@example.com","write":false,"admin":false}]} or @file.json. Add only raises roles; set assigns an exact role, including lowering. Roles are the write and admin flags; a key not shown here, such as role, is refused before anything is sent. Name each account in only one list. Cannot combine with --collaborators. Graph removals/set above 1000 nodes are refused with 422 before any write.
--formatFORMATjson, tsv, csv, tableOutput format for command results.
--envPROFILESelect a CLI profile; unconfigured default requires FLYWHEEL_BASE_URL.
--outPATHWrite output to a file path, or use - for stdout.
--openOpen browser-bound URLs when supported.
--no-retryDisable transient-error retries.
--retry-maxNMaximum transient-error retry attempts.
--waitBlock on async operations until a terminal state is reached.
--wait-timeoutSECONDS600Seconds to wait for --wait before timing out. Defaults to 600.
--allow-selfAllow mutating the currently active credential.
--timeoutSECONDSSet the per-request timeout budget in seconds.
--idempotency-keyKEYReuse an Idempotency-Key so ambiguous write failures can be retried with the same key.
--forceForce safety-gated operations where supported.
--yesConfirm forced compute:release-all --force. Other runtime commands do not read --yes.
--debugPrint structured request debugging with secrets masked.
--verbosePrint verbose progress for long-running operations.
-h, --helpShow this help.

Examples

Make two nodes unlisted.

flywheel nodes:sharing:set-bulk --node_ids n1,n2 --sharing_mode unlisted

Output

Default format: json.

FieldType
applied_countinteger
skipped_non_ownedarray<string>
skipped (optional)array<object> | null