Skip to main content
POST
/
v1
/
scrape-linkedin-jobs
/
async
Scrape Linkedin Jobs
curl --request POST \
  --url https://api.automindz.co/v1/scrape-linkedin-jobs/async \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "titles_query": [
    "Account Executive",
    "Sales Manager"
  ],
  "locations": [
    "United States"
  ],
  "country": "United States",
  "rows": 50,
  "hours": 24,
  "job_types": [
    "full-time"
  ],
  "work_types": [
    "remote",
    "hybrid"
  ],
  "experience_levels": [
    "associate",
    "mid-senior level"
  ],
  "excluded_companies": [
    "Acme Staffing"
  ]
}
'
{
  "request_id": "run_linkedin_abc123",
  "status": "QUEUED"
}
Triggers a LinkedIn job search for one or more job titles and locations. The scraper builds the LinkedIn search, collects matching listings, optionally enriches each with full job and company detail, applies your exclusions, and returns structured job data. The pipeline runs asynchronously. Use the returned request_id to poll for results.
Timing guidance: Most searches complete within 1–4 minutes. Higher rows with include_job_details / include_company_details enabled take longer (one detail fetch per job). Poll every 15–30 seconds.

How it works

  1. Builds LinkedIn guest search URLs from your titles_query, locations, country, and filters
  2. Collects job cards across the result pages up to rows
  3. Removes excluded_companies / excluded_titles / excluded_industries and de-duplicates
  4. Optionally fetches each job’s detail page (include_job_details) and company page (include_company_details)
  5. Returns structured listings plus the search URLs used
Filters. job_types: full-time, part-time, contract, temporary, internship, volunteer, other. work_types: on-site, remote, hybrid. experience_levels: internship, entry level, associate, mid-senior level, director. hours limits to jobs posted in the last N hours; distance is a radius (e.g. "25" miles) around each location.

Example responses

{
  "request_id": "run_abc123xyz",
  "status": "COMPLETED",
  "result": {
    "titles_query": "Account Executive",
    "locations": ["United States"],
    "country": "United States",
    "search_urls": [
      "https://www.linkedin.com/jobs-guest/jobs/api/seeMoreJobPostings/search?keywords=Account%20Executive&location=United%20States"
    ],
    "total_found": 50,
    "jobs_scraped": 48,
    "successful_scrapes": 46,
    "failed_scrapes": 2,
    "jobs": [
      {
        "title": "Account Executive",
        "company_name": "Acme Corp",
        "company_url": "https://www.linkedin.com/company/acme",
        "location": "New York, NY",
        "job_url": "https://www.linkedin.com/jobs/view/3901234567",
        "linkedin_job_id": "3901234567",
        "description": "We are hiring an Account Executive to...",
        "posted_at": "2026-05-10",
        "posted_time_ago": "5 days ago",
        "applications_count": "47 applicants",
        "apply_url": "https://acme.com/careers/ae",
        "apply_type": "external",
        "salary": "$90,000 - $120,000",
        "seniority_level": "Mid-Senior level",
        "employment_type": "Full-time",
        "job_function": "Sales",
        "industries": "Software Development",
        "company_size": "201-500 employees",
        "company_website": "https://acme.com",
        "headquarters": "New York, NY"
      }
    ]
  },
  "started_at": "2026-05-15T10:00:00Z",
  "finished_at": "2026-05-15T10:02:31Z"
}
{
  "request_id": "run_def456uvw",
  "status": "COMPLETED",
  "result": {
    "titles_query": "Account Executive",
    "locations": ["Antarctica"],
    "country": "Antarctica",
    "search_urls": [
      "https://www.linkedin.com/jobs-guest/jobs/api/seeMoreJobPostings/search?keywords=Account%20Executive&location=Antarctica"
    ],
    "total_found": 0,
    "jobs_scraped": 0,
    "successful_scrapes": 0,
    "failed_scrapes": 0,
    "jobs": []
  },
  "started_at": "2026-05-15T10:00:00Z",
  "finished_at": "2026-05-15T10:00:48Z"
}
{
  "request_id": "run_ghi789rst",
  "status": "QUEUED",
  "result": null,
  "started_at": null,
  "finished_at": null
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
titles_query
required
locations
string[]
country
string
default:United States
rows
integer
default:50
Required range: 1 <= x <= 100
distance
string | null
hours
integer | null
Required range: x >= 1
job_types
enum<string>[] | null
Available options:
full-time,
part-time,
contract,
temporary,
internship,
volunteer,
other
work_types
enum<string>[] | null
Available options:
on-site,
remote,
hybrid
experience_levels
enum<string>[] | null
Available options:
internship,
entry level,
associate,
mid-senior level,
director
excluded_companies
string[] | null
excluded_titles
string[] | null
excluded_industries
string[] | null
include_company_details
boolean
default:true
include_job_details
boolean
default:true

Response

Successful Response

request_id
string
required
status
string
default:QUEUED