CLI for Design Center Projects | MuleSoft Documentation
# CLI for Design Center Projects
Use the `designcenter` commands for managing APIs from Design Center. For more information about how to use these commands, refer to the Design Center documentation.
Command | Description  
---|---  
designcenter:project:create |  Creates a new Design Center project  
designcenter:project:delete |  Deletes a Design Center project  
designcenter:project:download |  Downloads the content of a Design Center project  
designcenter:project:list |  Lists all Design Center projects  
designcenter:project:publish |  Publishes a Design Center project to Exchange  
designcenter:project:upload |  Uploads the content of a project to Design Center  
## designcenter:project:create
```
> designcenter:project:create [flags] <name>
```

Creates a new Design Center project with the name specified in `<name>`
This command does not support Mule application types.   
---  
In addition to the default flags, this command accepts the following flags:
Flag | Description | Example  
---|---|---  
`--type (required)` |  The project type. This field is required. Supported values are:
  * `raml-fragment`

  
`--fragmentType` |  The fragment type Always use with `--type raml-fragment`, even for OAS 3.0 and JSON schema fragments. This field is required if the type flag was set as `raml-fragment` Supported fragments type are:
  * `resource-type`
  * `library`
  * `user-documentation`
  * `oas-components`
  * `json-schema`

|  `--type raml-fragment --fragmentType user-documentation`  
This flag is only available for OAS APIs. Supported values: `2.0`, `3.0` |  `--version 2.0`  
This flag is only available for OAS APIs. Supported values: `YAML`, `JSON` |  `--format YAML`  
Specify the response format |  `--output json`  
## designcenter:project:delete
```
> designcenter:project:delete [flags] <name>
```

Deletes the Design Center project specified in `name`
This command does not prompt twice before deleting. If you send a delete instruction, it does not ask for confirmation.   
---  
This command accepts the default flags.
## designcenter:project:download
```
> designcenter:project:download [flags] <name> <targetDir>
```

Downloads the Design Center project passed in `name` to your local directory specified in `targetDir` Use the `--resolveDependenciesTimeout=X` flag to specify the duration, in minutes, for the commands to wait for the resolution of dependencies before downloading a project. If the specified time passes, your project downloads without the missing dependencies.
This command accepts the default flags.
## designcenter:project:list
```
> designcenter:project:list [flags] [searchText]
```

Lists all your Design Center projects
In addition to the default flags, this command accepts the following flags:
Flag | Description | Example  
---|---|---  
Number of page to retrieve |  `--pageIndex 3`  
Number of results to retrieve per page |  `--pageSize 5`  
Specify the response format. |  `--output json`  
## designcenter:project:publish
```
> designcenter:project:publish [flags] <projectName>
```

Publishes the Design Center project passed in `projectName` to Exchange
In addition to the default flags, this command accepts the following flags:
Flags that are not specified are extracted from exchange.json   
---  
Flag | Description | Example  
---|---|---  
`--apiVersion` |  The API version if your project is an API specification project |  `--main sample.raml --apiVersion 1.0`  
The asset assetId |  `designcenter:project:publish --assetId project`  
The asset groupId |  `designcenter:project:publish --groupId com.mulesoft.com`  
The name of the main file name |  `--main sample.xml`  
The name for the asset |  `--name sampleProject`  
The asset status Supported values are: `development` and `published` (default) |  `designcenter:project:publish --version 1.0`  
Comma separated list of tags |  `--tags test,sample,integration`  
The asset version |  `designcenter:project:publish --version 1.0`  
## designcenter:project:upload
```
> designcenter:project:upload [flags] <name> <projDir>
```

Uploads content from a Design Center project from your local directory passed in `projDir` into an already existing Design Center project identified with `name`.
By default, this command ignores all hidden files and directories. To include hidden files and directories, use the `--include-dot-files` flag. When the `--include-dot-files` flag is used, the command uploads hidden files and folders from your specified directory.
This command accepts the default flags.