API overview
The LeadSonar API gives you the same data and AI as the app, over HTTPS and JSON: count and browse leads for free, reveal or export the ones you want, score contacts against your ICP, and read company websites.
Base URL
Section titled “Base URL”https://app.leadsonar.ioAll endpoints live under /api/v1/.
Authentication
Section titled “Authentication”Create a key in the app under Settings → API Keys. Keys start with ls_live_ and are shown once — store it somewhere safe. Send it in the X-API-Key header on every request:
curl https://app.leadsonar.io/api/v1/credits \ -H "X-API-Key: ls_live_your_key_here"{ "balance": 50278, "total_earned": 50300, "total_spent": 22 }A missing key returns 401 Authentication required; a wrong one returns 401 Invalid API key. Requests spend the credits of the account that owns the key.
What’s free and what costs credits
Section titled “What’s free and what costs credits”| Free | Costs credits |
|---|---|
POST /leads/search — count matching leads | POST /leads/reveal — 1 credit per new lead |
POST /leads/browse — masked results | POST /leads/exports — 1 credit per lead delivered |
GET /leads/filters — valid filter values | POST /icp-score — 1 credit per contact |
GET /credits, listing your jobs | POST /scrape/jobs — 1 credit per domain, refunded if no text |
POST /enrich-csv — per lead, by the bundles you choose |
You’re never charged twice for the same lead: revealing someone again returns credits_charged: 0, and exports and browse results skip people you’ve already revealed.
The endpoints
Section titled “The endpoints”| Group | What it’s for |
|---|---|
| Leads | search to count, browse to page through masked results, reveal to unlock specific leads, exports for bulk CSV (up to 50,000 per export). |
| AI enrichment | icp-score grades one contact against your ICP in about a second. enrich-csv runs AI enrichment over a whole CSV as a background job. |
| Domain scrape | scrape/jobs reads company websites and returns their text — useful for your own AI prompts. |
| Account | credits for your balance. |
Retired endpoints
Section titled “Retired endpoints”POST /api/v1/enrich, /find-email and /find-phone (waterfall lookups) have been retired. They return 410 ENDPOINT_RETIRED. Use /leads/browse + /leads/reveal for contact data, or /enrich-csv for AI enrichment.