---
title: "Start Manual Signal Scan"
method: POST
path: "/v2/projects/{project_id}/runs/{run_id}/signals/scans"
tags: ["signals-v2"]
---

# Start Manual Signal Scan

`POST /v2/projects/{project_id}/runs/{run_id}/signals/scans`

## Request

- Base URL: `https://api.galileo.ai`
- URL: `https://api.galileo.ai/v2/projects/{project_id}/runs/{run_id}/signals/scans`
- Auth: one of:
  - API key in header `Splunk-AO-API-Key`
  - API key in header `Galileo-API-Key`
  - OAuth 2
    - Password
    - Token URL: `https://api.galileo.ai/login`
  - HTTP basic

Start one manual Signal scan for a log stream and fixed telemetry window.

## Path parameters

- `project_id` string, uuid4, required
- `run_id` string, uuid4, required

## Request body

- SignalScanStartRequest: Fixed telemetry window requested for one manual Signal scan.
  - `window_start` string, date-time, required
  - `window_end` string, date-time, required
  - `model` string, nullable: Model alias for this scan. Required when the log stream has no saved configuration; otherwise the configured model is used.
  - `integration_id` string, uuid4, nullable: Integration selected for this scan's model.

## Response `202`

Successful Response

- SignalScanDetailResponse
  - `data` SignalScanDetail, required: Complete persisted state for one Signal scan.
    - `id` string, uuid4, required
    - `scan_number` integer, required
    - `trigger` 'ON_DEMAND' | 'SCHEDULED', required: How a Signal scan starts.
    - `status` 'QUEUED' | 'RUNNING' | 'COMPLETED' | 'FAILED', required: Execution state of a Signal scan.
    - `failure_reason` string, nullable: Reason the scan failed; absent for other statuses.
    - `window_start` string, date-time, required
    - `window_end` string, date-time, required
    - `started_at` string, date-time, nullable, required
    - `completed_at` string, date-time, nullable, required
    - `eligible_session_count` integer, nullable
    - `sampled_session_count` integer, nullable
    - `analyzed_session_count` integer, nullable
    - `skipped_oversized_session_count` integer, nullable
    - `sampled_span_count` integer, nullable
    - `signals_created` integer, nullable
    - `signals_updated` integer, nullable
    - `sampling_strategy` string, nullable, required
    - `model` string, required
    - `model_usage` object, nullable, required
    - `error` object, nullable, required

## Other responses

- `422`: Validation Error

## Changes

> 34 revisions in range; 2 not diffed.

- **2026-10-14** `9a61e9b565b0`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/galileo/apis/galileo-api-server/changes/v2/projects/:project_id/runs/:run_id/signals/scans/post.md)

---

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