For AI agents: markdown of this page — /docs-content-en/infra/wake-schedules/list.md documentation index — /llms.txt
List wake windows
GET /v1/infra/servers/:id/wake-schedules
Returns all wake windows of a server, including disabled ones. Unlike creating and updating, this works regardless of whether scheduled wake is enabled for the Bitrix24 account — so the server owner can see already-declared windows even when the feature is currently unavailable to their account.
Parameters
| Parameter | In | Type | Required | Description |
|---|---|---|---|---|
id |
path | string (UUID) | yes | ID of the BLACKHOLE server |
There are no query parameters — filtering and pagination are not offered for a single server's window list; the 50-windows-per-server cap makes them unnecessary.
Examples
curl — personal key
curl -H "X-Api-Key: YOUR_API_KEY" \
https://vibecode.bitrix24.com/v1/infra/servers/SERVER_ID/wake-schedules
curl — OAuth application
curl -H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN" \
https://vibecode.bitrix24.com/v1/infra/servers/SERVER_ID/wake-schedules
JavaScript — personal key
const res = await fetch(
`https://vibecode.bitrix24.com/v1/infra/servers/${serverId}/wake-schedules`,
{ headers: { 'X-Api-Key': 'YOUR_API_KEY' } }
)
const { data } = await res.json()
console.log(`Windows: ${data.length}, enabled: ${data.filter(w => w.enabled).length}`)
JavaScript — OAuth application
const res = await fetch(
`https://vibecode.bitrix24.com/v1/infra/servers/${serverId}/wake-schedules`,
{
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
}
)
Response fields
| Field | Type | Description |
|---|---|---|
success |
boolean | Always true on success |
data |
array | The server's windows, including disabled ones |
data[].id |
string | Window ID |
data[].serverId |
string (UUID) | ID of the owning server |
data[].cronExpr |
string | The window's cron expression |
data[].timezone |
string | The window's IANA timezone |
data[].label |
string | null | Window label |
data[].lead |
number | null | Margin in seconds before the cronExpr moment. null means the server's or platform's margin is used |
data[].enabled |
boolean | Whether the window is active |
data[].source |
string | How the window was created. Always "MANUAL" for windows created through this CRUD |
data[].lastFiredAt |
string (ISO 8601) | null | Timestamp of the last confirmed firing |
data[].wakeAttemptStartedAt |
string (ISO 8601) | null | Internal scheduler claim marker, normally null |
data[].lastWakeLateAt |
string (ISO 8601) | null | Timestamp of the last late wake. null if there have been no late wakes |
data[].createdAt |
string (ISO 8601) | Record creation date |
data[].updatedAt |
string (ISO 8601) | Date of the last update to the record |
Response example
{
"success": true,
"data": [
{
"id": "cm38x02qp0001ml08g7k3h2a",
"serverId": "e765edfc-ba0a-43de-b8ea-838dd872c522",
"cronExpr": "0 9 * * 1-5",
"timezone": "America/New_York",
"label": "daily report",
"lead": null,
"enabled": true,
"source": "MANUAL",
"lastFiredAt": "2026-07-10T06:00:04.000Z",
"wakeAttemptStartedAt": null,
"lastWakeLateAt": null,
"createdAt": "2026-07-03T08:12:00.000Z",
"updatedAt": "2026-07-03T08:12:00.000Z"
},
{
"id": "cm38x19rt0002ml08a1z9k7b",
"serverId": "e765edfc-ba0a-43de-b8ea-838dd872c522",
"cronExpr": "0 22 * * *",
"timezone": "America/New_York",
"label": "nightly cleanup",
"lead": 300,
"enabled": false,
"source": "MANUAL",
"lastFiredAt": null,
"wakeAttemptStartedAt": null,
"lastWakeLateAt": null,
"createdAt": "2026-07-05T11:40:00.000Z",
"updatedAt": "2026-07-08T09:02:00.000Z"
}
]
}
Error response example
404 — server not found:
{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Server not found"
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| 401 | MISSING_API_KEY |
The X-Api-Key header is missing |
| 401 | INVALID_API_KEY |
The API key is invalid or expired |
| 403 | SERVER_ROLE_FORBIDDEN |
You are on this server's development team with the Developer role, and this operation is open to the Administrator role. error.hint carries your role, the required threshold and the list of calls that are open to you. Role breakdown — List servers |
| 404 | NOT_FOUND |
The server was not found, was deleted, or belongs to a different API key while you are not on its development team |
| 429 | RATE_LIMITED |
The platform's overall request rate limit was exceeded |
Full list of shared error codes — Errors.
Known specifics
- Not gated by the feature's per-account status. Unlike creating and updating, listing works even while scheduled wake is not enabled for the Bitrix24 account or for Galaxy apps (
WAKE_SCHEDULE_DISABLEDandWAKE_SCHEDULE_GALAXY_DISABLEDare never returned here) — so the server owner sees already-declared windows regardless of whether the feature is currently available to their account. - Item order. The array is sorted by window creation date (
createdAt, ascending) — newer windows appear last.