Update Settings
curl --request POST \
--url https://api.lobstr.io/v1/squids/{squid_hash} \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"params": {},
"params.max_results": 123,
"params.max_unique_results_per_run": 123,
"params.listing_details": true
}
'import requests
url = "https://api.lobstr.io/v1/squids/{squid_hash}"
payload = {
"params": {},
"params.max_results": 123,
"params.max_unique_results_per_run": 123,
"params.listing_details": True
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "<content-type>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': '<content-type>'},
body: JSON.stringify({
params: {},
'params.max_results': 123,
'params.max_unique_results_per_run': 123,
'params.listing_details': true
})
};
fetch('https://api.lobstr.io/v1/squids/{squid_hash}', 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/v1/squids/{squid_hash}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'params' => [
],
'params.max_results' => 123,
'params.max_unique_results_per_run' => 123,
'params.listing_details' => true
]),
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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.lobstr.io/v1/squids/{squid_hash}"
payload := strings.NewReader("{\n \"params\": {},\n \"params.max_results\": 123,\n \"params.max_unique_results_per_run\": 123,\n \"params.listing_details\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
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/v1/squids/{squid_hash}")
.header("Authorization", "<authorization>")
.header("Content-Type", "<content-type>")
.body("{\n \"params\": {},\n \"params.max_results\": 123,\n \"params.max_unique_results_per_run\": 123,\n \"params.listing_details\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lobstr.io/v1/squids/{squid_hash}")
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>'
request.body = "{\n \"params\": {},\n \"params.max_results\": 123,\n \"params.max_unique_results_per_run\": 123,\n \"params.listing_details\": true\n}"
response = http.request(request)
puts response.read_bodyFacebook Marketplace Scraper
Update Settings
Configure settings for your Facebook Marketplace Scraper squid
POST
/
v1
/
squids
/
{squid_hash}
Update Settings
curl --request POST \
--url https://api.lobstr.io/v1/squids/{squid_hash} \
--header 'Authorization: <authorization>' \
--header 'Content-Type: <content-type>' \
--data '
{
"params": {},
"params.max_results": 123,
"params.max_unique_results_per_run": 123,
"params.listing_details": true
}
'import requests
url = "https://api.lobstr.io/v1/squids/{squid_hash}"
payload = {
"params": {},
"params.max_results": 123,
"params.max_unique_results_per_run": 123,
"params.listing_details": True
}
headers = {
"Authorization": "<authorization>",
"Content-Type": "<content-type>"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<authorization>', 'Content-Type': '<content-type>'},
body: JSON.stringify({
params: {},
'params.max_results': 123,
'params.max_unique_results_per_run': 123,
'params.listing_details': true
})
};
fetch('https://api.lobstr.io/v1/squids/{squid_hash}', 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/v1/squids/{squid_hash}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'params' => [
],
'params.max_results' => 123,
'params.max_unique_results_per_run' => 123,
'params.listing_details' => true
]),
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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.lobstr.io/v1/squids/{squid_hash}"
payload := strings.NewReader("{\n \"params\": {},\n \"params.max_results\": 123,\n \"params.max_unique_results_per_run\": 123,\n \"params.listing_details\": true\n}")
req, _ := http.NewRequest("POST", url, payload)
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/v1/squids/{squid_hash}")
.header("Authorization", "<authorization>")
.header("Content-Type", "<content-type>")
.body("{\n \"params\": {},\n \"params.max_results\": 123,\n \"params.max_unique_results_per_run\": 123,\n \"params.listing_details\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lobstr.io/v1/squids/{squid_hash}")
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>'
request.body = "{\n \"params\": {},\n \"params.max_results\": 123,\n \"params.max_unique_results_per_run\": 123,\n \"params.listing_details\": true\n}"
response = http.request(request)
puts response.read_bodyUpdate the configuration of your Facebook Marketplace Scraper squid. Pass crawler-specific settings inside the
params object.
Headers
string
required
Your API authentication token. Value:
Token YOUR_API_KEYstring
required
Must be application/json. Value:
application/jsonBody
object
Crawler-specific settings. See fields below.
Settings Fields
integer
Maximum number of listings to collect per task. Leave empty for unlimited.
integer
Maximum number of unique listings retrieved across all tasks in the entire run. Leave empty for unlimited.
boolean
Visit each listing’s detail page to collect additional fields: full description, condition, precise location (latitude/longitude), seller profile, discount price, and structured listing attributes. Requires one additional request per listing.
Code Examples
curl -X POST "https://api.lobstr.io/v1/squids/YOUR_SQUID_HASH" \
-H "Authorization: Token YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Facebook Marketplace Paris",
"params": {
"max_results": 200,
"listing_details": false
}
}'
import requests
API_KEY = "YOUR_API_KEY"
BASE_URL = "https://api.lobstr.io/v1"
headers = {"Authorization": f"Token {API_KEY}"}
squid_hash = "YOUR_SQUID_HASH"
response = requests.post(f"{BASE_URL}/squids/{squid_hash}",
headers=headers,
json={
"name": "Facebook Marketplace Paris",
"params": {
"max_results": 200,
"listing_details": False
}
}
)
data = response.json()
print(f"Squid updated: {data['name']}")
Response
201
{
"id": "YOUR_SQUID_HASH",
"name": "Facebook Marketplace Paris",
"crawler": {
"id": "facebook-marketplace-scraper",
"name": "Facebook Marketplace Scraper",
"slug": "facebook-marketplace-scraper"
},
"params": {
"max_results": 200,
"listing_details": false
},
"concurrency": 1,
"export_unique_results": true,
"to_complete": true,
"no_line_breaks": false,
"status": "idle"
}
⌘I