LinkedIn Job

Scrape public LinkedIn job posting information including title, company, location, description, and application details.

Endpoint

GET /api/linkedin/job

Generate Code with AI

Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.

Parameters

url string Required

LinkedIn job URL

use_cache boolean Optional

Whether to use cached results (default: false)

maximum_cache_age integer Optional

Maximum age of cached results in seconds

Request Examples

<?php

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'x-api-key: YOUR_API_KEY_HERE',
]);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
<?php

use Illuminate\Support\Facades\Http;

$response = Http::withHeaders([
    'x-api-key' => 'YOUR_API_KEY_HERE',
])->get('https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076');

return $response->json();
fetch('https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076', {
  headers: {
    'x-api-key': 'YOUR_API_KEY_HERE'
  }
})
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => console.error('Error:', error));
const axios = require('axios');

axios.get('https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076', {
  headers: {
    'x-api-key': 'YOUR_API_KEY_HERE'
  }
})
  .then(response => console.log(response.data))
  .catch(error => console.error('Error:', error));
import requests

headers = {
    'x-api-key': 'YOUR_API_KEY_HERE'
}

response = requests.get('https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076', headers=headers)
print(response.json())
require 'net/http'
require 'uri'
require 'json'

uri = URI.parse('https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076')
request = Net::HTTP::Get.new(uri)
request['x-api-key'] = 'YOUR_API_KEY_HERE'

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http|
  http.request(request)
end

puts JSON.parse(response.body)
package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
)

func main() {
    client := &http.Client{}
    req, _ := http.NewRequest("GET", "https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076", nil)
    req.Header.Set("x-api-key", "YOUR_API_KEY_HERE")

    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := ioutil.ReadAll(resp.Body)
    fmt.Println(string(body))
}
curl -X GET 'https://scrappa.co/api/linkedin/job?url=https%3A%2F%2Fwww.linkedin.com%2Fjobs%2Fview%2F4193260076' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Response Schema

JSON Response 200 OK
{
    "success": true,
    "job_id": "4193260076",
    "title": "Teamleitung SAP Consulting Development (all genders)",
    "company_name": "adesso SE",
    "company_url": "https://www.linkedin.com/company/adesso-se",
    "location": "Dortmund, Germany",
    "description": "<p>We are looking for an experienced team lead to drive our SAP consulting practice...</p>",
    "employment_type": "FULL_TIME",
    "date_posted": "2024-11-22",
    "valid_through": "2025-01-31",
    "url": "https://www.linkedin.com/jobs/view/4193260076",
    "apply_url": null,
    "cached": false,
    "cached_at": null
}

Try It Live

Test this endpoint in our interactive playground with real data.

Open in Playground