Documentation Index Fetch the complete documentation index at: https://leadmagic.io/docs/llms.txt
Use this file to discover all available pages before exploring further.
Job Search
Search jobs with frontend-friendly filters. The /v3/jobs/search route resolves company domains, country codes, tags, occupation taxonomy, and title terms into normalized filter IDs before running a bounded query.
Responses never include logo or company_logo. Company objects include IDs, names, website URLs, and LinkedIn URLs only when full rows are returned.
Pricing
Mode Credits Full search 1 credit per returned job/signal No returned jobs 0 credits Helpers, catalogs, stats 0 credits
Example
Use this minimal body in the playground first. It is fast, low-risk, and returns a small page:
curl -X POST 'https://api.leadmagic.io/v3/jobs/search' \
-H 'X-API-Key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"titles": { "include": ["Engineer"] },
"location": { "countries": ["US"] },
"occupationTaxonomy": { "level2": ["DevOps"] },
"postedWithin": 30,
"limit": 5,
"totalMode": "none"
}'
Start with limit: 5 and totalMode: "none" while testing. Add facets, deep mode, salary, company, and taxonomy filters only after the base search works.
Use this fuller body when you want to combine all supported filters:
{
"titles" : {
"include" : [ "Software Engineer" , "DevOps Engineer" ],
"exclude" : [ "Intern" ],
"vector" : false
},
"occupationTaxonomy" : {
"level1" : [ "Engineering" ],
"level2" : [ "DevOps" ],
"level3" : []
},
"companies" : {
"include" : [ "stripe.com" , "datadoghq.com" ],
"exclude" : [ "meta.com" ],
"ids" : []
},
"location" : {
"countries" : [ "US" , "GB" ],
"regions" : [],
"states" : [],
"cities" : []
},
"tags" : {
"include" : [ "kubernetes" , "terraform" ],
"exclude" : []
},
"salary" : {
"min_usd" : 120000 ,
"max_usd" : 280000
},
"seniority" : [ "SE" , "EX" ],
"languages" : [ "en" ],
"hasRemote" : true ,
"jobTypeIds" : [],
"industryIds" : [],
"companyTypeIds" : [],
"companySizeCodes" : [],
"postedAfter" : "2026-05-01" ,
"limit" : 25 ,
"totalMode" : "capped" ,
"mode" : "fast" ,
"autoResolve" : true
}
Request fields
Job title terms. Uses indexed title search.
Request semantic title matching where available. The response includes a warning if the request falls back to the standard title path.
occupationTaxonomy.level1
Broad occupation families. Results include occupation_taxonomy.level1.id and occupation_taxonomy.level1.name.
occupationTaxonomy.level2
Mid-level occupation categories. Results include occupation_taxonomy.level2.id and occupation_taxonomy.level2.name.
occupationTaxonomy.level3
Specific normalized job titles. Results include occupation_taxonomy.level3.id and occupation_taxonomy.level3.name.
Company domains or names. Domains are resolved exactly; names use fuzzy helper matching.
Company domains or names to exclude.
Exact company IDs from helper responses.
Country codes, names, or IDs.
State or province names or IDs.
Tag names or IDs. Tags are resolved before search and can attach occupation taxonomy metadata.
Tag names or IDs to exclude.
Minimum normalized USD salary.
Maximum normalized USD salary.
Experience levels. Use EN, MI, SE, or EX.
Two-letter language codes such as en, de, or fr.
Filter for jobs that support remote work.
Job type IDs from the job type catalog.
Company size bucket codes.
Include jobs posted on or after a date in YYYY-MM-DD format.
Include jobs posted before or on a date in YYYY-MM-DD format.
Include jobs posted within the last N days.
Number of jobs to return. Maximum is 50.
Cursor from pagination.next_cursor for the next page.
Include a short description snippet. Use only when you need description text.
Request facet metadata where available.
Count mode. Use none, capped, or exact.
Query mode. Use fast by default. Use deep only for broader text matching.
Resolve friendly strings like company domains, countries, tags, and occupation taxonomy values before search.
Response Shape
signals[].occupation_taxonomy.level1
Broad occupation taxonomy level with id and name.
signals[].occupation_taxonomy.level2
Mid-level occupation taxonomy level with id and name.
signals[].occupation_taxonomy.level3
Specific normalized title level with id and name.
Cursor for the next page. Use this instead of deep offset pagination.
Vector Use semantic title matching for broader title intent.
Facets Request filter summary metadata with results.
Deep Expand matching when standard filters are too strict.
Helpers Resolve companies, tags, occupation taxonomy values, titles, locations, and catalogs.
Stats See jobs data freshness and searchable dimension counts.
Job Search v2 Previous jobs finder shape.
Your LeadMagic API key. Header name is case-insensitive (X-API-Key, X-API-KEY, x-api-key all work).
Include jobs posted within the last N days.
Cursor from pagination.next_cursor.
totalMode
enum<string>
default: capped
Available options:
none,
capped,
exact
Available options:
fast,
deep