---
title: "Trigger a signal scan cycle (admin)"
method: POST
path: "/v1/signals/scan"
tags: ["Signals"]
---

# Trigger a signal scan cycle (admin)

`POST /v1/signals/scan`

## Request

- Base URL: `https://api.marketintell.ai`
- URL: `https://api.marketintell.ai/v1/signals/scan`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Run the unified scanner once and write any signals it produces. Empty body is valid (defaults apply). Admin scope only.

## Request body

- object
  - `max_tokens` integer: Accepted for back-compat; no longer honored by the unified scanner.

## Response `200`

Scan cycle result

- object
  - `success` boolean
  - `data` object
    - `scores_produced` integer
    - `signals_written` integer
    - `filter_vetoes` integer
    - `pricing_failures` integer
    - `skipped` integer
    - `errors` integer
    - `disabled_by_flag` boolean

## Other responses

- `403`: Missing admin scope

---

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