Docs / Get started

Quickstart

Get a key, make one call, see one useful record. About five minutes.

  1. 1

    Get your API key

    Create a free account and copy your key from the dashboard. Keys start with ls_live_. Keep it server-side.

    export LEADSETS_KEY="ls_live_…"
  2. 2

    Make your first search

    Ten revenue leaders at US SaaS companies with 20–200 people.

    TypeScriptPythoncURL
    import { Leadsets } from "@leadsets/sdk";
    
    const ls = new Leadsets(process.env.LEADSETS_KEY);
    const res = await ls.people.search({
      function: ["revenue"], seniority: ["vp", "head"],
      employees: "20-200", country: "US", industry: "saas",
      limit: 10,
    });
    console.log(res.items[0].match_reasons, res.usage);
  3. 3

    Read the response

    Every response carries what you were charged and what's left, so your agent can pace itself.

    {
      "items": [{ "person_id": "p_123", "full_name": "Jane Example", "match_score": 92 }],
      "usage": { "search_records_charged": 10, "search_records_remaining_5h": 490, "search_requests_remaining_5h": 2489 },
      "next_cursor": "c_9f2…",
      "request_id": "req_abcdef"
    }

Endpoints

MethodRouteWhat it does
POST/v1/people/searchPeople filter search
POST/v1/companies/searchCompany filter search
POST/v1/people/enrichPerson fields and verified email when available
POST/v1/companies/enrichCompany details for a domain
POST/v1/emails/verifyVerification waterfall, single or batch
POST/v1/scrape/companyStructured company homepage
POST/v1/scrape/jobsHiring facts from careers pages
GET/v1/jobs/{id}Status of an async batch or scrape
GET/v1/usageRecords and requests per five hours, records per week

Over a limit, you get 429 with a Retry-After header and a machine-readable error.type. Paid operations accept an Idempotency-Key, so retries never double-charge.

Was this page useful?Next: Connect via MCP →

Let your agent do the list building.

1,000 free records. No card. First useful result in minutes.

Get a free API key