Manage the competitors you monitor on FollowEngine.
GET /v1/competitorsReturns all competitors being monitored.
Parameters:
| Name | Type | Description |
|---|---|---|
status |
string | Filter: active, paused, error |
limit |
integer | Max 100, default 20 |
cursor |
string | Pagination cursor |
Response:
{
"competitors": [
{
"id": "comp_01h2x3y4z5",
"name": "Acme Corp",
"domain": "acmecorp.com",
"channels": ["google_ads", "meta_ads", "youtube", "tiktok"],
"status": "active",
"tags": ["enterprise", "saas"],
"created_at": "2026-01-15T10:00:00Z",
"last_signal_at": "2026-06-23T08:15:00Z"
}
],
"total": 12,
"has_more": false,
"next_cursor": null
}POST /v1/competitorsStart monitoring a new competitor.
Request:
{
"domain": "competitor.com",
"name": "Competitor Inc",
"channels": ["google_ads", "meta_ads", "search", "youtube"],
"tags": ["b2b", "mid-market"]
}| Field | Required | Description |
|---|---|---|
domain |
✅ | Primary domain to monitor |
name |
Display name (defaults to domain) | |
channels |
Channels to monitor. All if omitted. | |
tags |
Custom labels |
Available Channels:
| Channel | Tracks |
|---|---|
google_ads |
Google Search & Display ads |
meta_ads |
Facebook & Instagram ads |
tiktok_ads |
TikTok ad campaigns |
youtube |
YouTube channel content |
tiktok |
TikTok channel content |
search |
Google SERP visibility |
web |
Website & pricing changes |
GET /v1/competitors/{id}Returns full details for a single competitor.
PATCH /v1/competitors/{id}Update channels, tags, or pause monitoring.
{
"channels": ["google_ads", "search"],
"status": "paused",
"tags": ["enterprise"]
}DELETE /v1/competitors/{id}Stop monitoring. Returns 204 No Content.
GET /v1/competitors/{id}/signalsGet signals for a specific competitor. Supports channel, severity, since, and limit filters.