Skip to content

client.schedules

client.schedules — the schedules operations.

On AsyncKindgi every method is the same, awaited.

list(
*,
limit: int | None = None,
cursor: str | None = None,
status: Literal['active', 'paused'] | None = None,
timeout: float | None = None,
) -> ScheduleCollectionPage

List cron schedules. GET /v1/schedules

Cursor-paginated. Tombstoned rows excluded. Optional ?status=active|paused filter.

register(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
**fields: Any,
) -> ScheduleRecord

Register a cron schedule. POST /v1/schedules

Registers a kind=cron trigger. nextFireAt is precomputed from the cron expression at register time; the cron scheduler in the runtime fires due triggers. Malformed cron expressions return 400 trigger-invalid-config without registering.

get(*, timeout: float | None = None) -> ScheduleRecord

Fetch a cron schedule. GET /v1/schedules/{triggerId}

update(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
**fields: Any,
) -> ScheduleRecord

Update a cron schedule. PATCH /v1/schedules/{triggerId}

Partial merge on config. If config.cronExpression changes, nextFireAt is recomputed. label: null clears the label; omit to leave unchanged. Malformed cron expressions return 400 trigger-invalid-config.

pause(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
) -> ScheduleRecord

Pause a cron schedule. POST /v1/schedules/{triggerId}/pause

Idempotent-per-state: pausing an already-paused row returns 409 trigger-already-in-state.

resume(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
) -> ScheduleRecord

Resume a cron schedule. POST /v1/schedules/{triggerId}/resume

Recomputes nextFireAt so the scheduler picks up the resumed row on its next tick.

unregister(
*,
idempotency_key: str | None = None,
timeout: float | None = None,
) -> ScheduleUnregisterResult

Soft-delete a cron schedule (tombstone). POST /v1/schedules/{triggerId}/unregister

Tombstones the schedule; the cron scheduler ignores tombstoned triggers. Retention may hard-remove tombstoned triggers after the tombstone window.