Copy a connected service into another of the member's workspaces
connections_copy_connectionCopy one connected service (Cloudflare, GitHub, AWS, ...) from one of the member's workspaces into another, so the receiving workspace uses the same account without a new sign-in. The copy SHARES the source's credential - nothing secret is duplicated, read into this conversation or returned. Allowed only while the member's cross-workspace access is ON (connections_cross_workspace_access) and BOTH workspaces are solely theirs; otherwise the reply is cross_workspace_refused with a reason and the settings link - say that, do not retry, and hand them the copy_url from connections_explore_connectors instead. Name the source EXACTLY ONE way: connectionId (the source row's id, from GET /v1/connected-services in the source workspace), or service (the connector slug, e.g. "ssh") + instance (that connection's instance name) - naming both forms together returns conflicting_source, and naming neither returns missing_source. fromProject defaults to whichever of the member's own workspaces holds that connection, the one this assistant is bound to included; pass it when service + instance matches in more than one workspace (the reply is ambiguous_source, listing each candidate's project_id) or to search only one. A not_found names the workspace searched - pass fromProject, or switch to service + instance, rather than guessing. Pass overwrite with a connection id in the TARGET workspace to replace a dead or duplicate connection in one act: the copy lands first, the old row is disconnected, and the copy takes its name. Returns {connectionId, projectId, instanceName, sharesCredential}.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| service | No | With `instance`, instead of connectionId: the connector slug of the connection to copy (e.g. "ssh"). | |
| instance | No | With `service`, instead of connectionId: that connection's instance name in the source workspace. | |
| overwrite | No | Optional: a connection id IN THE RECEIVING WORKSPACE to replace; the copy takes its name. | |
| toProject | Yes | The receiving workspace's project id, ref or company id. | |
| fromProject | No | The source workspace's project id, ref or company id. Omit to use whichever of the member's own workspaces holds the connection. | |
| connectionId | No | The SOURCE connection's id (a UUID from /v1/connected-services). Or omit it and pass service + instance instead - exactly one of the two forms. |