Skip to content

Search Content Threads ​

GEThttps://api.repliz.com/public/research/threads/content/search

Search public content on Threads based on a keyword or phrase. Useful for discovery, analysis, or engagement purposes.

Endpoint Details ​

  • Authentication: Basic Auth (Authorization: Basic Base64(AccessKey:SecretKey))
  • Access Tier: Gold+

Parameters ​

ParameterTypeRequiredDescription
accountIdstringYesID of a connected Threads account, the _id from Get Account. The search runs with its access.
searchstringYesKeyword or phrase to search for.
sortstringNoSort order for search results. Options: TOP, RECENT. Default: TOP.
modestringNoSearch matching mode. Options: KEYWORD (search by keyword), TAG (search by topic tag). Default: KEYWORD.
typestringNoFilter content by media type. Options: TEXT, IMAGE, VIDEO.
sincenumberNoUnix timestamp (in seconds) for start date filter (must be used together with until).
untilnumberNoUnix timestamp (in seconds) for end date filter (must be used together with since).
usernamestringNoFilter posts by author's Threads username (e.g. replizofficial).
nextTokenstringNoCursor for the next page: the nextToken of the previous response. Leave it out for the first page. An empty nextToken in the response means there are no more pages.

Example Request ​

bash
curl -X GET "https://api.repliz.com/public/research/threads/content/search?accountId=680affa5ce12f2f72916f67e&search=Video&sort=TOP&mode=KEYWORD&type=TEXT" \
  -H "Authorization: Basic $(echo -n 'YOUR_ACCESS_KEY:YOUR_SECRET_KEY' | base64)"
javascript
import axios from 'axios';

const response = await axios.get('https://api.repliz.com/public/research/threads/content/search', {
  params: {
    accountId: '680affa5ce12f2f72916f67e',
    search: 'Video',
    sort: 'TOP',
    mode: 'KEYWORD',
    type: 'TEXT',
  },
  auth: {
    username: 'YOUR_ACCESS_KEY',
    password: 'YOUR_SECRET_KEY',
  },
});

console.log(response.data);
javascript
const credentials = btoa('YOUR_ACCESS_KEY:YOUR_SECRET_KEY');

const params = new URLSearchParams({
  accountId: '680affa5ce12f2f72916f67e',
  search: 'Video',
  sort: 'TOP',
  mode: 'KEYWORD',
  type: 'TEXT',
});

const response = await fetch(
  `https://api.repliz.com/public/research/threads/content/search?${params.toString()}`,
  {
    headers: {
      Authorization: `Basic ${credentials}`,
    },
  },
);

const data = await response.json();
console.log(data);

Response ​

json
{
  "docs": [
    {
      "id": "17978975645952848",
      "title": "",
      "description": "Hello",
      "type": "text",
      "owner": {
        "id": "9649353151817077",
        "name": "Bayu Anjani",
        "picture": "https://scontent.cdninstagram.com/v/t51.2885-19/491422881_10121455642157..."
      },
      "medias": [],
      "url": "https://www.threads.com/@bayu_anjani_megumin/post/DTF6qjcEshy",
      "createdAt": "2026-01-04T14:40:18.000Z"
    }
  ],
  "nextToken": ""
}
json
{
  "code": 404,
  "message": "account not found"
}
json
{
  "code": 401,
  "message": "unauthorized"
}