Threads
Requires an active Threads profile and permission for PostGate to publish on its behalf.
Capabilities at a glance
Connect Threads
Create the hosted connection URL on your server. The customer completes OAuth or the provider-specific credential form directly on PostGate.
curl -X POST https://postgate.studio/api/profiles/connect \
-H "Authorization: Bearer $POSTGATE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"platform": "threads",
"profile_group_id": "grp_acme123",
"return_url": "https://app.example.com/settings/social"
}'Publish to Threads
Use the connected profile ID as the target. Provider-specific fields live under post.options.threads so the unified envelope remains stable.
{
"post": {
"body": "Launch day."
},
"profiles": [
"pro_threads123"
],
"media": [
"med_01JXYZ"
]
}Media and content limits
PostGate validates the request at creation and again at delivery. Account-level provider limits can be narrower than the general contract.
Operational notes
These constraints affect approval, connection health, or delivery behavior for this provider.
Meta review required.
Images are converted to JPEG for delivery; PNG is rejected by the live API despite being documented as supported.
Options (post.options.threads, root post): topic_tag (1-50 chars, no '.' or '&'), reply_control, quote_post_id, is_ai_generated, spoiler_media; text-only posts also take link_attachment (URL preview) and poll (2-4 options of up to 25 chars).
GET /api/platforms. A provider appears only when it is enabled and configured for the current workspace.