# diagrid project create

Create a project

### Description

Create new project in an existing organization

With --duplicate, the new project is a copy of an existing project's
configuration: its settings and resources, such as App IDs, components,
subscriptions and HTTP endpoints. Runtime data is not copied. State,
key/value data, pub/sub messages and workflow history stay in the source
project, and the copy starts empty.

```
diagrid project create <project-name> [flags]
```

### Examples

```

  # Create a project in the default region with a Diagrid Pub/Sub Broker and Diagrid Key/Value store
  diagrid project create my-project --deploy-managed-pubsub --deploy-managed-kv
  
  # Create a project in a specific region
  diagrid project create my-project --region aws-us-west	

  # Create a project across every region of a region group
  diagrid project create my-project --region-group prod-us

  # Create a project with managed workflow enabled
  diagrid project create my-project --enable-managed-workflow

  # Create a project with a custom max body size for all ids
  diagrid project create my-project --global-id-max-body-size 8Mi

  # Create a project with workflow history signing enabled
  diagrid project create my-project --enable-workflow-history-signing

  # Create a copy of an existing project, with its settings and resources
  diagrid project create my-copy --duplicate my-project

  # Copy a project into another region and wait until all its resources are copied
  diagrid project create my-copy --duplicate my-project --region aws-eu-west --wait

```

### Options

```
  -r, --region string                     Region ID where the project will be deployed
      --deploy-managed-pubsub             Deploy a Diagrid Pub/Sub Broker for use with the Pub/Sub API
      --deploy-managed-kv                 Deploy a Diagrid Key/Value Store for use with the Key/Value API
      --enable-managed-workflow           Enable Workflow API by leveraging a Diagrid-managed state store used by the workflow engine. Alternatively, enable Workflow support by providing an external component to a transactional state store
      --enable-workflow-history-signing   Enable workflow history signing for this project. Can only be set at creation time
  -w, --wait                              Wait for long-running resource creation to finish
      --use                               Set the created project as the default project for the current context
      --disable-app-tunnels               Disable app tunnels for this project
      --global-id-max-body-size string    Maximum body size for HTTP and gRPC requests across all ids in this project (e.g., "4Mi", "8Mi", "16Mi"). Can be overridden at the individual id level
      --ignore-if-exists                  Exit with success if the project already exists instead of returning an error
      --region-group string               Region group to place the project across, instead of a single region. Mutually exclusive with --region, and immutable once the project exists.
      --duplicate string                  Create the project as a copy of this existing project's settings and resources. Runtime data such as state, messages and workflow history is not copied. Use --region or --region-group to place the copy somewhere other than the source
  -h, --help                              help for create
```

### Options inherited from parent commands

```
      --api-key string   Diagrid Cloud API key
```

### SEE ALSO

- [diagrid project](./project.md)	 - Manage projects
