# Copy sheet

Creates a copy of the specified sheet.

By default, the copy includes only the sheet structure. To copy rows and formatting, set the include query parameter to data. To copy attachments or discussions, include data in the same include list.

Endpoint: POST /sheets/{sheetId}/copy
Version: 2.0.0
Security: APIToken, OAuth2

## Path parameters:

  - `sheetId` (number, required)
    ID of the sheet being accessed.

## Header parameters:

  - `Authorization` (string)
    API Access Token used to authenticate requests to Smartsheet APIs.

  - `smartsheet-integration-source` (string)
    Uses the following metadata to distinguish between human-initiated API requests and third-party service-initiated calls by AI Connectors or ITSM:

- Integration source type
- Organization name
- Integration source name 

Format:


TYPE,OrgName,SourceName


Examples: 

AI,SampleOrg,My-AI-Connector-v2

SCRIPT,SampleOrg2,Accounting-updater-script

APPLICATION,SampleOrg3,SheetUpdater
    Example: "AI,SampleOrg,My-AI-Connector-v2"

  - `Content-Type` (string)
    Required for POST and PUT requests. Defines the structure for the request body.

## Query parameters:

  - `include` (string)
    A comma-separated list of elements to copy. If you omit "data", the copy contains only the sheet structure (columns). To copy rows and formatting, include "data".

- "attachments" 
- "cellLinks" - includes cross-sheet references
- "data" - includes formatting
- "discussions" - includes comments
- "filters" 
- "forms" 
- "ruleRecipients" -- includes notification recipients, must also include rules when using this attribute
- "rules" -- includes notifications and workflow rules
- "shares" 

>Important: To copy "attachments" or "discussions", you must also include "data". Without "data", these elements aren't copied.

>Important: This operation doesn't copy cell history.
    Enum: "attachments", "cellLinks", "data", "discussions", "filters", "forms", "ruleRecipients", "rules", "shares"

  - `exclude` (string)
    When specified with a value of sheetHyperlinks, excludes this category from the response
    Enum: "sheetHyperlinks"

## Request fields (application/json):

  - `destinationId` (number, required)
    The ID of the destination container.

  - `destinationType` (string,null)
    Type of destination container.

The "home" enum has been Deprecated since March 25th 2025, and will be Sunset on or after November 15th 2026.
    Enum: "folder", "home", "workspace"

  - `newName` (string)
    Name of the newly created object (when copying a dashboard, folder, or sheet).

## Response 200 fields (application/json):

  - `version` (number,null)
    New version of the sheet. Applicable only for operations which update sheet data.

  - `failedItems` (array,null)
    Array of BulkItemFailure objects which represents the items that failed to be added or updated. See [Bulk operations > Partial success](/api/smartsheet/guides/advanced-topics/scalability-options) for more information. Applicable only for bulk operations that support partial success.

  - `failedItems.rowId` (number,null)
    The ID of the row that failed. Applicable only to bulk row operations.

  - `failedItems.error` (object)
    The error caused by the failed item.

  - `failedItems.error.refId` (string)
    The ID of the specific error occurrence. Please include this information when contacting Smartsheet support.

  - `failedItems.error.errorCode` (number)
    Custom error code from Smartsheet. See the complete [Error Code List](/api/smartsheet/error-codes).

  - `failedItems.error.message` (string)
    Descriptive error message.

  - `failedItems.index` (number)
    The index of the failed item in the bulk request array.

  - `message` (string)
    Message that indicates the outcome of the request. (One of SUCCESS or PARTIAL_SUCCESS.)
    Enum: "PARTIAL_SUCCESS", "SUCCESS"

  - `resultCode` (number)
    * '0' Success
* '3' Partial Success of Bulk Operation
    Enum: 0, 3

  - `result` (object)

  - `result.id` (number)
    Sheet ID.

  - `result.accessLevel` (string)
    Enum: "ADMIN", "COMMENTER", "EDITOR", "EDITOR_SHARE", "OWNER", "VIEWER"

  - `result.name` (string)
    Sheet name.

  - `result.permalink` (string)
    URL that represents a direct link to the sheet in Smartsheet.


