# Vendia CLI command - uni

## `share uni`

Manage **project** operations.

## Commands for `share uni`

Manage **project** operations

### Usage for `share uni`

```
share uni <subcommand>
```

| Subcommand | Description |
| :-- | :-- |
| [`uni create`](https://docs.vendia.com/platform/cli/commands/uni#uni-create) | Create a new **project** |
| [`uni delete`](https://docs.vendia.com/platform/cli/commands/uni#uni-delete) | Permanently delete a **project** |
| [`uni evolve`](https://docs.vendia.com/platform/cli/commands/uni#uni-evolve) | Evolve the schema for a **project** |
| [`uni get`](https://docs.vendia.com/platform/cli/commands/uni#uni-get) | Get information about a given **project** |
| [`uni invite`](https://docs.vendia.com/platform/cli/commands/uni#uni-invite) | Invite a new **workspace** to join the **project** |
| [`uni join`](https://docs.vendia.com/platform/cli/commands/uni#uni-join) | Join an existing **project** |
| [`uni list`](https://docs.vendia.com/platform/cli/commands/uni#uni-list) | Lists all **projects** in your account |
| [`uni open`](https://docs.vendia.com/platform/cli/commands/uni#uni-open) | Open a **project** in the vendia dev console |
| [`uni reset`](https://docs.vendia.com/platform/cli/commands/uni#uni-reset) | Resets **project** to its original state |

### Examples for `share uni`

```
❯ List all project info

share uni list

❯ Get project info

share uni get --uni <uniName>

❯ Create projects

# Register project via JSON file:

share uni:create --config registration.json

# Register project via --config:

share uni:create --config '{"name": "test-UniName", "schema": "schema.json","nodes":[{"name":"NodeName","userId": "email@email.com","region": "us-east-1","csp": "aws"}]}'

❯ Open projects in Browser

share uni open

share uni open --uni <uniName>

❯ Reset project data

share uni reset --uni <uniName>

❯ Delete project

share uni delete --uni <uniName>

# Skip delete confirmation prompt:

share uni delete --uni <uniName> --force

❯ Invite another workspace to the project

share uni invite --uni <uniName> --user <userEmail>

❯ Join an existing project

share uni join -u <uniName> -t <token> --config '{"name":"nodeName", "userId":"email@email.com", "region":"us-east-1"}'

share uni join --uni <uniName> --token <token> --config '{"name":"nodeName", "userId":"email@email.com", "region":"us-east-1"}'

❯ Evolve the schema of a project

share uni evolve --uni <uniName> --schema schema.json
```

## `uni create`

Create a new **project**.

The `uni create` command also allows for optionally providing the schema and initial state filenames as an alternative to providing them in the registration file.

### Usage for `uni create`

```
share uni create
```

### Flags for `uni create`

- `config` ( _option_) \- File path or JSON registration data
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni create`

```
# Register project via JSON file:

share uni:create --config registration.json

# Register project via --config:

share uni:create --config '{"name": "test-UniName", "schema": "schema.json","nodes":[{"name":"NodeName","userId": "email@email.com","region": "us-east-1","csp": "aws"}]}'
```

## `uni delete`

Permanently delete a **project**.

### Usage for `uni delete`

```
share uni delete
```

### Flags for `uni delete`

- `uni` ( _option_) \- Name of **project**
- `force` ( _boolean_) \- Force deletion with no confirmation step. Use with caution
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni delete`

```
share uni delete --uni <uniName>

# Skip delete confirmation prompt:

share uni delete --uni <uniName> --force
```

## `uni evolve`

Evolve the schema for a **project**.

### Usage for `uni evolve`

```
share uni evolve
```

### Flags for `uni evolve`

- `uni` ( _option_) \- Name of **project**
- `schema` ( _option_) \- File path of schema
- `allowed-breaking-change` ( _option_) \- A type of breaking change allowed. This flag may be specified multiple times to allow more than one type of breaking change.
- `approval-required` ( _option_) \- Interactive approval for breaking changes to a schema. Default is ‘ALWAYS’
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni evolve`

```
share uni evolve --uni <uniName> --schema schema.json
```

## `uni get`

Get information about a given **project**.

### Usage for `uni get`

```
share uni get
```

### Flags for `uni get`

- `uni` ( _option_) \- Name of **project**
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni get`

```
share uni get --uni <uniName>
```

## `uni invite`

Invite a new **workspace** to join the **project**.

### Usage for `uni invite`

```
share uni invite
```

### Flags for `uni invite`

- `uni` ( _option_) \- Name of **project**
- `user` ( _option_) \- User email of user to invite
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni invite`

```
share uni invite --uni <uniName> --user <userEmail>
```

## `uni join`

Join an existing **project**.

### Usage for `uni join`

```
share uni join
```

### Flags for `uni join`

- `uni` ( _option_) \- Name of **project**
- `token` ( _option_) \- Value of the invitation token
- `config` ( _option_) \- **Workspace** configuration settings
- `json` ( _boolean_) \- Output return values as JSON
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni join`

```
share uni join -u <uniName> -t <token> --config '{"name":"nodeName", "userId":"email@email.com", "region":"us-east-1"}'

share uni join --uni <uniName> --token <token> --config '{"name":"nodeName", "userId":"email@email.com", "region":"us-east-1"}'
```

## `uni list`

Lists all **projects** in your account.
Lists all **projects** in which the calling account owns a **workspace**.

### Usage for `uni list`

```
share uni list
```

### Flags for `uni list`

- `json` ( _boolean_) \- Return list of **projects** as json
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni list`

```
share uni list
```

## `uni open`

Open a **project** in the Vendia dev console.

### Usage for `uni open`

```
share uni open
```

### Flags for `uni open`

- `uni` ( _option_) \- Name of **project**

### Examples for `uni open`

```
share uni open

share uni open --uni <uniName>
```

## `uni reset`

Resets a **project** to its original state.
Resets **project** to the state it was in just after it began operation (useful during development and testing).

### Usage for `uni reset`

```
share uni reset
```

### Flags for `uni reset`

- `uni` ( _option_) \- Name of **project**
- `role` ( _option_) \- Role name to use for the operation

### Examples for `uni reset`

```
share uni reset --uni <uniName>
```
