> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/developer/rest-api/dedicated-deployments.md).

# Dedicated Deployments

[Dedicated Deployments](https://docs.roboflow.com/deploy/dedicated-deployments) are managed GPU machines that run your Roboflow models with predictable latency and high throughput. They are managed by a dedicated service hosted at `https://roboflow.cloud`, separate from the main `https://api.roboflow.com` REST API.

This page documents the management endpoints (create, get, pause, resume, delete, logs, usage). For inference against a deployment once it's live, see [Run a Model on an Image](/developer/rest-api/run-a-model-on-an-image.md).

{% hint style="info" %}
The "edge devices" documentation under [Deployment Manager](/developer/rest-api/deployment-manager.md) is a separate product. Dedicated Deployments are managed GPU machines in Roboflow's cloud; Deployment Manager devices are on-prem hardware running [Roboflow Inference](https://inference.roboflow.com).
{% endhint %}

**Base URL:** `https://roboflow.cloud`

`api_key` is passed as a query parameter on every request.

## List Machine Types

<mark style="color:green;">`GET`</mark> `/machine_types`

```bash
curl "https://roboflow.cloud/machine_types?api_key=$ROBOFLOW_API_KEY"
```

**Response**

```json
{
  "machine_types": [
    { "name": "gpu-small",  "description": "1× T4, 4 vCPU, 16 GB RAM" },
    { "name": "gpu-medium", "description": "1× L4, 8 vCPU, 32 GB RAM" }
  ]
}
```

## Create a Deployment

<mark style="color:green;">`POST`</mark> `/add`

**Body** (JSON)

<table><thead><tr><th width="200">Name</th><th width="120">Type</th><th>Description</th><th data-type="checkbox">Required</th></tr></thead><tbody><tr><td><code>api_key</code></td><td>string</td><td>Workspace API key.</td><td>true</td></tr><tr><td><code>creator_email</code></td><td>string</td><td>Email of a workspace member.</td><td>true</td></tr><tr><td><code>deployment_name</code></td><td>string</td><td>Unique name within the workspace.</td><td>true</td></tr><tr><td><code>machine_type</code></td><td>string</td><td>From <code>/machine_types</code>.</td><td>true</td></tr><tr><td><code>duration</code></td><td>integer</td><td>Hours before auto-cleanup.</td><td>true</td></tr><tr><td><code>delete_on_expiration</code></td><td>boolean</td><td><code>true</code> to delete on expiration; <code>false</code> to pause.</td><td>true</td></tr><tr><td><code>inference_version</code></td><td>string</td><td>Inference server version. Omit for latest.</td><td>false</td></tr></tbody></table>

```bash
curl -X POST "https://roboflow.cloud/add" \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "'$ROBOFLOW_API_KEY'",
    "creator_email": "me@company.com",
    "deployment_name": "my-deployment",
    "machine_type": "gpu-small",
    "duration": 8,
    "delete_on_expiration": true
  }'
```

The deployment provisions asynchronously. Poll `GET /get` until `status == "ready"`.

## Get a Deployment

<mark style="color:green;">`GET`</mark> `/get?api_key=...&deployment_name=...`

```bash
curl "https://roboflow.cloud/get?api_key=$ROBOFLOW_API_KEY&deployment_name=my-deployment"
```

**Response** (excerpt)

```json
{
  "deployment_name": "my-deployment",
  "status": "ready",
  "machine_type": "gpu-small",
  "public_url": "https://my-deployment.roboflow.cloud",
  "created_at": "2026-05-01T17:05:33.000Z",
  "expires_at": "2026-05-02T01:05:33.000Z"
}
```

## List Deployments

<mark style="color:green;">`GET`</mark> `/list?api_key=...`

```bash
curl "https://roboflow.cloud/list?api_key=$ROBOFLOW_API_KEY"
```

## Pause / Resume / Delete

<mark style="color:green;">`POST`</mark> `/pause`   <mark style="color:green;">`POST`</mark> `/resume`   <mark style="color:red;">`POST`</mark> `/delete`

```bash
curl -X POST "https://roboflow.cloud/pause" \
  -H "Content-Type: application/json" \
  -d '{"api_key": "'$ROBOFLOW_API_KEY'", "deployment_name": "my-deployment"}'
```

The same body shape applies to `/resume` and `/delete`.

## Logs

<mark style="color:green;">`GET`</mark> `/get_log?api_key=...&deployment_name=...&from_timestamp=...&to_timestamp=...&max_entries=...`

```bash
curl "https://roboflow.cloud/get_log?api_key=$ROBOFLOW_API_KEY&deployment_name=my-deployment&max_entries=200"
```

`from_timestamp` and `to_timestamp` are ISO-8601 strings. Omit them to fetch the most recent logs up to `max_entries`.

## Usage

Workspace-wide:

<mark style="color:green;">`GET`</mark> `/usage_workspace?api_key=...&from_timestamp=...&to_timestamp=...`

Per-deployment:

<mark style="color:green;">`GET`</mark> `/usage_deployment?api_key=...&deployment_name=...&from_timestamp=...&to_timestamp=...`

```bash
curl "https://roboflow.cloud/usage_workspace?api_key=$ROBOFLOW_API_KEY&from_timestamp=2026-04-01T00:00:00Z&to_timestamp=2026-05-01T00:00:00Z"
```

## SDK and CLI equivalents

* SDK: `roboflow.adapters.deploymentapi.*` - see [Manage Dedicated Deployments (SDK)](/developer/python-sdk/manage-dedicated-deployments.md).
* CLI: the `roboflow deployment` command group - see [Manage Deployments (CLI)](/developer/command-line-interface/manage-deployments.md).
