Skip to main content
GET
/
api
/
v1
/
projects
/
{projectId}
/
competitors
curl --request GET \
  --url 'https://app.finseo.ai/api/v1/projects/67a1c2d3e4f5061728394a5b/competitors?timeframe=30d&sortBy=mentions&limit=20' \
  --header 'Authorization: Bearer sk_live_xxxxxxxx'
{
  "data": {
    "competitors": [
      {
        "id": "c7d8e9f0-a1b2-4345-cdef-678901234abc",
        "name": "Finseo",
        "domain": "finseo.ai",
        "baseDomain": "finseo.ai",
        "isStarred": true,
        "isUserBrand": true,
        "totalMentions": 412,
        "visibleResults": 186,
        "averagePosition": 17.3,
        "sentimentScore": 0.77,
        "promptCount": 42
      },
      {
        "id": "d8e9f0a1-b2c3-4456-def0-789012345bcd",
        "name": "Competitor A",
        "domain": "competitor-a.com",
        "baseDomain": "competitor-a.com",
        "isStarred": false,
        "isUserBrand": false,
        "totalMentions": 389,
        "visibleResults": 172,
        "averagePosition": 21.4,
        "sentimentScore": 0.62,
        "promptCount": 42
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 15,
      "hasMore": false
    }
  }
}
Returns ranked competitors for AI visibility: mentions, visibility, average position, and sentiment. Use this to see how Finseo stacks up against other brands in ChatGPT, Claude, and Perplexity answers.
projectId
string
required
Project identifier.
timeframe
string
default:"30d"
Analysis window, e.g. 7d, 30d.
model
string
Filter tracking results to one model.
language
string
Filter prompts by language.
tags
string
JSON array or comma-separated prompt tags.
Filter by competitor name or domain substring.
sortBy
string
default:"mentions"
One of visibility, mentions, position, sentiment, name.
sortDir
string
default:"desc"
asc or desc.
page
integer
default:"1"
Page number.
limit
integer
default:"50"
Page size (1–500).
curl --request GET \
  --url 'https://app.finseo.ai/api/v1/projects/67a1c2d3e4f5061728394a5b/competitors?timeframe=30d&sortBy=mentions&limit=20' \
  --header 'Authorization: Bearer sk_live_xxxxxxxx'
{
  "data": {
    "competitors": [
      {
        "id": "c7d8e9f0-a1b2-4345-cdef-678901234abc",
        "name": "Finseo",
        "domain": "finseo.ai",
        "baseDomain": "finseo.ai",
        "isStarred": true,
        "isUserBrand": true,
        "totalMentions": 412,
        "visibleResults": 186,
        "averagePosition": 17.3,
        "sentimentScore": 0.77,
        "promptCount": 42
      },
      {
        "id": "d8e9f0a1-b2c3-4456-def0-789012345bcd",
        "name": "Competitor A",
        "domain": "competitor-a.com",
        "baseDomain": "competitor-a.com",
        "isStarred": false,
        "isUserBrand": false,
        "totalMentions": 389,
        "visibleResults": 172,
        "averagePosition": 21.4,
        "sentimentScore": 0.62,
        "promptCount": 42
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 15,
      "hasMore": false
    }
  }
}