Files
lark-wiki/references/lark-wiki-node-copy.md

2.3 KiB

lark-wiki +node-copy

Copy one Wiki node, including that node's content, to a target space or under a target parent node. Descendant nodes are not copied.

⚠️ High-risk write — the upstream API is flagged danger: true, so this shortcut requires explicit --yes confirmation before issuing the request. Forgetting --yes returns a confirmation_required error and the copy is not performed.

Usage

lark-cli wiki +node-copy \
  --space-id <source_space_id> \
  --node-token <source_node_token> \
  (--target-space-id <target_space_id> | --target-parent-node-token <token>) \
  [--title <new_title>] \
  --yes \
  [--as user|bot]

Flags

Flag Required Description
--space-id Yes Source wiki space ID
--node-token Yes Source node token to copy
--target-space-id Conditional Target space ID. Required if --target-parent-node-token is not set
--target-parent-node-token Conditional Target parent node token. Required if --target-space-id is not set
--title No New title for the copied node. Omit to keep the original title
--yes Yes Confirm the high-risk operation. Without this flag the shortcut refuses to send the API request
--format No Output format: json (default) / pretty / table / csv / ndjson
--as No Identity user/bot (default auto); wiki is user-centric → pass --as user

At least one of --target-space-id or --target-parent-node-token must be provided.

Output

{
  "space_id": "target_space_id",
  "node_token": "wikcn_EXAMPLE_TOKEN",
  "obj_token": "doccn_EXAMPLE_TOKEN",
  "obj_type": "docx",
  "node_type": "origin",
  "title": "Getting Started (Copy)",
  "parent_node_token": "",
  "has_child": false
}

Notes

  • Copying is non-recursive: only the requested node and its content are copied.
  • Descendant nodes must be copied separately.
  • When the Wiki service returns 131009 lock contention, the CLI retries twice with bounded exponential backoff. If contention remains, wait before retrying again and avoid concurrent writes under the same target parent.
  • To move an existing Wiki node without keeping the source, use wiki +move instead of copy-then-delete.

Required Scope

wiki:node:copy