Curly

LinkedIn Jobs API for structured company job data.

Monitor the companies that matter, return unique public job records as JSON, and choose between fast listing discovery or full job detail enrichment.

  • Up to 100 companies
  • No LinkedIn login
  • $0.50 per 1,000 results
Date posted
curl -X POST \
  "https://api.apify.com/v2/acts/curly~linkedin-jobs-scraper/run-sync-get-dataset-items?format=json" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  --data '{
  "companies": [
    "openai",
    "microsoft"
  ],
  "locations": [
    "United States",
    "Remote"
  ],
  "jobTitles": [
    "Software Engineer"
  ],
  "maxResultsPerUrl": 10,
  "postedLimit": "month",
  "sortBy": "date",
  "includeDetails": false
}'

Store the Apify token in an environment variable. Never expose it in browser code.

Built for company monitoring instead of a broad job seeker feed.

  • Start from the companies that matter

    Send LinkedIn company page names or URLs instead of rebuilding a broad keyword search for every target account.

  • Choose speed or full job details

    Use fast mode for recurring hiring signals or request descriptions, salary, applicants, criteria, and application metadata.

  • $0.50 per 1,000 stored jobs

    Pay for unique results written to the dataset rather than failed searches or duplicate jobs removed during a run.

A company first LinkedIn job search API.

Broad job search APIs begin with a title and location, then return roles from whichever employers match. Curly reverses that model. The company list is required, while titles, locations, posting age, result limits, and full detail enrichment remain optional.

This makes the API suitable for repeatable target account monitoring. A workflow can scan the same companies every day, keep the LinkedIn job ID as a stable key, and route only newly observed roles into research, sales, recruiting, or analytics systems.

Fast listing discovery or full job details.

Use includeDetails: false when the signal only needs a role, company, location, publication date, and source URL. This avoids visiting every job page and is the preferred mode for frequent monitoring.

Enable detail enrichment when a downstream workflow needs the public description, employment criteria, salary, applicant count, workplace type, expiration, or application metadata. Missing public values remain empty instead of being guessed.

Know which fields each API mode returns.

FieldsFast modeFull detailsPurpose
job_id, job_urlIncludedIncludedStable source identity and verification
title, company_name, locationIncludedIncludedCore company hiring signal
published_at, scraped_atIncludedIncludedPosting and collection timestamps
description, employment_typeNot requestedWhen publicRole context and employment criteria
salary, applicants, workplace_typeNot requestedWhen publicQualification and prioritization
application, benefits, expires_atNot requestedWhen publicApplication and listing lifecycle data
search_keyword, search_locationIncludedIncludedTrace the filter that found each record
details_statusnot_requestedcomplete or unavailableDistinguish missing data from skipped enrichment

LinkedIn job posting API versus job search data.

LinkedIn talent integrations are designed for approved partners that publish and manage jobs for customers. They should not be confused with an open public API for searching LinkedIn job listings. Curly is an independent public data workflow and is not affiliated with or endorsed by LinkedIn.

OptionAccessBest forSearch data
Official LinkedIn talent APIsApproved partner accessPublishing and managing jobs for customersNot a general public job search API
Curly free scraperNo account requiredOne company and up to 10 lightweight recordsBrowser based JSON and CSV export
Curly API on ApifyApify API tokenCompany monitoring, bulk data and automationUp to 100 companies with optional enrichment
Broad job database APIProvider accountMarket wide job discovery by keywordCompany lists usually require downstream filtering

Turn job data into company hiring signals.

Scheduled company scans can reveal investment in a function, movement into a new location, or repeated demand for a skill. The signal becomes more useful when the workflow preserves the company, title, location, dates, source URL, and filters that found each record.

Ready to run company job data by API?

Open the Curly Actor to create a token, test the input, schedule recurring runs, or connect the JSON dataset to another system.

Open API on Apify

Common LinkedIn Jobs API questions.