Arrange running windows
Arrange windows of profiles that are already running. This does not launch stopped profiles.
Definition: ApiFox POST · Checked on 2026-10-21.
Request
http
POST /api/arrangeWindowsUse the base URL and api-key shown on the client API screen. All examples use 9000 only as a placeholder port; see Overview for authentication.
JSON body
Fields follow the Apifox example; optional behavior is explained in the usage notes.
| Field | Type | Required | Description |
|---|---|---|---|
ids | integer[] | No | Optional. Limit arrangement to these profiles; omit to arrange all running profiles |
monitorIndex | integer | No | Optional. Target monitor index, starting at 1; defaults to the main monitor |
cURL example
bash
curl --request POST 'http://127.0.0.1:9000/api/arrangeWindows' \
--header 'api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"ids": [
1,
2
],
"monitorIndex": 1
}'Arrange all running profiles
bash
curl --request POST 'http://127.0.0.1:9000/api/arrangeWindows' \
--header 'api-key: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{}'Response example
json
{
"success": true,
"data": {
"arrangedCount": 2,
"arrangedIds": [
1,
2
],
"skipped": [],
"monitor": {
"index": 1,
"main": true,
"width": 3840,
"height": 2160
}
}
}Field reference
| Field | Type | Description |
|---|---|---|
data.arrangedCount | integer | Number of arranged windows |
data.arrangedIds | integer[] | IDs of arranged profiles |
data.skipped | object[] | Skipped items with id and reason |
data.monitor | object / null | Monitor information; may be null without eligible windows |
data.monitor.index | integer | 1-based monitor index |
data.monitor.main | boolean | Whether this is the main monitor |
data.monitor.width / height | integer | Monitor width/height |
Usage notes
- Current clients support window arrangement on Windows only. macOS/Linux return HTTP 501; do not retry it as a network failure.
- Omit the body or send {} to arrange all running profiles on the main monitor. ids: [] is an empty selection, not the same as omitting ids.
- ids accepts up to 1000 entries; stopped profiles are skipped. monitorIndex is a 1-based monitor index.
- Inspect arrangedCount, arrangedIds, and skipped rather than treating success as proof that every window was arranged. With no eligible profiles, a successful result can contain 0 and monitor: null.
Common errors
| HTTP status | code | Description |
|---|---|---|
400 | INVALID_MONITOR_INDEX | Monitor index is out of range; other invalid input also returns 400 |
409 | NO_MONITORS / BROWSER_WINDOWS_NOT_READY | No monitors detected or windows not ready |
501 | WINDOW_ARRANGEMENT_UNSUPPORTED | Window arrangement is unsupported on this platform |
For failed requests, check both HTTP status and the error body. See Errors & troubleshooting.



