---
title: "Get detected signals for a tracked creator"
method: GET
path: "/v1/tracking/creators/{id}/signals"
tags: ["Tracking"]
---

# Get detected signals for a tracked creator

`GET /v1/tracking/creators/{id}/signals`

## Request

- Base URL: `https://api.virlo.ai`
- URL: `https://api.virlo.ai/v1/tracking/creators/{id}/signals`
- Auth: HTTP bearer

Recent tracking signals for this creator — outlier videos, meaningful follower spikes/declines, newly-covered subjects, and unreachable alerts. Each signal has a `type`, `severity` (info | notable | critical), `title`, and a `payload` with the specifics. These are the same events delivered via the tracking.* webhooks.

## Path parameters

- `id` string, required

## Query parameters

- `start_date` string
- `end_date` string
- `limit` number

## Response `200`

Creator signals

- TrackingSignalsResponseDto
  - `data` TrackingSignalDto[], required
    - `id` string, uuid, required
    - `type` 'outlier_video' | 'follower_spike' | 'follower_decline' | 'new_subject' | 'creator_unreachable', required
    - `severity` 'info' | 'notable' | 'critical', required
    - `title` string, required
    - `payload` object, required: Signal details; the keys depend on `type` (e.g. `platform`, `platform_handle`, `subjects` for new_subject). Same payload the tracking.* webhooks deliver.
    - `created_at` string, required
    - `read` boolean, required: Whether the signal was marked read.

## Other responses

- `401`: Unauthorized - missing or invalid API key
- `404`: Tracked creator not found
- `429`: Rate limit exceeded (`rate_limit_exceeded`); see the Retry-After header

---

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