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

# Your agent plans the Reels. Postdom holds the schedule.

Postdom schedules finished videos for connected professional accounts at exact UTC times. Publication, failure, and available measurements return as machine-readable evidence.

Meta limits API publishing to professional accounts. A human completes authorization and keeps control of policy, approvals, exceptions, and pause.

## Synthetic contract view

This contract card is illustrative. It separates Meta's underlying mechanics from the exact states Postdom returns.

- **Agent request:** publish_video — `account_ids · video_url · caption`
- **Exact schedule:** 03 Sep · 09:00 UTC — `publish_at`
- **Underlying Meta mechanics:** Container → processing — `not a Postdom wire state`
- **Postdom wire answer:** sent → published | failed — `public_url: string | null`

Wire outcome returned · Measurements keep availability

## Start with the right account.

The API path begins with Meta's professional-account boundary and a human authorization handoff. The agent receives account state, never a password.

- **Professional account:** Meta's API publishing path is for eligible professional accounts. Personal-account support is not claimed.
- **Human authorization:** A human completes the provider authorization screen. The agent never receives the Instagram password.
- **Connected account:** Postdom records the destination and current connection state inside the workspace.
- **Exact account ID:** The agent reads list_accounts and uses the returned identifier instead of inventing a target.

Current provider requirements can change. Confirm the connected account state and current destination reference before execution.

## A container is not a Reel.

Meta creates and processes a media container before final publication. Postdom does not label an earlier request or acceptance as published.

1. **Underlying Meta mechanic · Container created** (`container creation`) Meta receives the finished media as a Reel publishing container.
2. **Underlying Meta mechanic · Media processed** (`container processing`) Container readiness is provider work, not proof that the Reel is live.

**Postdom observable states:** `sent → published | failed` — Postdom exposes the destination outcome, not Meta's internal container stages. public_url is nullable even on a terminal response.

## Choose the review point.

Each connected account keeps one human-set authority mode. An agent can operate inside that boundary but cannot widen it.

- **L0 · Manual:** The agent creates a draft. A human chooses whether and when it publishes. Every publish stays with a human.
- **L1 · Post review:** Each agent post waits for exact human approval before provider handoff. Nothing publishes without a post decision.
- **L2 · Plan review:** Posts flow only inside one approved plan covering the accounts, UTC window, and post maximum. Review the boundary instead of every post.
- **L3 · Bounded autonomy:** Posts flow only inside the account's saved daily cap, visibility allowlist, and quiet hours. Routine work runs inside saved account limits.

## The caller can sleep.

Postdom keeps the UTC schedule after the agent disconnects. A slot that starts more than 15 minutes late stops instead of publishing late.

- **Requested time:** `2026-09-03T09:00:00Z`
- **On time:** `sent → published | failed` — After provider handoff, the destination returns an exact wire outcome.
- **Too late:** `missed_schedule` — Human chooses publish now, reschedule, or cancel

No automatic late publish · no invented recovery

## Use the signal Instagram provides.

The modeled availability map separates exposed fields from unverified or merely derivable ones. A missing value never becomes a zero by convenience.

- **Views:** `available` — Numeric when a snapshot exists. Zero remains zero.
- **Likes:** `available` — Numeric when a snapshot exists. Zero remains zero.
- **Comments:** `available` — Numeric when a snapshot exists. Zero remains zero.
- **Shares:** `available` — Numeric when a snapshot exists. Zero remains zero.
- **Saves:** `unverified` — Always null with an explicit reason.
- **Watch time:** `available` — Numeric when evidence exists; otherwise null without a guaranteed reason.
- **Average watch:** `estimable` — May be derived from suitable evidence; no value is guaranteed.
- **Completion:** `estimable` — May be derived from suitable evidence; no value is guaranteed.
- **Follower delta:** `estimable` — Currently normalized to null; derivation is not promised.

Modeled availability is not a guarantee that every observation is non-null.

## Instagram keeps its native tools.

Postdom supplies the configured Reel type and AI disclosure. It does not promise every in-app creative, tagging, audio, or feed-placement control.

**Current adapter:** `contentType = reel` · `isAiGenerated = true`

### Configured Postdom path

- Reel content type
- AI-generated disclosure
- Finished video and caption
- Immediate or exact UTC execution

### Not in the current promise

- Music, effects, or stickers
- Product or collaborator tags
- An Instagram visibility input
- Share-to-feed behavior
- Every current provider limit

## Choose who operates the workflow.

The difference is not whether each option can reach Instagram. It is who owns timing, authority, provider state, and the evidence handback.

- **Instagram or Meta Business Suite · Human:** Native creative and account controls. No Postdom agent contract or evidence handback.
- **Human scheduler · Human:** Visual calendar and team workflow. Designed around a person operating the dashboard.
- **Raw Instagram API · Developer:** Direct provider primitives. You own authorization, durable timing, container state, and normalization.
- **Postdom · AI agent:** Durable schedule, human authority, outcomes, and evidence. Does not replace Instagram's native creative surface.

## Follow the connected contract.

Read workspace state and live schemas before planning. Use exact account IDs, UTC times, video URLs, plan IDs, and returned states without renaming them.

1. **`get_workspace_status`:** Read setup, policy, brief, and connection gates.
2. **`connect_account · list_accounts`:** Start the human authorization handoff when needed, then use the exact connected Instagram account ID.
3. **`get_brief · get_digest`:** Read current brand guidance and the latest completed week before planning.
4. **`submit_plan · get_plan`:** Use plan review when the account's authority requires it.
5. **`publish_video`:** Submit one finished video URL, the account ID, caption, intent, and optional UTC time.
6. **`get_publish · get_performance`:** Read final destination state and evidence without inventing missing values.

**Warning:** Never guess account eligibility, platform settings, a timezone, provider success, or a missing measurement.

## Reels questions

### Can an AI agent publish Instagram Reels automatically?

Yes, after an eligible professional account is connected and the human-set authority permits the request. Postdom holds an exact UTC schedule and returns the final destination outcome to the agent.

### Which Instagram accounts can use API publishing?

Meta's API publishing path is for eligible professional accounts. A human completes provider authorization, and Postdom does not claim support for personal accounts.

### When is an Instagram Reel actually published?

A created or processing media container is not a published Reel. Postdom treats the final provider-confirmed destination outcome as publication evidence.

### What happens when a scheduled Reel cannot start on time?

A run that starts more than 15 minutes after its slot becomes missed_schedule instead of publishing late. A human then chooses publish now, reschedule, or cancel.

### Can Postdom add Instagram music, effects, stickers, or collaborator tags?

Those native controls are not part of Postdom's current promise. Use Instagram's own creative surface when a Reel depends on music, effects, stickers, product tags, or collaborator tags.

### Does Postdom control whether a Reel appears in the Instagram feed?

Postdom's configured Instagram adapter supplies Reel content type and AI disclosure but no visibility field. Do not infer share-to-feed behavior from the publish request.

### Which Instagram Reels measurements can an agent read?

The current model marks views, likes, comments, shares, and watch time available. Saves remain unverified; average watch, completion, and follower change are estimable, not guaranteed values.

### How does an agent schedule a Reel with Postdom?

The agent reads workspace status and account IDs, follows the required authority path, supplies finished media and an optional RFC 3339 UTC publish_at value, then reads the post and performance evidence.

## Let the agent plan. Keep every Reel accountable.

Connect an eligible account, choose the authority boundary, and give the schedule a durable path to publication evidence.

- Instagram Reels destination reference: https://postdom.com/docs/destinations/instagram-reels.md
- Agent contract: https://postdom.com/agent-contract.md
- Scheduling: https://postdom.com/product/schedule
- Performance: https://postdom.com/product/performance.md
