---
title: "A project's recent background activity and queued searches"
method: GET
path: "/projects/{project_id}/checks"
tags: ["Checks"]
---

# A project's recent background activity and queued searches

`GET /projects/{project_id}/checks`

## Request

- Base URL: `https://adslighthouse.com/api/v1`
- URL: `https://adslighthouse.com/api/v1/projects/{project_id}/checks`
- Auth: HTTP bearer

Lists a project's background activity newest first: search checks, page captures and reviews with status running, completed or failed, plus rows for scheduled runs that were skipped because the check allowance was used up (Search check capacity) or billing was paused. searches counts search checks waiting in the queue or running now. latest_on_demand_run summarizes the most recent run_realtime_check run; poll get_check_status for a specific run. next_scheduled_check_at is when the next scheduled check starts, the moment the app's header counts down to; it is null when nothing is scheduled (manual monitoring, no monitored keyword, or a plan that cannot run checks). Failure details are not exposed; a failed search is retried by the system when that is safe.

## Path parameters

- `project_id` string, required: The project: its id, its brand domain (for example nike.example) or its exact project or brand name. Unknown or ambiguous references return not_found; call list_projects then.

## Query parameters

- `limit` integer: Items per page, 1 to 200.
- `cursor` string: The next_cursor value from the previous page. Omit it for the first page.

## Response `200`

A project's recent background activity and queued searches

- object
  - `data` object[], required
    - `id` string, required
    - `activity` string, required: What ran: Search checks, Page captures, Search check capacity (a scheduled run skipped because the allowance was used up), Billing paused, and others.
    - `status` 'running' | 'completed' | 'failed', required
    - `results_saved` integer, required: Rows saved by this job, such as one checked page.
    - `started_at` string, required
    - `ended_at` string, nullable, required
  - `next_cursor` string, nullable, required: Pass as cursor to get the next page; null on the last page.
  - `searches` object, required
    - `queued` integer, required: Search checks waiting to run.
    - `running` integer, required: Search checks running now.
  - `latest_on_demand_run` object, nullable, required
    - `run_id` string, required
    - `total` integer, required
    - `completed` integer, required
    - `failed` integer, required
    - `pending` integer, required
    - `expired` boolean, required
  - `next_scheduled_check_at` string, nullable, required: ISO 8601 start of the next scheduled check; null when none is scheduled.
  - `request_id` string

## Other responses

- `400`: Invalid parameters, cursor or body.
- `401`: Missing, invalid, expired or revoked credential.
- `403`: The credential lacks the write scope, the plan does not include the API, or the allowance is used up.
- `404`: Unknown project, keyword or run in this account.
- `409`: The idempotency key was already used for a different request.
- `429`: Rate limit reached. Retry after the Retry-After seconds.
- `503`: The requested service or file is temporarily unavailable.

---

[API](https://skmtc.dev/adslighthouse/apis/ads-lighthouse-api.md) · [All operations](https://skmtc.dev/adslighthouse/apis/ads-lighthouse-api/llms.txt) · [OpenAPI document](https://skmtc.dev/adslighthouse/apis/ads-lighthouse-api/revisions/e1a4a40b11a9?raw)
