List Agents

List the agents configured for your workspace.

Returns a paginated list of your agents — keyword detection, job-change tracking, and watchlist monitors (competitor, partner, customer, influencer, and champion).

List agents

GET/api/v2/agents

Query parameters

ParameterTypeDescription
pageintegerPage number (starts at 1). Defaults to 1.
page_sizeintegerNumber of agents per page. Defaults to 10, max 25.

Example request

curl "https://api.getsillage.com/api/v2/agents?page=1&page_size=10" \
  -H "Authorization: Bearer $SILLAGE_API_KEY"
const response = await fetch(
  'https://api.getsillage.com/api/v2/agents?page=1&page_size=10',
  {
    headers: {
      Authorization: `Bearer ${process.env.SILLAGE_API_KEY}`,
    },
  },
)

const result = await response.json()
import { request } from 'node:https'

const req = request(
  new URL('https://api.getsillage.com/api/v2/agents?page=1&page_size=10'),
  {
    headers: {
      Authorization: `Bearer ${process.env.SILLAGE_API_KEY}`,
    },
  },
  (res) => {
    let data = ''
    res.on('data', (chunk) => {
      data += chunk
    })
    res.on('end', () => {
      console.log(JSON.parse(data))
    })
  },
)

req.end()
import os
import requests

response = requests.get(
    "https://api.getsillage.com/api/v2/agents",
    params={"page": "1", "page_size": "10"},
    headers={"Authorization": f"Bearer {os.environ['SILLAGE_API_KEY']}"},
    timeout=30,
)
response.raise_for_status()
result = response.json()

Example response

{
  "data": [
    {
      "id": 42,
      "name": "LinkedIn keyword monitor",
      "type": "keyword_detection",
      "enabled": true,
      "parameters": {
        "tracking_keywords": ["fundraising", "series a", "hiring sales"],
        "start_date": "2026-01-01"
      },
      "created_at": "2026-06-18T10:00:00.000Z",
      "updated_at": "2026-06-18T10:00:00.000Z"
    },
    {
      "id": 43,
      "name": "Job Updates",
      "type": "job_update",
      "enabled": true,
      "parameters": {
        "job_titles": ["VP Sales", "Head of Growth"],
        "seniority_levels": ["vp", "director"],
        "target_persona": ["Sales", "Revenue"]
      },
      "created_at": "2026-06-18T10:00:00.000Z",
      "updated_at": "2026-06-18T10:00:00.000Z"
    }
  ],
  "meta": {
    "pagination": {
      "page": 1,
      "page_size": 10,
      "page_count": 1,
      "total": 2
    }
  }
}

Response fields

FieldTypeDescription
dataarrayThe page of agents.
data[].idintegerIdentifier of the agent.
data[].namestringDisplay name of the agent.
data[].typestringAgent type. One of: keyword_detection, job_posting_keyword_detection, job_update, competitor, partner, customer, influencer, champion, or unconfigured (agent with no watchlist — not yet set up, or its watchlist was unbound; empty parameters, null watchlist_kind/watchlist_id).
data[].enabledbooleanWhether the agent is currently active.
data[].parametersobjectType-dependent parameters. See the parameters shape table below.
data[].created_atstringISO 8601 creation timestamp.
data[].updated_atstringISO 8601 last-update timestamp.
meta.pagination.pageintegerCurrent page number.
meta.pagination.page_sizeintegerNumber of agents per page.
meta.pagination.page_countintegerTotal number of pages.
meta.pagination.totalintegerTotal number of v2 agents in your workspace.

Parameters shape by type

The parameters object fields depend on the agent type. All fields are optional in the response (legacy rows may be sparse).

keyword_detection

FieldTypeDescription
tracking_keywordsarray<string>Keywords Sillage monitors on LinkedIn.
start_datestringISO 8601 date — only posts published after this date are scraped.

job_posting_keyword_detection

FieldTypeDescription
tracking_keywordsarray<string>Keywords Sillage monitors in your tracked companies' job postings.

job_update

FieldTypeDescription
job_titlesarray<string>Job titles that trigger detection.
seniority_levelsarray<string>Seniority levels to filter on.
company_domains_to_scrapearray<string>Target company domains.
target_personaarray<string>Target persona labels.
target_persona_locationsarray<string>Geographic filters for target personas.
interested_byobject{ prospects: boolean, customers: boolean } filters.
keywords_for_social_detectionarray<string>Keywords used for social post matching.
author_rolesarray<string>Author role filters.
author_industriesarray<string>Author industry filters.
target_linkedin_profilesarray<string>Specific LinkedIn profile URLs to track.

competitor, partner, customer, influencer, champion

Watchlist monitors have no additional parameters — parameters is always an empty object ({}).

Errors

StatusDescription
401The API key is missing or invalid.
422Invalid page or page_size query parameter.
429Too many requests.

On this page