> Discover all available Postdom documentation from the machine-readable index: https://postdom.com/llms.txt

Destination · publishing reference

# Threads publishing reference for Postdom

This Threads publishing reference explains the OAuth connection, profile-level audience, omitted topic tag, enforced media checks, and returned outcome.

[Create a workspace](https://app.postdom.com/signup) [Read publish_video](https://postdom.com/docs/tools/publish-video)

Human authorization boundary

## Threads publishing reference connection requirements

A human completes the destination connection. The agent receives the resulting account ID—not the social credential—and supplies that exact account ID to `publish_video`.

`connection`

OAuth

`prerequisite`

No additional Postdom prerequisite is recorded beyond an eligible account.

`current source surface`

post

Configured output

## What Postdom sends to Threads

The public tool accepts product-level publishing fields. Postdom builds destination settings after validation; callers cannot smuggle an undocumented settings object through `publish_video`.

**`settings`** — **omitted**  Postdom sends neither Meta's optional topic_tag nor a visibility field.

Postdom sends no Threads settings or visibility field. The profile's public or private state determines audience outside Postdom.

_CURRENT SOURCE ADAPTER OUTPUT · NOT TOOL INPUT_

```
{
  "platform": "threads",
  "settings": {}
}
```

Enforced, documented, or unknown

## Threads publishing limits

Every row comes from the current `@postdom/core` registry. “Postdom enforced” means the source contract checks the fact. A recommendation, documented-but-unenforced fact, or unpublished value must not be presented as a passed validation.

 Postdom enforced

### caption max chars

**4000**

Postdom contract · verified 2026-08-21T00:00:00.000Z

Evidence reference retained in the core registry.

 Postdom enforced

### media max bytes

**524,288,000 bytes**

Postdom contract · verified 2026-08-21T00:00:00.000Z

Evidence reference retained in the core registry.

 Postdom enforced

### video max seconds

**600**

Postdom contract · verified 2026-08-21T00:00:00.000Z

Evidence reference retained in the core registry.

 Postdom enforced

### video mime types

**video/mp4, video/quicktime**

Postdom contract · verified 2026-08-21T00:00:00.000Z

Evidence reference retained in the core registry.

 Postdom enforced

### image mime types

**image/jpeg, image/png, image/gif, image/webp**

Postdom contract · verified 2026-08-21T00:00:00.000Z

Evidence reference retained in the core registry.

 Postdom enforced

### posts text

**500**

Unit: characters · Field: text · Scope: POST /{threads-user-id}/threads

Platform evidence · verified 2026-09-03T00:00:00.000Z

Qualification

Meta states this 500-character limit for text posts, not separately for media captions. Postdom applies it to the same text field on media posts as a conservative gate; that may reject text Meta would accept, rather than admit text Meta rejects.

[Official source](https://developers.facebook.com/docs/threads/posts)

 Postdom enforced

### video max seconds

**300**

Platform evidence · verified 2026-09-03T00:00:00.000Z

[Official source](https://developers.facebook.com/docs/threads/posts)

 Postdom enforced

### aspect ratio

**minimum: 0.01; maximum: 10**

Platform evidence · verified 2026-09-03T00:00:00.000Z

[Official source](https://developers.facebook.com/docs/threads/posts)

 Postdom enforced

### resolution max horizontal pixels

**1920**

Platform evidence · verified 2026-09-03T00:00:00.000Z

[Official source](https://developers.facebook.com/docs/threads/posts)

 Postdom enforced

### video mime types

**video/mp4, video/quicktime**

Platform evidence · verified 2026-09-03T00:00:00.000Z

[Official source](https://developers.facebook.com/docs/threads/posts)

 Not published

### resolution min pixels

**Not published**

Platform evidence · verified 2026-09-03T00:00:00.000Z

[Official source](https://developers.facebook.com/docs/threads/posts)

 Documented, not enforced

### video max bytes

**1,000,000,000 bytes**

Platform evidence · verified 2026-09-03T00:00:00.000Z

Qualification

Meta's own figure - "1 GB maximum" on the Threads posting reference - and an order of magnitude above Postdom's 500 MB global cap. No request Postdom accepts can reach it, so a gate would be unreachable and a violation test for it would pass on the global rule while proving nothing about Threads. Decimal rather than binary: the source says "1 GB" in prose with no convention stated, and the decimal reading is the smaller one, which is the safe error for a maximum. Reclassify the day the global cap rises above it.

[Official source](https://developers.facebook.com/docs/threads/posts)

 Documented, not enforced

### video min seconds

**exclusive minimum: 0**

Platform evidence · verified 2026-09-03T00:00:00.000Z

Qualification

Meta publishes a minimum "longer than 0 seconds". mediaUploadPreflightRequestSchema declares duration_seconds as a positive integer, so no request can express a duration this rule would reject. An enforced minimum no request can violate is unenforceable by construction - the same reason X's half-second floor is recorded here rather than gated. This sat in shortFormVideoLimits as not_published, which asserted the opposite of what Meta's page says.

[Official source](https://developers.facebook.com/docs/threads/posts)

Result boundary

## How to verify the Threads outcome

This page does not claim an authenticated Threads media publication, analytics response, or setting the configured adapter does not send.

### Never collapse a workflow state into success

Store the Postdom post ID, read the exact destination state with `get_publish`, and preserve a missing public URL, approval state, terminal refusal, or provider error exactly as returned.

Nine modeled fields

## Threads metric availability

The matrix records evidence states, not guaranteed live values. Unverified and never remain null with a reason; zero remains a measured zero.

| Metric | State | Baseline | Value behavior |
| --- | --- | --- | --- |
| views Views Required view count in a normalized snapshot. | unverified | Not verified | Always null with an explicit reason. |
| likes Likes Required like count in a normalized snapshot. | unverified | Not verified | Always null with an explicit reason. |
| comments Comments Required comment count in a normalized snapshot. | unverified | Not verified | Always null with an explicit reason. |
| shares Shares Required share count in a normalized snapshot. | unverified | Not verified | Always null with an explicit reason. |
| saves Saves Nullable saved or favorited count. | unverified | Not verified | Always null with an explicit reason. |
| watch_time_s Watch time Nullable total watch time in seconds. | unverified | Not verified | Always null with an explicit reason. |
| avg_watch_pct Average watch Nullable average watched percentage. | unverified | Not verified | Always null with an explicit reason. |
| completion_pct Completion Nullable completion percentage. | unverified | Not verified | Always null with an explicit reason. |
| follower_delta Follower delta Nullable follower-change field. | unverified | Not verified | Always null with an explicit reason. |

Separate search intent

## Related Threads resources

These pages answer separate workflow, specification, or character-limit questions. They support this product reference without replacing it.

### Threads character limit

Search-focused limit guidance and its text-versus-media scope.

[Open resource](https://postdom.com/platforms/threads/character-limit)

Verification scope

## Threads evidence boundary

### Contract evidence is not an observed publication

These pages describe source-backed product contracts. They do not represent an authenticated end-to-end publication or analytics test.

Inspect the connected tool schema before acting. Current source may be ahead of the separately published `@postdom/mcp` helper.

Use the contract

## Publish with explicit authority and outcomes

Create a workspace, connect an eligible account, and let the agent use only the fields exposed by the connected schema.

[Start free](https://app.postdom.com/signup) [Read outcome states](https://postdom.com/docs/tools/get-publish)

 VERIFIED · 23 SEPTEMBER 2026  **Current source adapter · Core evidence registries · Modeled metric availability**

Private identifiers and unverified publication claims are excluded. External links are limited to first-party platform sources.
