{"openapi":"3.1.0","info":{"title":"Seller Check API","version":"0.1.0","description":"A marketplace seller-reputation red-flags reference across six categories, a computed heuristic risk-score tool, a price-anomaly calculator, a review-pattern matcher, a pre-purchase checklist, an explicit scope note distinguishing seller reputation from product authenticity and checkout/site fraud, and a glossary.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://sellercheck.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/sellercheck/docs"},"termsOfService":"https://connectorbay.com/sellercheck/terms"},"servers":[{"url":"https://sellercheck.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/sellercheck/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/red_flag_categories":{"post":{"operationId":"red_flag_categories","summary":"The six categories of marketplace seller-reputation red flags this reference covers, with how many flags","description":"The six categories of marketplace seller-reputation red flags this reference covers, with how many flags\n    are in each. Use for \"what categories of seller red flags do you check\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"red_flag_categoriesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/red_flags_by_category":{"post":{"operationId":"red_flags_by_category","summary":"The specific red flags in one category (review patterns, account age signals, pricing anomalies,","description":"The specific red flags in one category (review patterns, account age signals, pricing anomalies,\n    communication red flags, listing quality, or policy signals). Use for \"what are the review-pattern red flags\n    for a marketplace seller\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"category":{"description":"A category id or name.","examples":["review_patterns","pricing anomalies"],"minLength":1,"title":"Category","type":"string"}},"required":["category"],"title":"red_flags_by_categoryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/red_flag_search":{"post":{"operationId":"red_flag_search","summary":"Free-text keyword search across every red flag in every category. Use for \"search seller red flags for","description":"Free-text keyword search across every red flag in every category. Use for \"search seller red flags for\n    off-platform payment\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"query":{"description":"Keyword to search for across all red flags.","minLength":1,"title":"Query","type":"string"}},"required":["query"],"title":"red_flag_searchArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/seller_risk_score":{"post":{"operationId":"seller_risk_score","summary":"Computes a heuristic 0-100 risk score (with a low/medium/high band and the specific contributing factors)","description":"Computes a heuristic 0-100 risk score (with a low/medium/high band and the specific contributing factors)\n    from seller-reputation figures you describe. This is a reference heuristic from what you tell it — it never\n    looks up a real account. Use for \"this seller has 3 reviews, a 12-day-old account, and is 45% below market\n    price, how risky is that\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"review_count":{"description":"Total number of reviews the seller has.","examples":[3],"minimum":0,"title":"Review Count","type":"integer"},"avg_rating":{"description":"Average star rating, 0-5.","examples":[4.8],"maximum":5,"minimum":0,"title":"Avg Rating","type":"number"},"account_age_days":{"description":"How old the seller account is, in days.","examples":[12],"minimum":0,"title":"Account Age Days","type":"integer"},"price_vs_market_pct":{"description":"How this item's price compares to the typical market price, as a signed percentage (-40 means 40% below market, +10 means 10% above).","examples":[-45],"title":"Price Vs Market Pct","type":"number"},"has_storefront_info":{"default":true,"description":"Does the storefront show complete, consistent business details?","title":"Has Storefront Info","type":"boolean"},"off_platform_contact_request":{"default":false,"description":"Has the seller asked to communicate or pay outside the platform?","title":"Off Platform Contact Request","type":"boolean"},"return_policy_stated":{"default":true,"description":"Does the listing/storefront state a return or refund policy?","title":"Return Policy Stated","type":"boolean"},"response_time_hours":{"anyOf":[{"minimum":0,"type":"number"},{"type":"null"}],"default":null,"description":"The seller's typical response time to buyer questions, in hours, if known.","title":"Response Time Hours"}},"required":["review_count","avg_rating","account_age_days","price_vs_market_pct"],"title":"seller_risk_scoreArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/review_pattern_check":{"post":{"operationId":"review_pattern_check","summary":"Keyword-matches a described review pattern against known suspicious patterns (review bursts, generic/","description":"Keyword-matches a described review pattern against known suspicious patterns (review bursts, generic/\n    templated text, missing verified-purchase markers, unrelated reviewer history, rating/count mismatches). Use\n    for \"is a sudden burst of 5-star reviews suspicious\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"description":{"description":"Describe the review pattern you're seeing.","examples":["a burst of 50 five-star reviews all posted this week","reviews that all sound the same"],"minLength":1,"title":"Description","type":"string"}},"required":["description"],"title":"review_pattern_checkArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/price_anomaly_check":{"post":{"operationId":"price_anomaly_check","summary":"Computes the percentage discount versus a typical market price and flags whether it falls in a normal,","description":"Computes the percentage discount versus a typical market price and flags whether it falls in a normal,\n    moderate, high, or extreme range — an extreme discount is the single most common signal of either a scam or\n    a non-genuine product. Use for \"is $40 for something that normally sells for $100 a red flag\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"item_price":{"description":"The listed price.","examples":[40],"exclusiveMinimum":0,"title":"Item Price","type":"number"},"typical_market_price":{"description":"What this item typically sells for elsewhere.","examples":[100],"exclusiveMinimum":0,"title":"Typical Market Price","type":"number"}},"required":["item_price","typical_market_price"],"title":"price_anomaly_checkArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/before_you_buy_checklist":{"post":{"operationId":"before_you_buy_checklist","summary":"A practical pre-purchase checklist for vetting a third-party marketplace seller before buying. Use for","description":"A practical pre-purchase checklist for vetting a third-party marketplace seller before buying. Use for\n    \"what should I check before buying from a marketplace seller I don't recognize\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"before_you_buy_checklistArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/scope_note":{"post":{"operationId":"scope_note","summary":"Explains explicitly what Seller Check does and does NOT cover: it's scoped to seller reputation only, not","description":"Explains explicitly what Seller Check does and does NOT cover: it's scoped to seller reputation only, not\n    whether a product itself is counterfeit (a separate product-authenticity question) and not whether a checkout\n    or website is fraudulent (a separate site/checkout-fraud question). Use for \"does this also check if the\n    product is fake\", \"is this the same as checking if a website is a scam\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"scope_noteArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/sellercheck_glossary":{"post":{"operationId":"sellercheck_glossary","summary":"Defines marketplace-seller-vetting terms — verified purchase, storefront, off-platform payment, price","description":"Defines marketplace-seller-vetting terms — verified purchase, storefront, off-platform payment, price\n    anchoring, review velocity. Use for \"what does review velocity mean\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A specific term to look up; omit to list all.","title":"Term"}},"title":"sellercheck_glossaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}