MisarMisar Docs
MisarMailMisarBlogMisarReachMisarPostMisarDevMisarCoderMisarSEOMisar PlatformMisar SSO
API Reference

Competitors

POST /seo/competitors — find and rank the domains competing with you across a keyword set.

Given a keyword set, returns the domains that appear against them in search results, ranked by the visibility they capture.

POST/seo/competitors

Request body

projectIdstringbodyrequired

Owning project.

keywordsstring[]bodyrequired

Between 1 and 100 keywords to analyse.

locationCodenumberbodydefault: 2840

Numeric location code.

languageCodestringbodydefault: en

Two-letter language code.

resultTypesstring[]body

Which result types to count. Any of organic, paid, featured_snippet, local_pack.

excludeDomainsstring[]body

Domains to leave out of the results — typically your own.

includeSubdomainsbooleanbody

Treat subdomains as part of their parent domain.

sortBystringbody

One of visibility, traffic_estimate, avg_position, keyword_count.

limitnumberbodydefault: 50

Results to return, between 1 and 100.

offsetnumberbody

Result offset, between 0 and 1000.

Response fields

competitorsobject[]

Ranked competitor records.

Request
curl -X POST https://api.misar.io/seo/competitors \
  -H "Authorization: Bearer $MISARSEO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "projectId": "5b1c7d2e-…",
    "keywords": ["seo audit tool", "rank tracker", "backlink checker"],
    "resultTypes": ["organic", "featured_snippet"],
    "excludeDomains": ["acme.com"],
    "sortBy": "visibility",
    "limit": 25
  }'

Rate limit: 10 requests per 60 s.

Exclude yourself

Your own domain will otherwise dominate the ranking for the keywords you already own. Pass it in excludeDomains to see who you are actually competing against.

Status codes

CodeMeaning
200Competitors returned
400VALIDATION_ERROR — schema failure. The message is formatted <field path>: <reason>.
401UNAUTHENTICATED
404NOT_FOUND — project not found
429RATE_LIMITED