# Using the Vendia CLI

Welcome to the Vendia CLI!

## Install the CLI

To install the CLI, pop open your terminal and install with `npm`.

```
npm install @vendia/share-cli -g
```

## Listing commands

To get a list of commands, run:

```
share help
```

To get a list of available sub-commands, arguments, and flags, run:

```
share [command] --help
```

## Commands

### [share auth](https://docs.vendia.com/platform/cli/commands/auth)

Manage authorization & set current Vendia user

| Sub command | description |
| :-- | :-- |
| [`auth login`](https://docs.vendia.com/platform/cli/commands/auth#auth-login) | Login to Vendia user account |
| [`auth logout`](https://docs.vendia.com/platform/cli/commands/auth#auth-logout) | Logout of Vendia user account |
| [`auth role`](https://docs.vendia.com/platform/cli/commands/auth#auth-role) | Manage roles for users |
| [`auth role delete`](https://docs.vendia.com/platform/cli/commands/auth#auth-role-delete) | Delete roles for users |
| [`auth role get`](https://docs.vendia.com/platform/cli/commands/auth#auth-role-get) | Get role information |
| [`auth role list`](https://docs.vendia.com/platform/cli/commands/auth#auth-role-list) | List roles for user |
| [`auth role set`](https://docs.vendia.com/platform/cli/commands/auth#auth-role-set) | Set Roles for user |
| [`auth switch`](https://docs.vendia.com/platform/cli/commands/auth#auth-switch) | Switch active Vendia account |
| [`auth whoami`](https://docs.vendia.com/platform/cli/commands/auth#auth-whoami) | Display active Vendia account |

### [share client](https://docs.vendia.com/platform/cli/commands/client)

Manage your local Vendia client

| Sub command | description |
| :-- | :-- |
| [`client generate`](https://docs.vendia.com/platform/cli/commands/client#client-generate) | Generate a custom client for accessing your Uni’s API. This command helps you create a tailored client for your specific needs. |
| [`client pull`](https://docs.vendia.com/platform/cli/commands/client#client-pull) | Writes your Uni’s schema files to a local directory. This is needed in order to generate a custom client for accessing your Uni’s API. |

### [share file](https://docs.vendia.com/platform/cli/commands/file)

Manage files in a Uni

| Sub command | description |
| :-- | :-- |
| [`file add`](https://docs.vendia.com/platform/cli/commands/file#file-add) | Add a file |
| [`file get`](https://docs.vendia.com/platform/cli/commands/file#file-get) | Get a file |
| [`file list`](https://docs.vendia.com/platform/cli/commands/file#file-list) | List current files |
| [`file remove`](https://docs.vendia.com/platform/cli/commands/file#file-remove) | Remove a file |
| [`file update`](https://docs.vendia.com/platform/cli/commands/file#file-update) | Update a file |

### [share login](https://docs.vendia.com/platform/cli/commands/login)

Login to Vendia user account

### [share logout](https://docs.vendia.com/platform/cli/commands/logout)

Logout of Vendia user account

### [share node](https://docs.vendia.com/platform/cli/commands/node)

Manage nodes in a Uni

| Sub command | description |
| :-- | :-- |
| [`node add-api-key`](https://docs.vendia.com/platform/cli/commands/node#node-add-api-key) | Add an API Key |
| [`node add-jwt-auth`](https://docs.vendia.com/platform/cli/commands/node#node-add-jwt-auth) | Add a custom JWT Authentication Provider to a Node |
| [`node get`](https://docs.vendia.com/platform/cli/commands/node#node-get) | Get node configuration |
| [`node grant-access`](https://docs.vendia.com/platform/cli/commands/node#node-grant-access) | Grant user access to a Node |
| [`node remove-jwt-auth`](https://docs.vendia.com/platform/cli/commands/node#node-remove-jwt-auth) | Remove a custom JWT Authentication Provider from a Node |
| [`node revoke-access`](https://docs.vendia.com/platform/cli/commands/node#node-revoke-access) | Revoke a user’s access to a Node |
| [`node schema`](https://docs.vendia.com/platform/cli/commands/node#node-schema) | Fetch a Node’s GraphQL Schema |
| [`node sharing-policy`](https://docs.vendia.com/platform/cli/commands/node#node-sharing-policy) | Manage sharing policies for a node |
| [`node update`](https://docs.vendia.com/platform/cli/commands/node#node-update) | Update node configuration |

### [share org](https://docs.vendia.com/platform/cli/commands/org)

Manage your Organization (Enterprise only)

| Sub command | description |
| :-- | :-- |
| [`org get`](https://docs.vendia.com/platform/cli/commands/org#org-get) | Get your Organization (Enterprise only) |
| [`org list-users`](https://docs.vendia.com/platform/cli/commands/org#org-list-users) | List Org Users (Enterprise only) |

### [share uni](https://docs.vendia.com/platform/cli/commands/uni)

Manage Uni operations

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