Skip to main content

LinkedIn Job Details API

Written by Kadri - RichAPI Support Team

POST /linkedin_job_detail • Credits: 1 credit per call

LinkedIn Job Details returns the full detail of one LinkedIn job posting. Send a POST request with the LinkedIn job ID or the LinkedIn job URL. The response holds the job ID, the job title, the company name, the workplace type, the employment type and the plain-text job description. Each call costs 1 credit.

What does LinkedIn Job Details do?

A LinkedIn job search result carries a job ID, a title and a company name, and no description. LinkedIn Job Details closes that gap. The endpoint reads the public LinkedIn job page for the job ID or the job URL that you send. It returns the job posting as structured JSON in one synchronous response. The data source is LinkedIn. One call covers one job posting.

Which endpoint does LinkedIn Job Details use?

  • Method: POST

  • URL: https://api.richapi.ai/api/v1/linkedin_job_detail

  • Authentication: x-api-key header

  • Response: synchronous JSON

  • Credits: 1 credit per call

CAUTION: LinkedIn Job Details accepts POST only. A GET request returns status 405 with the message linkedin_job_detail only supports POST. Put every parameter in the request body, never in the query string.

How to send a LinkedIn Job Details request

  1. Copy your API key from the RichAPI dashboard.

  2. Open the LinkedIn job posting in a browser.

  3. Copy the job URL from the address bar.

  4. Set the url parameter to that job URL, or set the job_id parameter to the job ID.

  5. Send a POST request to https://api.richapi.ai/api/v1/linkedin_job_detail.

  6. Send the API key in the x-api-key header.

  7. Read the job fields from the element object in the response.

CAUTION: Each LinkedIn Job Details call costs 1 credit. One call covers one job posting.

cURL

curl -X POST https://api.richapi.ai/api/v1/linkedin_job_detail   
-H "x-api-key: YOUR_API_KEY"
-H "Content-Type: application/json"
-d '{
"url": "https://www.linkedin.com/jobs/view/4388248291"
}'

Python

import requests

response = requests.post(
"https://api.richapi.ai/api/v1/linkedin_job_detail",
headers={"x-api-key": "YOUR_API_KEY"},
json={"url": "https://www.linkedin.com/jobs/view/4388248291"},
timeout=60,
)
response.raise_for_status()
print(response.json())

Node.js

const response = await fetch("https://api.richapi.ai/api/v1/linkedin_job_detail", {
method: "POST",
headers: {
"x-api-key": "YOUR_API_KEY",
"Content-Type": "application/json",
},
body: JSON.stringify({
url: "https://www.linkedin.com/jobs/view/4388248291",
}),
});

const data = await response.json();
console.log(data);

What parameters does LinkedIn Job Details accept?

Parameter

Type

Required

Default

Description

job_id

string

No

""

The LinkedIn job ID, for example 4388248291. Send job_id or url.

url

string

No

""

The LinkedIn job URL, for example https://www.linkedin.com/jobs/view/4388248291. Send url or job_id.

Both parameters are optional on their own. One of the two must carry a value, because the endpoint needs one job identifier.

Which job identifier does LinkedIn Job Details accept?

LinkedIn Job Details accepts two job identifier formats. The job_id format is the numeric ID of the job posting, for example 4388248291. The url format is the public LinkedIn job page URL, for example https://www.linkedin.com/jobs/view/4388248291. The job ID is the last numeric segment of that URL.

Identifier that you hold

What to do

LinkedIn job ID

Send it as the job_id parameter.

LinkedIn job URL

Send it as the url parameter.

Job title and company name only

Send LinkedIn Job Search API first, then read the id field of each result.

How to search LinkedIn jobs and then fetch the job details

LinkedIn Job Search API returns a page of job results with an id field on each result. LinkedIn Job Details turns one such id into a full job posting. The two endpoints pair as a two-step flow: search wide, then fetch the detail of the interesting jobs only.

  1. Send a POST request to https://api.richapi.ai/api/v1/linkedin_job_search with your filters.

  2. Read the elements array from the search response.

  3. Pick the jobs that match your criteria.

  4. Send one POST request to https://api.richapi.ai/api/v1/linkedin_job_detail for each picked job.

  5. Set the job_id parameter to the id field of the search result.

import requests

BASE_URL = "https://api.richapi.ai/api/v1"
HEADERS = {"x-api-key": "YOUR_API_KEY", "Content-Type": "application/json"}

# Step 1: search LinkedIn jobs. One page returns up to 25 results.
search = requests.post(
f"{BASE_URL}/linkedin_job_search",
headers=HEADERS,
json={"title": "Backend Engineer", "location": "San Francisco", "page": 1},
timeout=60,
)
search.raise_for_status()
jobs = search.json().get("elements", [])

# Step 2: fetch the full detail of the first 10 jobs.
for job in jobs[:10]:
detail = requests.post(
f"{BASE_URL}/linkedin_job_detail",
headers=HEADERS,
json={"job_id": job["id"]},
timeout=60,
)
detail.raise_for_status()
element = detail.json().get("element")
if element is None:
continue
print(element["title"], element["companyName"], element["employmentType"])

What does the two-step flow cost?

LinkedIn Job Search costs 0.1 credit per job result returned. LinkedIn Job Details costs 1 credit per call. The example above returns 25 search results and fetches the detail of 10 jobs. One credit costs $0.02 on the 1,000 and 5,000 credit packs.

Step

Calls

Credits

Cost

LinkedIn Job Search, one page of 25 results

1

2.5

$0.05

LinkedIn Job Details, 10 jobs

10

10

$0.20

Total

11

12.5

$0.25

The detail calls dominate the cost. To hold the cost down, filter the search results first, then fetch the detail of the shortlist only.

What does LinkedIn Job Details return?

The response holds one element object with the job posting. This block is an example response for a remote full-time engineering job.

{
"element": {
"id": "4388248291",
"title": "Senior Backend Engineer",
"companyName": "Stripe",
"workplaceType": "remote",
"employmentType": "full_time",
"descriptionText": "Stripe builds payment infrastructure for the internet. As a Senior Backend Engineer on the Payments Platform team, you own the design, the delivery and the reliability of high-volume payment services. You need 5 or more years of backend experience with Go, Java or Ruby."
}
}

What does each LinkedIn Job Details response field mean?

Field

Type

Description

element

object

The full job posting. If RichAPI finds no job for the identifier, the value is null.

element.id

string

The LinkedIn job ID of the posting.

element.title

string

The job title as shown on LinkedIn.

element.companyName

string

The name of the company that posted the job.

element.workplaceType

string

The workplace type of the job, for example remote.

element.employmentType

string

The employment type of the job, for example full_time.

element.descriptionText

string

The plain-text job description from the LinkedIn job page.

How much does LinkedIn Job Details cost?

LinkedIn Job Details costs 1 credit per call, and one call covers one job posting. One credit costs $0.02 on the 1,000 and 5,000 credit packs. Larger packs cost less per credit. 500 calls cost 500 credits, and 500 credits cost $10.00.

Calls

Credits

Cost

1

1

$0.02

100

100

$2.00

500

500

$10.00

1,000

1,000

$20.00

10,000

10,000

$200.00

RichAPI charges a credit only for a successful call. A failed call costs no credit.

What errors does LinkedIn Job Details return?

An error response holds an error field with a text message.

Status

Meaning

What to do

400

The request body failed validation.

Correct the parameter that the message names. Send job_id or url.

401

The API key is missing, wrong or revoked.

Send a valid key in the x-api-key header.

402

Insufficient credits: the organization has no credit left for the call. Or Monthly spend limit reached: the team hit its monthly spend limit.

Buy credits in the RichAPI dashboard, or ask the organization owner to raise the spend limit, then send the request again.

403

Endpoint not available on your plan: this API key has no access to this endpoint.

Call GET /api/v1/my-endpoints to list the endpoints this key can use. Contact support for access.

404

The endpoint name is wrong.

Send the request to /linkedin_job_detail.

405

The request used a method other than POST.

Send the request again with POST and a JSON request body.

429

Rate limit exceeded (too many requests per second).

Wait for the Retry-After seconds, then retry the request.

500

The API failed.

Send the request again. If the failure repeats, contact support.

502

The upstream data provider failed.

Send the request again after a short wait.

504

The upstream data provider timed out.

Send the request again after a short wait.

For a retry loop, wait 1 second, then 2 seconds, then 4 seconds between attempts.

Frequently asked questions

What input does the LinkedIn Job Details API need?

The LinkedIn Job Details API needs one LinkedIn job identifier. Send the numeric job ID in the job_id parameter, or send the job page URL in the url parameter.

Does the LinkedIn Job Details API use GET or POST?

The LinkedIn Job Details API uses POST. A GET request returns status 405 with the message linkedin_job_detail only supports POST.

Where do I find the LinkedIn job ID?

The LinkedIn job ID is the last numeric segment of a LinkedIn job URL. In https://www.linkedin.com/jobs/view/4388248291, the job ID is 4388248291.

How much does the LinkedIn Job Details API cost per job?

The LinkedIn Job Details API costs 1 credit per call, and one call covers one job posting. One credit costs $0.02 on the 1,000 and 5,000 credit packs, so 1,000 job postings cost $20.00 there.

How do I find job IDs for the LinkedIn Job Details API?

Send LinkedIn Job Search API with your filters, then read the id field of each result in the elements array. Send each id to LinkedIn Job Details as the job_id parameter.

Can the LinkedIn Job Details API return many job postings in one call?

No. The LinkedIn Job Details API covers one job posting per call. For many job postings, send one call for each job ID.

Is the LinkedIn Job Details API synchronous?

Yes. The LinkedIn Job Details API returns the job posting in the same response. The endpoint needs no second call and no webhook.

Related articles

Did this answer your question?