Threads
Publish text-first posts (with optional image or video) to Meta’s Threads platform. Postli connects to Threads through its own OAuth flow — the account’s linked Instagram identity carries through.
Requirements
- A Threads account — created via the Threads app or web, linked to your Instagram identity.
- Threads accounts based on Personal Instagram are supported; Business / Creator Instagram accounts are required for engagement-insight reads.
Spec
Create your Threads app
Threads has its own credential slot in Postli — the Facebook / Instagram Meta app does not carry over. You build a second Meta app dedicated to the Threads API.
- Sign in to developers.facebook.com/apps and click Create app. Provide an app name and contact email.
- Pick Other as the use case, then add the Threads API use case to the app.
- In the Threads use case settings, add the two permissions:
threads_basic(auto-selected) andthreads_content_publish. Addthreads_manage_insightsandthreads_manage_repliesif you want engagement reads and auto-comments. - Set the Redirect Callback URL:
https://app.usepostli.com/api/integration/threads/callbackAfter typing the URL, click it in the form — if you don’t, Meta silently drops the value when you save.
- Provide stub values for the Uninstall and Delete callback URLs (Postli doesn’t use these yet, but Meta requires them). You can use the same redirect URL.
- Open Threads API → Customize and complete the wizard. Add your own Threads account as a tester until you submit for review.
- From App Settings, copy the Threads App ID and Threads App Secret (32 characters).
- In Postli, open Settings → Integrations → Threads, paste both values, and save.
OAuth setup
Once credentials are saved, go to Integrations → Threads → Connect. Postli opens the Threads OAuth dialog. Note that this is not the same as connecting Facebook or Instagram — Threads has its own OAuth flow even though it shares Meta’s identity backend.
Scopes Postli requests:
Post types in detail
Text post
Up to 500 characters. URLs render as a card if Meta’s crawler can scrape OG tags from the destination; otherwise as plain link text.
Image post
One image plus optional caption. Threads does not currently support image carousels via API.
Video post
One video plus optional caption. Videos are uploaded via Threads’ container-based publishing flow — Postli handles the upload, polls until the container is ready, then publishes.
Reply
Used internally for auto-comments. You can also draft a reply explicitly by linking to a parent Threads post URL.
Auto-comments
Implemented as self-replies. Instant and Time conditions both work. LikeCount depends on the threads_manage_insights scope being granted.
Rate limits
Threads enforces a publishing cap of 250 posts per 24 hours per user. Postli will defer additional posts to the next window. Replies count toward the same cap.
Gotchas & best practices
- Separate OAuth from Instagram. Even though the identity is the same, you must run a separate connect flow for Threads.
- 500-character limit is tight. Cross-posting a longer Instagram caption will fail validation; override the channel-tab content.
- No carousel. The API doesn’t yet expose multi-image posts — split into a thread instead.
- Insights lag. Engagement metrics from
threads_manage_insightscan lag by up to 6 hours.
Webhooks
Postli does not subscribe to Threads webhooks. Engagement is polled.