---
title: "Trigger a new check session"
method: POST
path: "/v1/check-sessions/trigger"
tags: ["Check sessions", "Triggers"]
deprecated: true
---

# Trigger a new check session

`POST /v1/check-sessions/trigger`

> **Deprecated.**

Starts a check session for each check that matches the provided target filters. If no filters are given, matches all eligible checks.

This endpoint does not wait for the check session to complete. Use the `GET /v1/check-sessions/{checkSessionId}/completion` or `GET /v1/check-sessions/{checkSessionId}` endpoints to track progress if needed.

Standard alerting rules apply to finished check runs.

Equivalent to the _Schedule Now_ button in the UI.

## Request body

- TriggerCheckSessionRequestPayload
  - `target` TriggerCheckSessionTarget
    - `matchTags` Model27[] — Match checks with the given tags. Group tags also match. The value is a two-dimensional array. The top level array defines `OR` conditions, and the second level `AND` conditions. Tags can also be prefixed with `!` to only match checks without those tags. Example: `[[a, b], [a, c, !d]]` means `(a && b) || (a && c && !d)`.
      - string[]
    - `checkId` string[] — Match checks with the given identifiers.
  - `refreshCache` boolean — If true, the runner will skip existing caches and install dependencies from scratch. This applies only to Playwright Check Suites.

## Response `201`

Returns a check session for each check matching target conditions.

- TriggerCheckSessionResponse — Returns a check session for each check matching target conditions.
  - `sessions` CheckSession[], required — A list of check sessions, with one check session for each check.
    - `checkSessionId` string, required — The unique identifier of the check session.
    - `checkSessionLink` string, required — A link to the check session.
    - `checkId` string, required — The ID of the check.
    - `checkType` 'AGENTIC' | 'API' | 'BROWSER' | 'ICMP' | 'MULTI_STEP' | 'TCP' | 'PLAYWRIGHT' | 'TRACEROUTE' | 'URL' | 'DNS' | 'SSL' | 'GRPC', required
    - `name` string
    - `status` 'STARTED' | 'PROGRESS' | 'FAILED' | 'PASSED' | 'DEGRADED' | 'PROGRESS_FAILED' | 'PROGRESS_DEGRADED' | 'TIMED_OUT' | 'CANCELLED', required — The status of the check session.
    - `startedAt` string, date-time, required — The date and time when the session started.
    - `stoppedAt` string, date-time, nullable — The date and time when the session stopped.
    - `timeElapsed` number, required — The time the check session took, in milliseconds.
    - `runLocations` string[], required — The run locations of the check session.
    - `runSource` 'CLI_DEPLOY' | 'DEPLOYMENT' | 'DEPLOYMENT_CACHE_WARMER' | 'EDITOR' | 'GROUP_RUN_ALL' | 'LEGACY_TRIGGER' | 'SCHEDULER' | 'SCHEDULE_NOW' | 'SLACK_RERUN' | 'TEST_NO_RECORD' | 'TEST_RECORD' | 'TRIGGER_NO_RECORD' | 'TRIGGER_RECORD' | 'TRIGGER_API', nullable — The source that triggered the check session.

## Other responses

- `401` — Unauthorized
- `402` — Payment Required
- `403` — Forbidden
- `404` — Returned when there are no matching checks.
- `429` — Too Many Requests

---

[API](https://skmtc.net/checklyhq/apis/checkly-public-api.md) · [All operations](https://skmtc.net/checklyhq/apis/checkly-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/checklyhq/checkly-public-api/revisions/87d29dc7b4fe/schema)
