Skip to content

Project Templates API: Duplicate

PropertyValue
Typemutation
MethodPOST
Path/api/external/v1/project_templates/duplicate
HandlerOperatelyWeb.Api.ProjectTemplates.Duplicate
  • Requires a valid API token.
  • Requires a write-enabled token.
  • Read-only tokens return 403.
FieldTypeRequiredNullableDefault
idid primitive (encoded as string)YesNo-
namestringYesNo-
FieldTypeRequiredNullable
templateproject_template objectYesNo
Copied
curl --request POST \
  --url "https://app.operately.com/api/external/v1/project_templates/duplicate" \
  --header "Authorization: Bearer ${OPERATELY_API_TOKEN}" \
  --header "Content-Type: application/json" \
  --data '{"id":"value", "name":"value"}'
{
"template": {
"__typename": "value",
"archived_at": "2026-01-01T09:30:00Z",
"creator": "<person>",
"description": "value",
"discussions": [
"<project_template_discussion>"
],
"duration_days": 123,
"id": "value",
"inactive_discussion_count": 123,
"inactive_people_summary": "<project_template_inactive_people_summary>",
"inserted_at": "2026-01-01T09:30:00Z",
"milestone_count": 123,
"milestones": [
"<project_template_milestone>"
],
"milestones_ordering_state": [
"value"
],
"name": "value",
"people": [
"<project_template_person>"
],
"permissions": "<project_template_permissions>",
"resource_nodes": [
"<project_template_resource_node>"
],
"space": "<space>",
"task_assignments": [
"<project_template_task_assignment>"
],
"task_count": 123,
"task_statuses": [
"<task_status>"
],
"tasks": [
"<project_template_task>"
],
"tasks_kanban_state": "value",
"updated_at": "2026-01-01T09:30:00Z"
}
}