- Test this endpoint in the playground
- Check out official Python client
Run a search query. This accepts a natural language query as query parameter along with additional settings. It returns a list of profiles that match the query and orders them by relevance.
The query can be:
- a simple search query like "software engineer from Ohio"
- a more complex query like "Find me engineers in California speaking at least basic english working in software industry with experience at FAANG with 2+ years of experience and at least 500 followers and at least BS degree".
- a full JD-style query that describes the ideal candidate in detail along with job description, responsibilities, requirements, etc.
If the query is already structured (for example JSON, structured text, or a boolean expression), you have two main options:
- Use the query parameter and pass the structured query as is. This is the simplest approach. Pearch.ai will interpret structured parts and priorities written in free-form text (such as “must have” or “very important”).
- Use the custom_filters parameter and map some or all structured parts to it. This gives you more control over filtering.
Use parameters to control tradeoffs between speed and quality. Here are some recipes:
- For highest quality results (30-180 seconds) use pro search with insights and profile scoring enabled:
{"query": "<YOUR QUERY HERE>", "type": "pro", "insights": true, "profile_scoring": true} - For medium to high quality results use "fast" search (<30s).
{"query": "<YOUR QUERY HERE>", "type": "fast", "insights": true, "profile_scoring": true} - If you want to implement pagination, pass the
thread_idof the previous request to the next request with increasedlimit.
Results are generally returned in the order of decreasing relevancy. However, you may notice results with out of order score values in some cases especially when requesting large number of results. It should be safe to use stable sorting by score field on the client side in this cases. Note that score field is only calculated and returned when profile_scoring=true.
Check out other parameters below to adjust speed vs quality and additional data that can be returned by the endpoint.
Cost: (number of profiles returned) × (sum of credits for each of type, insights, profile_scoring, high_freshness, reveal_emails, reveal_phones)
