{"openapi":"3.0.3","info":{"title":"RivalSweeper Signals API (Beta)","version":"1.6.0","description":"BETA. Pay-per-call eCommerce competitive-intelligence signals for AI agents and pipelines. Prepaid credits (1 credit = $0.02). No data = no charge. Every response is freshness-stamped. Coverage is growing during beta; the free check_brand_data_coverage tool always reflects current availability. MCP endpoint: POST https://mcp.rivalsweeper.com/mcp","contact":{"email":"nir@rivalsweeper.com","url":"https://www.rivalsweeper.com/solutions/signals-api"}},"servers":[{"url":"https://mcp.rivalsweeper.com"}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Signals API key (rsk_...)"},"apiKey":{"type":"apiKey","in":"header","name":"X-API-Key"}}},"security":[{"bearer":[]},{"apiKey":[]}],"paths":{"/v1/coverage":{"get":{"summary":"Signal coverage + freshness for a domain (free)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Coverage map"},"401":{"description":"Missing/invalid key"}}}},"/v1/signals/promotions":{"get":{"summary":"Active promotions for a domain (1 credit; no data = no charge)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Promotions with freshness stamp"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/price":{"get":{"summary":"Price stats + samples for a domain (1 credit)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}},{"name":"query","in":"query","required":false,"schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":50}}],"responses":{"200":{"description":"Price stats"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/readiness":{"get":{"summary":"6-pillar AI-readiness score (1 credit)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Score + pillars"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/dna-competitors":{"get":{"summary":"Last-known DNA competitor set for a brand (2 credits; no data = no charge)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Competitor set + brand DNA profile"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/top-urls":{"get":{"summary":"Homepage top links (up to 10) enriched from catalog, grouped Products/Categories/Content (2 credits; no data = no charge)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Grouped top links + per-link pricing/stock/status + comment on unsupported signals"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/snapshot":{"get":{"summary":"Full brand snapshot bundle (15 credits)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Bundled signals"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/history":{"get":{"summary":"Monthly price/stock-status change history (5cr <=3mo, 8cr 4-12mo, 13cr 13-24mo)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}},{"name":"signal","in":"query","required":false,"schema":{"type":"string","enum":["price","stock_status"]}},{"name":"months","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":24}}],"responses":{"200":{"description":"Monthly buckets"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/alerts":{"get":{"summary":"Significant competitor changes: price moves >10%, new promos, stock flips (2 credits)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90,"default":7}}],"responses":{"200":{"description":"Alert feed + summary"},"402":{"description":"Insufficient credits"}}}},"/v1/signals/changes":{"get":{"summary":"Raw domain change feed grouped by property (2 credits)","parameters":[{"name":"domain","in":"query","required":true,"schema":{"type":"string"}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90,"default":7}},{"name":"property","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"Changes grouped by property"},"402":{"description":"Insufficient credits"}}}},"/v1/data-request":{"post":{"summary":"Request a specific signal for a domain (free)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"domain":{"type":"string"},"signal":{"type":"string"},"note":{"type":"string"}},"required":["domain","signal"]}}}},"responses":{"200":{"description":"Request accepted"}}}},"/v1/monitoring/request":{"post":{"summary":"Request monitoring for a new domain (free, needs positive balance)","requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"domain":{"type":"string"}},"required":["domain"]}}}},"responses":{"200":{"description":"Request accepted / already active"},"402":{"description":"Positive balance required"}}}},"/v1/account/balance":{"get":{"summary":"Current prepaid credit balance","responses":{"200":{"description":"Balance"}}}},"/v1/account/usage":{"get":{"summary":"Your usage & credit balance: calls + credits consumed, overall and per tool (free)","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":365,"default":30}}],"responses":{"200":{"description":"Balance + windowed/lifetime usage + per-tool breakdown"},"401":{"description":"Missing/invalid key"}}}}}}