LinkedIn Profile Search
Find LinkedIn members by what they post and by their role. Describe the people you want in plain language; the search looks for public LinkedIn posts on the topic and for public profiles whose headline matches the role, reads each profile (headline, company, location, followers, about) and scores how well each person fits. You get profiles, not posts: each with a fit score, the reasons it matched and the posts that prove it. Public data only.
How it runs. The search runs in the background. This call returns a task_id at once. Poll GET /desearch/people/tasks/{task_id} every few seconds, read profiles with GET /desearch/people/tasks/{task_id}/results (they arrive while the search is still running), or download everything with GET /desearch/people/tasks/{task_id}/export?format=csv. You can pause, resume or cancel a search at any time. Results stay available for 30 days.
Billing. count profiles are reserved at the route price when the task is created (cost_usd on this response). When the search ends you pay only for the qualified profiles it delivered (minimum shown below); the rest of the reservation is returned automatically. A search that delivers no profiles costs nothing.
Price: $0.05 per qualified profile, minimum 2 profiles ($0.10) per search that finds any. A search that finds no one is free.
Billing metadata: successful billable responses include the X-Desearch-Cost-Usd, X-Desearch-Usage-Count, X-Desearch-Service, and X-Desearch-Currency headers. JSON object responses also include optional cost_usd, usage_count, service, and currency fields. For example, usage_count=10 at $0.015 / 1,000 resolves to cost_usd=0.00015. JSON arrays, text, and streaming responses keep their body shape and expose billing metadata only through headers.
Request
- Base URL: https://api.desearch.ai
- URL: https://api.desearch.ai/desearch/people/search/linkedin
- Auth: API key in header Authorization
Headers
Any unique string, e.g. a UUID. Sending the same key again returns the first search (HTTP 200) instead of starting and charging a new one.
Request body
Example request
{
"count": 25,
"filters": {
"countries": [
"United States",
"United Kingdom"
]
},
"query": "Heads of sales at fintech startups who post about outbound"
}Response
Same Idempotency-Key as an earlier search: that task, not charged again.
Changes
No recorded changes to this operation across all 1 revision of this API.