NetworksThreads

Threads APIthrough Siar.

Text, image, video and carousel posts on Threads, with reply controls, topic tags, link attachments and polls.

At a glance

Account needed: A Threads profile.

ConnectionOAuth 2.0 in the browser
ChannelNot needed
Post typespost
Text length500 characters
Comment length500 characters
Media per postUp to 20

Media rules

KindFormatsMax sizeDurationOther
Imagejpeg, png8 MBn/aNone
Videomp4, mov1 GBUp to 5 minNone

What Siar can do on Threads

Comments and repliesYes
First commentYes
Edit a published postNo
Delete a published postYes
Edit a commentNo
Delete a commentYes
Import commentsYes
Post analyticsYes
Account analyticsYes
Post history importYes
Direct messagesNo

Siar can create comments and replies up to 500 characters, and import the comments people leave on your posts.

Publish a post

Put Threads's payload under data.THREADS and list THREADS in socialAccountTypes. Add other networks to the same request to post to all of them at once.

curl -X POST "https://api.siaran.my/api/v1/post" \
  -H "x-api-key: $SIAR_API_KEY" \
  -H "content-type: application/json" \
  -d '{
    "teamId": "TEAM_ID",
    "title": "Threads post",
    "postDate": "2026-11-02T09:00:00.000Z",
    "status": "SCHEDULED",
    "socialAccountTypes": [
      "THREADS"
    ],
    "data": {
      "THREADS": {
        "text": "Hello from Siar",
        "uploadIds": [
          "UPLOAD_ID"
        ],
        "mediaItems": [
          {
            "uploadId": "UPLOAD_ID"
          }
        ]
      }
    }
  }'

Threads fields

  • text string nullable
  • uploadIds string[] nullable
  • mediaItems object[] nullable
    2 fields
    • uploadId string required
    • altText string nullable
  • topicTag string nullable
  • replyControl string nullable
    One of: everyone accounts_you_follow mentioned_only parent_post_author_only followers_only
  • linkAttachment string nullable
  • poll object nullable
    4 fields
    • optionA string required
    • optionB string required
    • optionC string nullable
    • optionD string nullable
  • gif object nullable
    2 fields
    • gifId string required
    • provider string default "GIPHY"
      One of: GIPHY
  • allowlistedCountryCodes string[] nullable
  • crosspostToInstagramStory boolean nullable
  • crosspostToInstagramStoryDarkMode boolean nullable

Daily caps

Per connected account, per UTC dayFreeProBusiness
Posts10200250
Comments3200250

See pricing for monthly quotas. Enterprise uses the Business caps unless agreed otherwise.

Connecting a Threads account

Siar sends the user to the network's consent page and stores the tokens it gets back, refreshing them before they expire. Use POST /social-account/connect from your own UI, or send your customer a hosted link from POST /social-account/create-portal-link; see connecting accounts.

Permissions requested

Siar requests only these scopes at connect time:

  • threads_basic
  • threads_content_publish
  • threads_manage_replies
  • threads_read_replies
  • threads_manage_insights
  • threads_delete

When Threads says no

Siar relays Threads's error code and message verbatim on the post, next to a status you can act on. The Threads error reference covers 8 common cases with what each one means and the fix. Open the Threads error reference.

Threads API questions

What can I post to Threads through the API?

post. Text, image, video and carousel posts on Threads, with reply controls, topic tags, link attachments and polls.

How many Threads posts can I publish per day?

Per connected account and UTC day: 10 on Free, 200 on Pro, 250 on Business. The caps keep the account within what Threads tolerates.

Can I schedule Threads posts?

Yes. Set postDate in the future and a status of SCHEDULED. Siar publishes at that time and sends a post.published webhook when the post reaches a final state.

How do I connect a Threads account?

A Threads profile. Siar sends the user to the network's consent page and stores the tokens it gets back, refreshing them before they expire.

What do I do when Threads rejects a post?

The post carries Threads's own code and message. The Threads error reference explains 8 common rejections and how to fix them.

Your first post isone request away.

The Free plan includes 20 posts and 200 uploads a month across 3 teams. No card needed.