Semantic search
Describe the companies you want in plain language, including who they sell to.
Put a description in semantic_query and we match it against what each company does and who it sells to.
{ "semantic_query": "practice management software for independent dental practices" }Writing good queries
- Say who the customers are. "Software for independent dental practices" finds vendors that sell to dental practices, not the practices themselves.
- Name the product. "Practice management software" is better than "software".
- Keep hard constraints in filters. Country, size,
customer_typesandcustomer_segmentswork as strict yes/no filters; put them in filters rather than in the sentence. - One idea per query. For two different products, run two searches.
Scores
Each result includes match.score (0–1) and a short AI-written match.reason explaining the match. Results are
sorted by score.
- Above 0.8: strong matches.
- 0.6–0.8: usually relevant; check the reason.
- Below 0.6: loosely related.
Use min_score to drop weaker matches. Even without it, very weak matches are never returned, so a search for
something rare returns few results rather than unrelated companies. Pass the same min_score to /companies/count
to see how many you'll get; semantic counts stop at 1,000 (total_capped: true means there are more).
Weighting
semantic_weight (0–1, default 0.7) balances relevance against company size and web traffic. Lower it to favour
larger, better-known companies among good matches.