Magidoc

createProject
Mutation

Creates a new project in a workspace with comprehensive configuration options.

This is the primary mutation for project creation, supporting both basic project setup and advanced features like copying from existing projects, custom fields, etc.

Access: Requires user access to the workspace

Returns: The newly created Project object with all computed fields

Errors:

  • Throws error if user doesn't have access to the workspace
  • Throws error if copyFrom project doesn't exist or user lacks access
  • Throws error if endDate is before startDate
  • Throws error if members don't have workspace access

Arguments

#

workspace

ID !
Non-null

The workspace ID where the project will be created

name

The name of the project

archived

Whether the project should be archived

actionDateSync

Whether action dates should sync with project dates

attachments

File attachments to add to the project

autoCompleteParent

Whether to auto-complete parent when all children complete

automationWorkflows

Automation workflow IDs to apply

color

Hex color code for the project

copyActionStatuses

Copy action statuses when copying from another project

copyApprovals

Copy approval settings when copying from another project

copyAssignees

Copy assignees when copying from another project

copyAppWorkflows

Copy app workflows when copying from another project

copyActionDates

Copy action dates when copying from another project

copyProjectChildren

Copy child projects when copying from another project

copyFrom

Project ID to copy settings and structure from

description

Project description in HTML format

startDate

Project start date

endDate

Project end date

ganttGroupBy

How to group items in Gantt view

hiddenApps

App names to hide for this project

hideActionsForExternal

Whether the client mode is enabled

hideActionsForExternalByDefault

Whether to hide actions from external users by default (when client mode is enabled)

isDraftMode

Whether the project is in draft mode

labels

[ID !]

Label IDs to apply to the project

members

[ID !]

User IDs to add as project members

parentProject

Parent project ID if this is a sub-project

destination

Destination ID for project organization

permissions

Custom permission settings for the project

phases

Project phases to create

pinActionView

Whether to pin the default action view

resourcePlaceholderIds

[ID !]

Resource placeholder IDs to assign

sharingType

Project sharing type

showKanbanViewSubactions

How to display sub-actions in Kanban view

showCompletedSubactionsByDefault

Whether to show completed sub-actions by default

showRootActionCustomFields

Default sort type for project actions

sortType

teams

[ID !]

Team IDs to give access to the project

viewType

Default view type (list, kanban, gantt, etc.)

template

Whether this project is a template

copyUserPermissions

Copy user permissions when copying from another project

customFieldsToCreate

Custom field definitions to create for this project

notifyProjectMembers

Whether to send notifications to project members

projCustomFields

Custom field values to set on the project

isAutomated

Whether this project creation is automated

ganttAutoScheduling

Auto-scheduling mode for Gantt view

projectStatuses

Custom project status names

Response

#

Returns Project .

Example

#