CLIENT FIELD GUIDE · PRIVATE PREVIEW

From idea to a real result.

1. Accept your invitation

Open the invitation shared by your workspace owner, create your login and open your workspace. Keep client logins separate from owner support. Your top navigation links to Workspace, Library, Calendar and ChatGPT.

2. Connect your own Meta accounts

Open Setup & connections, sign into Meta on Meta's page and choose the Pages for this business. You do not need to create your own developer app or give us a social password. Choose verified Pages before saving. Each workspace has its own association; one brand's credentials are never borrowed for another.

Facebook needs Page posting permission and content access. Instagram Reels additionally need a linked professional Instagram account and verified instagram_basic / instagram_content_publish access in the operator's Meta configuration. If a destination shows Setup needed, reconnect after those permissions are configured and actually granted. Selecting Instagram in a Meta asset picker alone is not proof of publishing permission. App review/testing roles and business eligibility still apply; this service cannot bypass Meta approval.

3. Connect in ChatGPT Work

Open your workspace's ChatGPT setup and add the private MCP endpoint https://social.disksetc.com/mcp in ChatGPT's custom connection settings, if available for your account/workspace. The public client ID is disks-social-chatgpt, with no client secret. Sign into Disks Etc Social as your invited member, select one workspace and approve only the access you want.

Existing draft grants stay draft-only. To publish or schedule, reconnect and explicitly grant publications:write as a workspace administrator. Media import needs drafts:write. After a release adds tools, use Refresh tools in the private plugin/connection; reconnect when requesting new permissions. Your other workspace connection is separate. This also applies in Work chats: a tool may be connected to one brand while another brand's tools are available separately—check current_workspace first.

Try: “Show my current workspace and publishing destinations.” Then “Save this as a draft.” For an explicit publish request: “Publish media [library ID] with this caption as a Reel to these destination keys now.” If content, account or time is unclear, clarify it; explicit authorized instructions do not need a repetitive approval screen.

4. Receive an actual file

A video visible in a conversation is not automatically attached to this service. ChatGPT's import_media tool accepts its supported file input containing a temporary download URL and file ID. The server downloads actual bytes into the private library and validates them. Check get_media until Ready; an importing label is not success. File handoff availability depends on the current ChatGPT surface. If the chat cannot supply a downloadable file, download/export the video yourself and upload it in Library.

This preview accepts still JPEG/PNG photos under 10MB and supported MP4/MOV, WebM/MKV or AVI videos under 100MB, 4–60 seconds. Inputs must be no more than 4096px per side, 9 megapixels, 120fps, with one video and at most one mono/stereo audio track. Supported video mismatches are converted to H264/yuv420p 1080×1920 at 30fps, with AAC48kHz audio when present. Compatible video stays untouched where possible; an audio-only mismatch copies the video stream and converts audio. Landscape or other shapes keep their full picture with padding, never a crop. No trim, loop, speed change or replacement sound is applied. A silent source stays silent. Processing can take a few minutes and needs up to 200MB of temporary workspace space in addition to the source. Corrupt, unsupported or excessively demanding files fail with a specific reason. No music licensing or creative-generation subscription is included. Private storage is limited to 2GB/200 items per workspace; contact the owner about removal.

Library links require your workspace login. Temporary fetch links are created only for the provider's job and expire within two hours; they are not permanent public media URLs.

5. Say draft, publish or schedule

Save as draft keeps the publication intent private and does not queue it. Existing text drafts also stay drafts. Publish now sends an explicit intent to the server worker; it is not a promise that Meta has already published it. Schedule queues it for the chosen future time. No extra approval gate follows an explicit authorized instruction.

Normal Facebook posts support text or one photo. Reels require one validated portrait video and can target Facebook, Instagram or both when each is ready. Instagram photo posts and Stories, Facebook photo Stories, catalogs, ads, budgets and lead forms are outside this increment. Facebook video Story distribution is an explicit optional Reel destination below.

6. Use the calendar, or stay in chat

The calendar is a convenient management surface, not a required publishing stage. Choose accounts, caption/media and a time. All work is workspace scoped. Times display in your workspace timezone (currently America/New_York). A nonexistent spring-forward time is rejected; a fall-back time occurring twice requires an explicit offset, such as 01:30-04:00 or 01:30-05:00. Past schedules are rejected—choose Publish now instead.

The server executes while your browser and ChatGPT are closed. The selected time is an intended dispatch time; provider processing or outages can delay visibility, and overdue pending work resumes while its authorization remains valid. ChatGPT can queue a finite batch of up to 20 individually timed items with unique retry keys. Automatic recurring slots, such as twice every day forever, are a follow-up; this release does not silently generate an unlimited series.

Edit or reschedule before external processing starts, using the latest revision. Cancel pending destinations before they are dispatched. An already-issued provider call cannot be recalled, and cancel does not delete a successful public post. A mixed result keeps each account's outcome.

7. Inspect the result and retry safely

Pending/processing means the worker is waiting or Meta is processing. Succeeded means the adapter received a publication reference or verified provider-published status. Failed/blocked requires checking the stated permission/media/access problem, then retrying only that destination. Successes cannot be retried.

Uncertain means a response may have been lost after a final publish call or the worker was interrupted. Automatic resubmission stops to avoid duplicate public content. Check provider outcome using the saved reference. If none was received, inspect the Page/Instagram account manually; this preview cannot safely reconcile that case and does not offer a blind retry. Distributed provider writes cannot be promised exactly once.

Reuse a create retry key only for the exact same intent. A changed caption/time/destination needs a new key. Token revocation, membership/role changes or paused workspaces stop pending writes at the next authorization check; calls already sent may still complete.

8. Control access

Site administrators can publish/schedule; editors are draft-only. Owner Open as admin is explicit audited support, not a client publishing identity. ChatGPT additionally needs the corresponding OAuth scope. Website sign-out does not revoke ChatGPT grants. Use Disconnect in workspace ChatGPT setup to stop that connection and its pending writes. Provider disconnect stops that workspace's provider use; revoke the Meta Business Integration separately if desired.

Questions, retained files or deletion requests: mike@disksetc.com. See Privacy, Terms and Data deletion. Tutorials use generic examples; no client credentials or private infrastructure details are shown.

Import a generated video URL and save a Reel draft

Ask ChatGPT to use create_reel_draft with your downloadable HTTPS media_url, caption, title and channel (facebook, instagram or both). This saves a private draft and starts the actual video transfer. A provider's direct downloadable video URL works; a web page, local computer path or login link does not. The title and intended channel appear in your calendar. No Page is guessed and no post is queued.

For the library alone use upload_media with a downloadable URL or a ChatGPT file. Both helpers need draft-edit access only. Refresh the connector's tools if they are missing; reconnect if necessary. You do not need to add publishing permission to save these drafts.

Read get_publication with the returned draft ID, or get_media with its media ID, until the media is ready or failed. Importing or processing means bytes are still transferring, being converted or validated. Reel URL imports must validate as portrait MP4 under the existing media limits. When reusing a library media ID, first wait for ready video. The draft stays private even after the video is ready.

Omitting a retry key deduplicates identical requests. Reuse the same explicit key and inputs after a lost response; a different title, caption, source or channel needs a new key. Failed imports keep their status and do not restart on a repeated call. To retry the same failed item deliberately, use retry_media(media_id, idempotency_key, media_url optional). It reuses retained input for up to seven days, or accepts a fresh downloadable URL. Library also supports replacement upload to the same ID. Use a new recovery key, and reuse it with identical inputs after a lost response. Media and draft IDs are preserved; repeated retry keys do not restart work. Keep signed download URLs private. Publishing later is a separate explicit action using ready media, chosen destinations and publishing permission.

Your week, month, media and saved drafts

Workspace home starts with this week’s scheduled work and published results in your workspace timezone. Use Previous week or Next week to browse, and Full month calendar to open the complete month. The month grid includes dates at the edges of adjacent months; select an entry for its results. Back to workspace returns home.

The library sits immediately below the week. ChatGPT imports appear while importing or processing and then become Ready or Failed. A published item leads to its status; Create another post is an explicit new post action. Failed media has recovery options in Library.

The compact Saved drafts column distinguishes Posts & Reels from Text ideas. ChatGPT Reel drafts appear under Posts & Reels even before media is ready. Review loads the existing title, caption, channel intent and media without copying the draft. Saving, publishing or scheduling from that review keeps its ID. Text ideas can be read or used to start a post. Publishing controls appear only for a normal workspace administrator; editors save drafts.

Optional Facebook Reel + separate Story

When composing a Reel, select a Facebook Page, then choose also publish a Story for that Page. This uploads the same private video in a fresh Story session. It is a separate Facebook Page video Story, not a native linked-Reel share or sticker. Instagram Stories are not included. The Reel caption is used for the Reel; this increment adds no Story text overlay or caption sticker.

Every Page starts with Story off. Override the choice for each post, or use Remember selected Pages’ Story choices to save defaults for those Pages only. That button saves preferences without queuing anything. New forms visibly show the remembered choice; an existing draft or queued job keeps its saved destinations. Changing a default never changes existing work.

Stories use ready portrait H264/yuv420p MP4, 4–60 seconds, at least 540×960, fixed progressive 24–60fps with closed GOP/keyframes every 2–5 seconds. Audio, if present, must be stereo AAC-LC, 48kHz and at least 128kbps. Short final GOP tails are allowed. A read-only technical check runs before a fresh Story upload; it never rewrites a previously published Reel’s media. Unsupported Story settings fail only that destination with an export suggestion. Meta still validates and may reject content or account eligibility.

Publish now or Schedule authorizes the destinations selected on the form; there is no second forced approval screen. Reel and Story show independent results in the calendar. Retry only a confirmed failed/blocked destination; a successful Reel is never repeated because its Story failed. If a final response is lost, the Story is marked Uncertain and checked using its saved video reference. Never blindly resubmit an uncertain outcome.

In ChatGPT, read publication_targets for each Page’s Story default and permission gaps. queue_publication and each batch item accept facebook_stories as selected facebook:PageKey values. Omitted means no Story; use_story_defaults=true explicitly applies remembered choices, while an explicit empty list turns them off. Use set_page_story_default(destination, enabled) to remember a Page preference. Use submit_publication_draft with its current revision to save, publish or schedule an existing draft in place. Publishing and distribution defaults need existing admin/publishing permission; saving a draft stays draft-only. Refresh the connector’s tool list if needed; these features do not widen an existing grant.

The supported API flow follows Meta’s Facebook Stories guide. Normal Page access uses pages_manage_posts, pages_read_engagement and pages_show_list. No new Instagram permission is requested by the Story option.