Add Tasks
curl --request POST \
--url https://api.lobstr.io/v2/squid/{squid_id}/task \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>'import requests
url = "https://api.lobstr.io/v2/squid/{squid_id}/task"
headers = {
"Authorization": "<authorization>",
"Content-Type": "<content-type>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': '<content-type>'}
};
fetch('https://api.lobstr.io/v2/squid/{squid_id}/task', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.lobstr.io/v2/squid/{squid_id}/task",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.lobstr.io/v2/squid/{squid_id}/task"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "<content-type>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.lobstr.io/v2/squid/{squid_id}/task")
.header("Authorization", "<authorization>")
.header("Content-Type", "<content-type>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lobstr.io/v2/squid/{squid_id}/task")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = '<content-type>'
response = http.request(request)
puts response.read_bodyLinkedIn Profile Scraper
Add Tasks
Add LinkedIn profile URLs to scrape using the lobstr.io API
POST
/
v2
/
squid
/
{squid_id}
/
task
Add Tasks
curl --request POST \
--url https://api.lobstr.io/v2/squid/{squid_id}/task \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>'import requests
url = "https://api.lobstr.io/v2/squid/{squid_id}/task"
headers = {
"Authorization": "<authorization>",
"Content-Type": "<content-type>"
}
response = requests.post(url, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': '<content-type>'}
};
fetch('https://api.lobstr.io/v2/squid/{squid_id}/task', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.lobstr.io/v2/squid/{squid_id}/task",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>",
"Content-Type: <content-type>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.lobstr.io/v2/squid/{squid_id}/task"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "<authorization>")
req.Header.Add("Content-Type", "<content-type>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.lobstr.io/v2/squid/{squid_id}/task")
.header("Authorization", "<authorization>")
.header("Content-Type", "<content-type>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lobstr.io/v2/squid/{squid_id}/task")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<authorization>'
request["Content-Type"] = '<content-type>'
response = http.request(request)
puts response.read_bodyAdd LinkedIn profile URLs as tasks to your squid. The scraper will extract comprehensive profile data from each LinkedIn profile you provide.
You can use various LinkedIn profile URL formats, including international versions.
Headers
string
required
Your API authentication token. Value:
Token YOUR_API_KEYstring
required
Request body format. Value:
application/jsonURL Formats
Supported URL formats:https://www.linkedin.com/in/username/
https://linkedin.com/in/username
https://fr.linkedin.com/in/username/ (international)
The URL must be a valid LinkedIn profile URL containing /in/ followed by the user’s identifier.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| url | string | Yes | LinkedIn profile URL to scrape |
You can add profiles in bulk by making multiple API requests or using the batch upload feature.
The scraper accepts both standard and international LinkedIn profile URLs (e.g., fr.linkedin.com, de.linkedin.com).
Use Sales Navigator lead export URLs or regular LinkedIn profile URLs - both work with this scraper.
Code Examples
curl -X POST "https://api.lobstr.io/api/v2/squid/YOUR_SQUID_ID/task" \
-H "Authorization: Token YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "https://www.linkedin.com/in/williamhgates/"
}'
import requests
API_TOKEN = "YOUR_API_TOKEN"
SQUID_ID = "YOUR_SQUID_ID"
url = f"https://api.lobstr.io/api/v2/squid/{SQUID_ID}/task"
headers = {
"Authorization": f"Token {API_TOKEN}",
"Content-Type": "application/json"
}
data = {
"url": "https://www.linkedin.com/in/williamhgates/"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
Response
200
{
"id": "task_abc123def456",
"squid_id": "YOUR_SQUID_ID",
"url": "https://www.linkedin.com/in/williamhgates/",
"status": "pending",
"created_at": "2024-01-15T10:30:00Z"
}
⌘I