POST/projects/{id}/clone.json

Copy a project

Creates a duplicate of an existing project. This endpoint allows you to specify a new name and description for the cloned project and choose which elements (tasks, milestones, files, etc.) should be carried over from the source project.

To clone a project you need the ability to create projects (userCanAddProjects) or be a site admin.

Note that cloning large projects with many elements may take some time to process. The response will be returned once the cloning process is complete.

Path Params

  • Name
    id
    Type
    string
    required
    Description

Body Params

    • Name
      cloneProjectName
      Type
      string
      Description
      The name for the new cloned project. If not provided the new project will have the same name as the original project with an incremental number suffix.
    • Name
      cloneProjectAction
      Type
      string
      Description
      The action to perform when cloning a project. Default: `COPY`
    • Name
      description
      Type
      string
      Description
      Description of the new project. When not provided it will use the description of the original project.
    • Name
      companyId
      Type
      integer
      Description
      Company/Client ID that the new project will be related to. By default it will use the same company/client as the original project.
    • Name
      copyFiles
      Type
      boolean
      Description
      The files from the original project will be copied to the new project.
    • Name
      copyMessages
      Type
      boolean
      Description
      The messages from the original project will be copied to the new project.
    • Name
      copyMilestones
      Type
      boolean
      Description
      The milestones from the original project will be copied to the new project.
    • Name
      copyTasks
      Type
      boolean
      Description
      The tasks from the original project will be copied to the new project.
    • Name
      copyTasklists
      Type
      boolean
      Description
      The task lists from the original project will be copied to the new project.
    • Name
      copyNotebooks
      Type
      boolean
      Description
      The notebooks from the original project will be copied to the new project.
    • Name
      copyLinks
      Type
      boolean
      Description
      The links from the original project will be copied to the new project.
    • Name
      copyComments
      Type
      boolean
      Description
      The comments from the original project will be copied to the new project.
    • Name
      copyFollowers
      Type
      boolean
      Description
      The followers from the original project will be copied to the new project.
    • Name
      copyInvoices
      Type
      boolean
      Description
      The invoices from the original project will be copied to the new project.
    • Name
      copyTimelogs
      Type
      boolean
      Description
      The time logs from the original project will be copied to the new project.
    • Name
      copyExpenses
      Type
      boolean
      Description
      The expenses from the original project will be copied to the new project.
    • Name
      copyWebhooks
      Type
      boolean
      Description
      The webhooks from the original project will be copied to the new project.
    • Name
      copyProjectRoles
      Type
      boolean
      Description
      The project roles from the original project will be copied to the new project.
    • Name
      copyCustomFields
      Type
      boolean
      Description
      The custom fields from the original project will be copied to the new project.
    • Name
      copyCustomItems
      Type
      boolean
      Description
      The custom items from the original project will be copied to the new project.
    • Name
      copyProjectUpdates
      Type
      boolean
      Description
      The project updates from the original project will be copied to the new project.
    • Name
      copyRisks
      Type
      boolean
      Description
      The risks from the original project will be copied to the new project.
    • Name
      copyForms
      Type
      boolean
      Description
      The forms from the original project will be copied to the new project.
    • Name
      copyAutomations
      Type
      boolean
      Description
      The automations from the original project will be copied to the new project.
    • Name
      copyPeople
      Type
      boolean
      Description
      The people from the original project will be copied to the new project.
    • Name
      copyProjectPrivacy
      Type
      boolean
      Description
      The project privacy settings from the original project will be copied to the new project.
    • Name
      copyBudgets
      Type
      boolean
      Description
      The budgets from the original project will be copied to the new project.
    • Name
      copyAllocations
      Type
      boolean
      Description
      The allocations from the original project will be copied to the new project.
    • Name
      copyLogo
      Type
      boolean
      Description
      The logo from the original project will be copied to the new project.
    • Name
      copyProjectPrefs
      Type
      boolean
      Description
      The project preferences from the original project will be copied to the new project.
    • Name
      newFromTemplate
      Type
      boolean
      Description
      Whether the project should be created from a template. If true, the daysOffset parameter can be used to set the start and end dates of the new project based on the date provided in the date parameter.
    • Name
      toTemplate
      Type
      boolean
      Description
      Whether the new project should be converted to a template.
    • Name
      templateDateTarget
      Type
      string
      Description
      Specifies whether targetDate represents the project's start or end date. Accepted values: 'start' (default) or 'end'. When 'end', the start date is calculated by subtracting the template project's duration from targetDate. Only applicable when newFromTemplate=true. Default: `start`
    • Name
      targetDate
      Type
      string
      Description
      The desired start or end date for the cloned project (determined by templateDateTarget). Used only when creating a project from a template (newFromTemplate=true). Accepted format: YYYYMMDD. Defaults to the current user date if omitted.
    • Name
      daysOffset
      Type
      integer
      Description
      The number of days to shift all scheduled dates in the cloned project relative to the base date. When cloning from a template, it defines the project duration span. When copying an existing project, it shifts the original start and end dates by this many days. If omitted, calculated automatically from the source project's date range.

    Responses

    • Code
      200
      Type
      object
      Schema
      Description
      Project Cloned Successfully

    Examples

    Project cloned successfully

    application/json
    {
      "projectId": 835298
    }