---
title: "start a scheduled multi-stage chaos experiment"
method: PUT
path: "/mockserver/chaosExperiment"
tags: ["chaos"]
---

# start a scheduled multi-stage chaos experiment

`PUT /mockserver/chaosExperiment`

## Request

- Base URL: `http://localhost:1080`
- URL: `http://localhost:1080/mockserver/chaosExperiment`
- Auth: none declared

Starts a chaos experiment with an ordered sequence of stages, each applying service-scoped chaos profiles to one or more hosts for a specified duration. Stages progress automatically. Only one experiment may be active at a time; starting a new one stops the previous one. Safety limits: max 50 stages, max 24h per stage duration, auto-halt integration.

## Request body

- object
  - `name` string, required: human-readable experiment name
  - `loop` boolean: whether to loop back to stage 0 after the last stage completes (default false)
  - `stages` object[], required: ordered sequence of stages
    - `durationMillis` integer, required: how long this stage runs before advancing (max 86400000 = 24h)
    - `profiles` object, required: map of host -> chaos profile to apply during this stage

## Response `200`

experiment started

- object
  - `status` 'started'
  - `name` string

## Other responses

- `400`: invalid experiment definition (missing name, empty stages, invalid duration, etc.)

---

[API](https://skmtc.dev/mock-server/apis/mockserver-api.md) · [All operations](https://skmtc.dev/mock-server/apis/mockserver-api/llms.txt) · [OpenAPI document](https://skmtc.dev/mock-server/apis/mockserver-api/revisions/9239b693996e?raw)
