{"command":{"effect":"write","timeoutSeconds":30,"inputSchema":{"type":"object","description":"<b>Required scope: </b><code>projects:write</code>\n\nCreates and returns a job that will asynchronously handle the duplication.","properties":{"path":{"type":"object","properties":{"project_gid":{"type":"string","examples":["1331"],"description":"Globally unique identifier for the project."}},"required":["project_gid"],"additionalProperties":false},"query":{"type":"object","properties":{"opt_pretty":{"type":"boolean","examples":[true],"description":"Provides “pretty” output.\nProvides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."},"opt_fields":{"type":"array","items":{"type":"string","enum":["dates_rollup_progress","dates_rollup_progress.total_tasks","dates_rollup_progress.updated_tasks","new_graph_export","new_graph_export.completed_at","new_graph_export.created_at","new_graph_export.download_url","new_portfolio","new_portfolio.name","new_portfolio.resource_subtype","new_project","new_project.name","new_project.resource_subtype","new_project_template","new_project_template.name","new_resource_export","new_resource_export.completed_at","new_resource_export.created_at","new_resource_export.download_url","new_task","new_task.created_by","new_task.name","new_task.resource_subtype","resource_subtype","status"]},"examples":[["dates_rollup_progress","dates_rollup_progress.total_tasks","dates_rollup_progress.updated_tasks","new_graph_export","new_graph_export.completed_at","new_graph_export.created_at","new_graph_export.download_url","new_portfolio","new_portfolio.name","new_portfolio.resource_subtype","new_project","new_project.name","new_project.resource_subtype","new_project_template","new_project_template.name","new_resource_export","new_resource_export.completed_at","new_resource_export.created_at","new_resource_export.download_url","new_task","new_task.created_by","new_task.name","new_task.resource_subtype","resource_subtype","status"]],"description":"This endpoint returns a resource which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include. Properties can include nested fields. To learn more, see the [input/output options guide](/docs/inputoutput-options#selecting-nested-fields)."}},"required":[],"additionalProperties":false},"body":{"type":"object","properties":{"data":{"$ref":"#/definitions/ProjectDuplicateRequest"}}}},"required":["path"],"additionalProperties":false,"definitions":{"ProjectDuplicateRequest":{"type":"object","required":["name"],"properties":{"name":{"description":"The name of the new project.","type":"string","examples":["New Project Name"]},"include":{"description":"A comma-separated list of elements to include when duplicating a project.\nSome elements are automatically included and cannot be excluded,\nwhile others are **optional** and must be explicitly specified in this field.\n\n**Auto-included fields (non-configurable)**\n- Tasks\n- [Project Views](https://asana.com/features/project-management/project-views)\n(i.e., tabs in a project such as List, Board, Dashboard, etc.)\n- [Rules](https://help.asana.com/s/article/rules)\n\n*Note: The Owner of the Rules copied to the new project is the user who performs the API call.\nIf the duplication is performed using a [Service Account](/docs/authentication#/service-account),\nnote that Service Accounts cannot access the UI to modify or pause Rules.\nTo prevent unwanted automation behavior, consider pausing Rules in the source project before duplication —\ntheir active/paused state is preserved in the new project.*\n\n**Optional fields (configurable)**\n- allocations\n- forms\n- members\n- notes\n- permissions\n- task_assignee\n- task_attachments\n- task_dates\n- task_dependencies\n- task_followers\n- task_notes\n- task_projects\n- task_subtasks\n- task_tags\n- task_templates\n- task_type_default","type":"string","pattern":"([allocations|forms|members|notes|permissions|task_assignee|task_attachments|task_dates|task_dependencies|task_followers|task_notes|task_projects|task_subtasks|task_tags|task_templates|task_type_default])(,\\1)*","examples":[["allocations,forms,members,notes,permissions,task_assignee,task_attachments,task_dates,task_dependencies,task_followers,task_notes,task_projects,task_subtasks,task_tags,task_templates,task_type_default"]]},"schedule_dates":{"description":"A dictionary of options to auto-shift dates. `task_dates` must be included to use this option. Requires `should_skip_weekends` and either `start_on` or `due_on`, but not both.","type":"object","properties":{"should_skip_weekends":{"description":"**Required**: Determines if the auto-shifted dates should skip weekends.","type":"boolean","examples":[true]},"due_on":{"description":"Sets the last due date in the duplicated project to the given date. The rest of the due dates will be offset by the same amount as the due dates in the original project.","type":"string","examples":["2019-05-21"]},"start_on":{"description":"Sets the first start date in the duplicated project to the given date. The rest of the start dates will be offset by the same amount as the start dates in the original project.","type":"string","examples":["2019-05-21"]}}}}}}},"name":"Duplicate a project","id":"asana.duplicateproject","example":{"path":{"project_gid":"1331"}},"maxRequests":1,"summary":false}}