# Manage Deployments

You can create, monitor, and manage [Dedicated Deployments](https://docs.roboflow.com/deploy/dedicated-deployments) from the command line.

## List Deployments

```bash
roboflow deployment list
```

## List Machine Types

```bash
roboflow deployment machine-type
```

## Create a Deployment

```bash
roboflow deployment create <name> -m <machine-type> -e <email>
```

### Options

| Flag                        | Description                                                           |
| --------------------------- | --------------------------------------------------------------------- |
| `-m`, `--machine-type`      | Machine type (required). Run `deployment machine-type` to see options |
| `-e`, `--email`             | Your email, must be a workspace member (required)                     |
| `--duration`                | Duration in hours (default: 3)                                        |
| `--inference-version`       | Inference server version (default: latest)                            |
| `--no-delete-on-expiration` | Keep deployment when it expires                                       |
| `--wait`                    | Wait until deployment is ready                                        |

Example:

```bash
roboflow deployment create my-deployment -m gpu-small -e me@company.com --duration 8
```

## Get Deployment Details

```bash
roboflow deployment get <name>
```

Wait for a pending deployment to be ready:

```bash
roboflow deployment get my-deployment --wait
```

## View Logs

```bash
roboflow deployment log <name>
```

Follow logs in real-time:

```bash
roboflow deployment log my-deployment -f
```

### Options

| Flag               | Description                                  |
| ------------------ | -------------------------------------------- |
| `-d`, `--duration` | Log window in seconds (default: 3600)        |
| `-n`, `--tail`     | Lines to show from end (max 50, default: 10) |
| `-f`, `--follow`   | Follow log output                            |

## Usage Statistics

Get workspace-wide usage:

```bash
roboflow deployment usage
```

Get usage for a specific deployment:

```bash
roboflow deployment usage my-deployment
```

### Options

| Flag     | Description           |
| -------- | --------------------- |
| `--from` | Start time (ISO 8601) |
| `--to`   | End time (ISO 8601)   |

## Pause, Resume, and Delete

```bash
roboflow deployment pause my-deployment
roboflow deployment resume my-deployment
roboflow deployment delete my-deployment
```

## JSON Output

All deployment commands support `--json`:

```bash
roboflow deployment list --json
roboflow deployment get my-deployment --json
```
