---
title: "startEnvironmentDeploy"
method: POST
path: "/platform/environments/{id}/deploy"
tags: ["Platform"]
---

# startEnvironmentDeploy

`POST /platform/environments/{id}/deploy`

## Request

- Base URL: `https://api.imprezahost.com/v1`
- URL: `https://api.imprezahost.com/v1/platform/environments/{id}/deploy`
- Auth: API key in header `X-API-Key` and API key in header `X-API-Secret`

Deploy scope. Deploy every non-preview service of the environment in role order (database, cache, worker, web): each stage is an ordinary smart-replace deploy whose start is gated on the previous stage reporting a HEALTHY start (require_healthy_start, default true — every stage's agent must already announce startup-health-v1, pre-checked before anything queues; pass false to deploy without the gate). Variable groups resolve and the environment's database wiring applies per stage. One running batch per environment and every component must be settled. A failed stage fails the batch; the stages that already succeeded stay deployed.

## Path parameters

- `id` string, required

## Request body

- object
  - `require_healthy_start` boolean

## Response `202`

Batch accepted: batch_id (edb_...), ordered stages and cursor

## Other responses

- `400`: Invalid input
- `403`: Required scope missing
- `404`: Resource or current ownership unavailable
- `409`: Nothing to deploy, a component is busy, or a batch is already running
- `422`: A stage's agent lacks startup-health-v1, or a component has no recorded configuration
- `503`: Storage unavailable; read before retrying

---

[API](https://skmtc.dev/imprezahost/apis/impreza-host-public-api.md) · [All operations](https://skmtc.dev/imprezahost/apis/impreza-host-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/imprezahost/apis/impreza-host-public-api/revisions/db86511f604f?raw)
