---
title: "Bearer-authed cron: re-verify all active watches whose next_check_at has elapsed."
method: POST
path: "/v1/cron/refresh-watches"
tags: ["watch", "cron", "watch"]
---

# Bearer-authed cron: re-verify all active watches whose next_check_at has elapsed.

`POST /v1/cron/refresh-watches`

## Request

- Base URL: `https://api.etymolt.com`
- URL: `https://api.etymolt.com/v1/cron/refresh-watches`
- Auth: none declared

WO-5 background job. For each active watch whose next_check_at <= NOW(), run the canonical clearance pipeline, compare the canonical 3-value verdict against last_verdict, and insert a watch_events row with event_type='rechecked' or 'verdict_changed' as appropriate. Bumps next_check_at ahead by DEFAULT_NEXT_CHECK_DAYS. Webhook delivery is Sprint 2 proper — this endpoint only records events.

## Query parameters

- `limit` integer

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/etymolt/apis/etymolt-verify-ai-generated-brand-names.md) · [All operations](https://skmtc.dev/etymolt/apis/etymolt-verify-ai-generated-brand-names/llms.txt) · [OpenAPI document](https://skmtc.dev/etymolt/apis/etymolt-verify-ai-generated-brand-names/revisions/7228ffa1efa7?raw)
