Get Results
curl --request GET \
--url https://api.lobstr.io/v1/results \
--header 'Authorization: <authorization>'import requests
url = "https://api.lobstr.io/v1/results"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://api.lobstr.io/v1/results', 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/results",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$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/v1/results"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.lobstr.io/v1/results")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lobstr.io/v1/results")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"post_url": "<string>",
"post_id": "<string>",
"post_code": "<string>",
"record_type": "<string>",
"source_tab": "<string>",
"search_keyword": "<string>",
"scraped_at": {},
"text_content": "<string>",
"published_at": {},
"language": "<string>",
"topic_tag": "<string>",
"hashtags": "<any>",
"mentions": "<any>",
"mentioned_users": "<any>",
"mentioned_accounts": "<any>",
"like_count": {},
"reply_count": {},
"repost_count": {},
"quote_count": {},
"share_count": {},
"view_count": {},
"has_media": true,
"media_type": "<string>",
"media_urls": "<any>",
"media_width": 123,
"media_height": 123,
"has_audio": true,
"accessibility_caption": "<string>",
"is_gif": true,
"music_title": "<string>",
"music_artist": "<string>",
"urls": "<any>",
"link_title": "<string>",
"is_paid_partnership": true,
"is_pinned": true,
"is_edited": true,
"is_spoiler": true,
"is_ai_generated": true,
"reply_control": "<string>",
"is_reply": true,
"reply_to_username": "<string>",
"is_quote_post": true,
"quoted_post_url": "<string>",
"is_repost": true,
"reposted_post_url": "<string>",
"username": "<string>",
"user_id": "<string>",
"display_name": "<string>",
"profile_url": "<string>",
"profile_pic_url": "<string>",
"is_verified": true,
"is_private": true,
"followers_count": {},
"bio": "<string>",
"bio_links": "<any>",
"profile_tags": "<any>",
"profile_pic_hd_url": "<string>",
"fediverse_enabled": true
}Threads Scraper
Get Results
Retrieve scraped data from Threads Scraper
GET
/
v1
/
results
Get Results
curl --request GET \
--url https://api.lobstr.io/v1/results \
--header 'Authorization: <authorization>'import requests
url = "https://api.lobstr.io/v1/results"
headers = {"Authorization": "<authorization>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<authorization>'}};
fetch('https://api.lobstr.io/v1/results', 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/results",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <authorization>"
],
]);
$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/v1/results"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<authorization>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.lobstr.io/v1/results")
.header("Authorization", "<authorization>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.lobstr.io/v1/results")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<authorization>'
response = http.request(request)
puts response.read_body{
"post_url": "<string>",
"post_id": "<string>",
"post_code": "<string>",
"record_type": "<string>",
"source_tab": "<string>",
"search_keyword": "<string>",
"scraped_at": {},
"text_content": "<string>",
"published_at": {},
"language": "<string>",
"topic_tag": "<string>",
"hashtags": "<any>",
"mentions": "<any>",
"mentioned_users": "<any>",
"mentioned_accounts": "<any>",
"like_count": {},
"reply_count": {},
"repost_count": {},
"quote_count": {},
"share_count": {},
"view_count": {},
"has_media": true,
"media_type": "<string>",
"media_urls": "<any>",
"media_width": 123,
"media_height": 123,
"has_audio": true,
"accessibility_caption": "<string>",
"is_gif": true,
"music_title": "<string>",
"music_artist": "<string>",
"urls": "<any>",
"link_title": "<string>",
"is_paid_partnership": true,
"is_pinned": true,
"is_edited": true,
"is_spoiler": true,
"is_ai_generated": true,
"reply_control": "<string>",
"is_reply": true,
"reply_to_username": "<string>",
"is_quote_post": true,
"quoted_post_url": "<string>",
"is_repost": true,
"reposted_post_url": "<string>",
"username": "<string>",
"user_id": "<string>",
"display_name": "<string>",
"profile_url": "<string>",
"profile_pic_url": "<string>",
"is_verified": true,
"is_private": true,
"followers_count": {},
"bio": "<string>",
"bio_links": "<any>",
"profile_tags": "<any>",
"profile_pic_hd_url": "<string>",
"fediverse_enabled": true
}Retrieve scraped data from your Threads Scraper runs.
Headers
string
required
Your API authentication token. Value:
Token YOUR_API_KEYQuery Parameters
string
required
Hash of the squid to get results from
integer
Page number (default: 1)
Result Fields
string
Direct URL of the post. Example:
https://www.threads.net/@zuck/post/Cabcde12345string
Numeric identifier of the post. Example:
3456789012345string
Short code of the post used in its URL. Example:
Cabcde12345string
Row type: post or reply. Example:
poststring
Where the row came from: posts, search, or permalink. Example:
postsstring
Keyword or tag searched for (search rows only). Example:
AIdatetime
UTC timestamp at which the row was collected. Example:
2026-09-15T10:00:00Zstring
Full text of the post. Example:
Just launched something new!datetime
Publication date of the post in UTC. Example:
2026-09-14T20:00:00Zstring
Language detected by Threads for the post. Example:
enstring
Topic/community tag attached to the post. Example:
Technologyjson
Hashtags found in the post text.
json
Handles mentioned in the post text.
json
Handles that Threads itself resolved as mentions.
json
Accounts Threads resolved as mentions, with user ids.
bigint
Number of likes. Example:
45231bigint
Number of direct replies. Example:
1847bigint
Number of reposts. Example:
3210bigint
Number of quote posts. Example:
892bigint
Number of shares. Example:
5612bigint
Number of views (only on single-post crawls). Example:
1200000boolean
True when the post carries at least one image, video, or carousel. Example:
falsestring
Kind of media: text, image, video, carousel, or audio. Example:
textjson
URLs of the post media.
integer
Width in pixels of the post media. Example:
1080integer
Height in pixels of the post media. Example:
1080boolean
True when the attached video carries audio. Example:
falsestring
Alt text of the media.
boolean
True when the post attaches a GIF. Example:
falsestring
Title of the music track attached to the post.
string
Artist of the music track.
json
External links in the post.
string
Title of the link preview attached to the post.
boolean
True when the post is flagged as a paid partnership. Example:
falseboolean
True when the post is pinned. Example:
falseboolean
True when the post text was edited. Example:
falseboolean
True when the media is marked as a spoiler. Example:
falseboolean
True when Threads flags the post as AI-generated. Example:
falsestring
Who is allowed to reply to the post. Example:
everyoneboolean
True when the post is a reply to another post. Example:
falsestring
Handle of the account this post replies to.
boolean
True when the post quotes another post. Example:
falsestring
URL of the quoted post.
boolean
True when the post is a repost. Example:
falsestring
URL of the reposted post.
string
Handle of the post author. Example:
zuckstring
Numeric identifier of the post author. Example:
314216string
Display name of the post author. Example:
Mark Zuckerbergstring
URL of the post author profile. Example:
https://www.threads.net/@zuckstring
Profile picture of the post author. Example:
https://scontent.example.com/v/t51.2885-19/zuck_profile.jpgboolean
True when the post author is verified. Example:
trueboolean
True when the post author account is private. Example:
falsebigint
Number of followers (profile crawls only). Example:
12500000string
Biography of the crawled profile (profile crawls only).
json
Links listed in the profile biography.
json
Topic tags displayed on the profile.
string
Highest resolution profile picture (profile crawls only).
boolean
True when the profile is reachable on the fediverse. Example:
trueCode Examples
curl -G https://api.lobstr.io/v1/results \
-H "Authorization: Token YOUR_API_KEY" \
-d "squid=7308ae543e6abc70438d6b968d3a1b38" \
-d "page=1"
import requests
response = requests.get(
"https://api.lobstr.io/v1/results",
headers={"Authorization": "Token YOUR_API_KEY"},
params={"squid": "7308ae543e6abc70438d6b968d3a1b38", "page": 1},
)
print(response.json())
Response
200
{"total_results": 1, "data": [{"post_id": "3456789012345", "text_content": "Just launched something new!", "username": "zuck", "like_count": 45231, "reply_count": 1847, "published_at": "2026-09-14T20:00:00Z", "is_verified": true}]}