curl --request GET \
--url https://inboxapp.com/api/v1/threads \
--header 'Authorization: Bearer <token>'import requests
url = "https://inboxapp.com/api/v1/threads"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://inboxapp.com/api/v1/threads', 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://inboxapp.com/api/v1/threads",
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: Bearer <token>"
],
]);
$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://inboxapp.com/api/v1/threads"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://inboxapp.com/api/v1/threads")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://inboxapp.com/api/v1/threads")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"threads": [
{
"id": "df6jbw4h36...",
"platform": "twitter",
"platformId": "1234567890",
"done": true,
"assigneeId": "df6jbw4h36...",
"lastMessageTimestamp": "2025-08-22T12:00:00.000Z",
"computedSortTimestamp": "2025-08-22T12:00:00.000Z",
"createdAt": "2025-08-22T12:00:00.000Z",
"status": "active",
"variant": "unencrypted",
"accountLinkId": "df6jbw4h36...",
"isSyncing": false,
"isRequest": false,
"typingIndicatorsEnabled": true,
"lastMessage": {
"id": "df6jbw4h36...",
"content": "Hey, I'm reaching out from Acme Agency...",
"authorId": "df6jbw4h36...",
"createdAt": "2025-08-22T12:00:00.000Z",
"userId": "df6jbw4h36...",
"campaignId": "df6jbw4h36..."
},
"prospect": {
"platform": "twitter",
"platformId": "1566123362161725440",
"externalId": "l44e15irdq4db30i77cgphhx",
"documentId": 858224163,
"displayName": "Inbox",
"username": "InboxApp_",
"handle": "@InboxApp_",
"image": "https://pbs.twimg.com/profile_images/1954360649393295360/rwp-vVt6.jpg",
"imageNormalized": "https://pbs.twimg.com/profile_images/1954360649393295360/rwp-vVt6.jpg",
"bio": "Social Selling CRM Close deals faster, stay organized, and never miss an opportunity. Starting with X",
"location": "San Francisco, CA",
"profileUrl": "https://x.com/InboxApp_",
"websiteUrl": "https://inboxapp.com",
"websiteDomain": "inboxapp.com",
"verified": "business",
"profileType": "business",
"isProtected": false,
"followerCount": 3068,
"followingCount": 288,
"postCount": 836,
"engagementCount": 2613,
"listedCount": 18,
"platformCreatedAt": "2022-09-03T17:58:06.000Z",
"firstSeenAt": "2024-07-09T14:08:49.000Z",
"lastUpdatedAt": "2025-11-10T18:03:16.000Z",
"lastEnrichedAt": "2025-11-10T18:03:16.000Z",
"lastActiveAt": "2025-11-10T12:00:00.000Z",
"source": "cached",
"isFresh": true,
"isStale": false,
"confidence": 0.85,
"accountStatus": "active",
"platformData": {
"isVerifiedBlue": false,
"isVerifiedGold": true,
"isVerifiedGray": false,
"professionalCategory": "986",
"urlEntities": [],
"bannerUrl": "https://pbs.twimg.com/profile_banners/1566123362161725440/1753273968",
"tweetsCount": 836,
"favoritesCount": 2613,
"rawData": {}
},
"context": {
"tags": [
"df6jbw4h36..."
],
"statusId": "df6jbw4h36...",
"valuation": 599,
"notes": "This prospect is a potential customer."
}
}
}
],
"nextCursor": {
"timestamp": "2023-11-07T05:31:56Z",
"id": "<string>"
}
}List threads
List threads ordered by recency with advanced filtering
curl --request GET \
--url https://inboxapp.com/api/v1/threads \
--header 'Authorization: Bearer <token>'import requests
url = "https://inboxapp.com/api/v1/threads"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://inboxapp.com/api/v1/threads', 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://inboxapp.com/api/v1/threads",
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: Bearer <token>"
],
]);
$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://inboxapp.com/api/v1/threads"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://inboxapp.com/api/v1/threads")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://inboxapp.com/api/v1/threads")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"threads": [
{
"id": "df6jbw4h36...",
"platform": "twitter",
"platformId": "1234567890",
"done": true,
"assigneeId": "df6jbw4h36...",
"lastMessageTimestamp": "2025-08-22T12:00:00.000Z",
"computedSortTimestamp": "2025-08-22T12:00:00.000Z",
"createdAt": "2025-08-22T12:00:00.000Z",
"status": "active",
"variant": "unencrypted",
"accountLinkId": "df6jbw4h36...",
"isSyncing": false,
"isRequest": false,
"typingIndicatorsEnabled": true,
"lastMessage": {
"id": "df6jbw4h36...",
"content": "Hey, I'm reaching out from Acme Agency...",
"authorId": "df6jbw4h36...",
"createdAt": "2025-08-22T12:00:00.000Z",
"userId": "df6jbw4h36...",
"campaignId": "df6jbw4h36..."
},
"prospect": {
"platform": "twitter",
"platformId": "1566123362161725440",
"externalId": "l44e15irdq4db30i77cgphhx",
"documentId": 858224163,
"displayName": "Inbox",
"username": "InboxApp_",
"handle": "@InboxApp_",
"image": "https://pbs.twimg.com/profile_images/1954360649393295360/rwp-vVt6.jpg",
"imageNormalized": "https://pbs.twimg.com/profile_images/1954360649393295360/rwp-vVt6.jpg",
"bio": "Social Selling CRM Close deals faster, stay organized, and never miss an opportunity. Starting with X",
"location": "San Francisco, CA",
"profileUrl": "https://x.com/InboxApp_",
"websiteUrl": "https://inboxapp.com",
"websiteDomain": "inboxapp.com",
"verified": "business",
"profileType": "business",
"isProtected": false,
"followerCount": 3068,
"followingCount": 288,
"postCount": 836,
"engagementCount": 2613,
"listedCount": 18,
"platformCreatedAt": "2022-09-03T17:58:06.000Z",
"firstSeenAt": "2024-07-09T14:08:49.000Z",
"lastUpdatedAt": "2025-11-10T18:03:16.000Z",
"lastEnrichedAt": "2025-11-10T18:03:16.000Z",
"lastActiveAt": "2025-11-10T12:00:00.000Z",
"source": "cached",
"isFresh": true,
"isStale": false,
"confidence": 0.85,
"accountStatus": "active",
"platformData": {
"isVerifiedBlue": false,
"isVerifiedGold": true,
"isVerifiedGray": false,
"professionalCategory": "986",
"urlEntities": [],
"bannerUrl": "https://pbs.twimg.com/profile_banners/1566123362161725440/1753273968",
"tweetsCount": 836,
"favoritesCount": 2613,
"rawData": {}
},
"context": {
"tags": [
"df6jbw4h36..."
],
"statusId": "df6jbw4h36...",
"valuation": 599,
"notes": "This prospect is a potential customer."
}
}
}
],
"nextCursor": {
"timestamp": "2023-11-07T05:31:56Z",
"id": "<string>"
}
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Filter by specific account links. Omit to include all accounts, or provide an array of account link IDs to filter by specific accounts.
^[0-9a-z]+$The ID of the thread to start pagination from. Must be used together with cursorTimestamp. Cannot be combined with the cursor object parameter.
^[0-9a-z]+$The timestamp of the thread to start pagination from. Must be used together with cursorId. Cannot be combined with the cursor object parameter.
"2025-11-10T18:03:16.000Z"
Pagination cursor using bracket notation. Omit to start from the beginning. Prefer using cursorId and cursorTimestamp instead for simpler query string encoding.
Show child attributes
Show child attributes
Inbox view to filter threads. 'default' shows active threads, 'no-reply' shows threads awaiting response, 'requests' shows message requests, 'archived' shows archived threads.
default, no-reply, requests, archived "default"
"no-reply"
"requests"
"archived"
Advanced filtering options for threads. Pass null or omit to disable all filters.
Show child attributes
Show child attributes
Maximum number of threads to return per page. Defaults to 20, maximum 100.
1 <= x <= 10020
Was this page helpful?