---
title: "Delete deployment"
method: DELETE
path: "/v1alpha1/inference/deployments/{id}"
tags: ["DeploymentService"]
---

# Delete deployment

`DELETE /v1alpha1/inference/deployments/{id}`

Deletes a deployment by ID. Returns the deleted deployment.

## Path parameters

- `id` string, required

## Response `200`

OK

- DeleteDeploymentResponse — Response for DeleteDeployment
  - `deployment` Deployment — Deployment object with specification and status fields
    - `spec` DeploymentSpec — DeploymentSpec object with configuration fields
      - `id` string — The ID of the deployment
      - `name` string — The name of the deployment
      - `gatewayIds` string[] — The IDs of the gateways the deployment is associated with. A deployment may be attached to multiple gateways; traffic from each gateway is routed by that gateway's strategy.
      - `runtime` DeploymentRuntime — Runtime selection and configuration for deployments
        - `engine` string, required — The inference engine to use (for example, `vllm`). The available engines are returned by `GET /v1alpha1/inference/deployments/parameters`.
        - `version` string, required — The version of the engine. Defaults to `latest` when unset. Must be one of the engine's available versions returned by the parameters endpoint.
        - `engineConfig` object — Engine-specific configuration arguments. The allowed keys per engine are returned under `runtimeParameters.runtimeConfigOptions` by the parameters endpoint.
        - `engineEnv` object — Map of engine-specific environment variables to inject into the model runtime container
      - `resources` DeploymentResources — Resource configuration for the deployment
        - `instanceType` string, required — The instance type to use for the deployment. The available values are returned by `GET /v1alpha1/inference/deployments/parameters`.
        - `gpuCount` integer, required — Number of GPUs needed per instance. CPU and RAM are automatically assigned based on the chosen GPU count.
      - `model` DeploymentModel — Configuration of the model
        - `name` string, required — The model name used in inference requests (and returned by the gateway's `/models` endpoint). When multiple deployments on the same gateway share a name, traffic is split between them by `traffic.weight`.
        - `bucket` string, required — The CoreWeave AI Object Storage (CAIOS) bucket the model is stored in.
        - `path` string, required — The path within `bucket` to the model and its configuration files.
      - `autoscaling` DeploymentAutoscaling — Autoscaling configuration for the deployment
        - `min` integer, required — The minimum number of replicas. Must be at least `1`; scale-to-zero is not supported.
        - `max` integer, required — The maximum number of replicas. Must be greater than or equal to `min`. Set equal to `min` to disable autoscaling.
        - `priority` integer — Scaling priority relative to other deployments, from `0` to `1000`. Higher values receive scaling preference during resource contention.
        - `concurrency` integer — Target concurrent requests per replica. Lower values reduce latency; higher values increase throughput. Must be at least `1`.
        - `capacityClasses` string[] — The capacity classes the autoscaler may use for this deployment. Set `CAPACITY_CLASS_RESERVED` to schedule replicas onto capacity reserved by a CapacityClaim; set `CAPACITY_CLASS_ON_DEMAND` to use shared on-demand capacity.
      - `traffic` DeploymentTraffic — Configuration for traffic control to the deployment
        - `weight` integer — The relative weight of traffic routed to this deployment compared to other deployments with the same model name on the same gateway. Weights are normalized into percentages.
      - `organizationId` string — The organization ID that owns the deployment.
      - `disabled` boolean — When `true`, the deployment does not receive traffic and is not scaled.
    - `status` DeploymentStatus — DeploymentStatus object for status fields
      - `createdAt` string, date-time — The time at which the deployment was created.
      - `updatedAt` string, date-time — The time at which the deployment was last updated.
      - `conditions` Condition[] — List of conditions representing detailed status information
        - `type` string — Type of condition
        - `lastUpdateTime` string, date-time — Last time the condition was updated
        - `reason` string — Reason for the condition's last transition
        - `message` string — Human-readable message indicating details about the condition
        - `zone` string — Zone associated with the condition
        - `status` 'True' | 'False' | 'Unknown' — Whether the condition is currently `True`, `False`, or `Unknown`. Mirrors the Kubernetes condition convention.
      - `status` 'STATUS_CREATING' | 'STATUS_READY' | 'STATUS_UPDATING' | 'STATUS_DELETING' | 'STATUS_ERROR' | 'STATUS_FAILED' — The overall status of the deployment. See the [Inference API overview](https://docs.coreweave.com/products/inference/reference/api-overview#status-values) for the meaning of each value.

## Other responses

- `default` — Default error response

---

[API](https://skmtc.dev/coreweave/apis/coreweave-telemetry-relay-api.md) · [All operations](https://skmtc.dev/coreweave/apis/coreweave-telemetry-relay-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/coreweave/coreweave-telemetry-relay-api/revisions/3b98ea4fe0c3/schema)
