Threads
Using hosted SimplePost? See connection requirements. The credential setup below is for your own SDK, local CLI, or self-hosted integration.
Threads posting uses Meta's Threads API. Users authorize a Threads account and SimplePost posts with the resulting access token and user ID.
Content support
Current hosted app and core source
| Capability | SimplePost support |
|---|---|
| Text / caption (characters) | 500 text |
| Media | 20 items max; 20 images max; 20 videos max; Mixed media supported |
| Image size | 8 MiB maximum |
| Video size | 1 GiB maximum |
Published SDK 1.3.1 (also used by local CLI 1.3.1)
| Capability | SimplePost support |
|---|---|
| Text / caption (characters) | 500 text |
| Media | 1 item max; 1 image max; 1 video max; No mixed images/video |
| Image size | 8 MiB maximum |
| Video size | 1 GiB maximum |
Hosted-account CLI posts use the app's rules. Installing the published SDK or CLI does not include later core changes. See release scope.
Provider permissions and quotas still apply. SimplePost storage can impose a lower upload limit. MB/GB use decimal bytes; MiB/GiB use binary bytes.
Set up credentials
- Create a Meta developer app.
- Add the Threads API product.
- Configure OAuth redirect URIs for your app or Scheduler deployment.
- Request the scopes required for creating Threads posts.
- Authorize the Threads account.
- Store the access token and Threads user ID.
Provider review requirements vary depending on whether you only post for yourself or support external users.
The CLI does not bundle a Threads OAuth app. To use it from the CLI, supply your own client secret through SIMPLE_POST_THREADS_CLIENT_SECRET before running simplepost account add threads.
Environment variables
THREADS_ACCESS_TOKEN=
THREADS_USER_ID=
Both variables must be set together.
SDK example
await post({
content: {
text: "Hello Threads",
media: [{ type: "image", path: "./photo.jpg" }],
},
platforms: ["threads"],
});
Reply to a Threads post:
await post({
content: { text: "A reply" },
platforms: ["threads"],
options: {
threads: { replyToId: "1234567890" },
},
});
REST server account
Add this entry under accounts in the self-hosted REST server's accounts.json:
{
"id": "threads-main",
"platform": "threads",
"username": "yourbrand",
"credentials": {
"accessToken": "...",
"userId": "1234567890"
}
}