Get Posting Help Center
Search the help center for answers about accounts, scheduling, publishing, media, analytics, and more.
Getting started
Get Posting publishes one post to all your social accounts at once. Here's the quick version.
Connect accounts
Add your social profiles in Settings → Accounts. Each one becomes a place you can post to.
Write once
Compose a single post and pick every account that should receive it.
Tailor per platform
Only adjust copy, media, or settings for the platforms that need something different.
Publish or schedule
Clear any flagged issues, then post now or schedule it. Track delivery from your calendar.
Delete a workspace
Workspace owners can delete a workspace in Settings → Organization & Billing. Cancel the subscription first. If you have already cancelled and access still runs until the period ends, deletion finishes the cancellation immediately so nothing renews.
Deletion removes Get Posting copies of posts, drafts, media, inbox, automations, API keys, and MCP connections, and disconnects social accounts. Posts already published on Instagram, X, or other platforms stay there. Payment records are kept for accounting. If this was your last workspace, your login is closed too.
Account groups
Bundle accounts into a group for a client, brand, or project. Select the whole group to publish to it in one go, and filter your analytics down to just those accounts.
Media library
A shared space across your whole organization. Use it to plan posts ahead and share assets with your team — it's not meant for long-term storage.
Files are automatically deleted 90 days after they're published or become stale. Keep your original files in permanent storage.
Analytics
See what's working across your accounts so you know what to post more of. We pull as much history as each platform shares, then keep collecting from the moment an account is connected — so the picture gets richer the longer you post with Get Posting.
Limits at a glance
These checks run before a post can be published or scheduled. Platform rules can still change outside the app.
| Platform | Text | Images | Video | Media required |
|---|---|---|---|---|
| X | 280 | 4 files · 5 MB each | 1 file · 512 MB | No |
| 2,200 | 10 files · 8 MB each | 10 files · 300 MB each | Yes | |
| Threads | 500 | 10 files · 8 MB each | 1 file · 1 GB | No |
| 63,206 | 10 files · 4 MB each | 1 file · 4 GB | No | |
| 3,000 | 20 files · 8 MB each | 1 file · 5 GB | No | |
| TikTok | 2,200 | 35 files · 20 MB each | 1 file · 4 GB | Yes |
| YouTube | 5,000 | Not supported | 1 file · 256 GB | Yes |
X
Settings
No platform-specific settings — this platform publishes the shared post as-is.
Limits
Text
- Limit
- Up to 280 characters
- Post
- Text, media, or both
Images
- Count
- Up to 4
- File size
- Up to 5 MB
- Exceptions
- GIF: 15 MB
- Formats
- JPEG, PNG, WEBP, GIF
- Width
- 4px to 8,192px
- Height
- 4px to 8,192px
Video
- Count
- Up to 1
- File size
- Up to 512 MB
- Formats
- MP4, MOV
- Minimum
- 1 sec
- Maximum
- 2 min 20 sec
- Width
- 32px to 1,920px
- Height
- 32px to 1,200px
- Native thread sequences are supported.
- Posts can use text, media, or both.
- Images and video can't be mixed in one post.
- Links count as 23 characters and emoji can use two characters.
- A GIF must be posted alone and is limited to 1280 x 1080 px.
Settings
Choose the post format plus the common Reel, audio, and AI-label options.
Options you can set
- Post type: Feed, Story, or Reel
- Share Reel to feed
- AI-generated media
- Custom audio name: Reels only
Defaults
- Post type: Feed
- Share Reel to feed: On
- AI-generated media: Off
- Custom audio name: None
Not yet exposed by Get Posting: firstComment, collaborators, userTags, trialParams, thumbOffset, instagramThumbnail.
Limits
Text
- Limit
- Up to 2,200 characters
- Post
- Text plus required media
Images
- Count
- Up to 10
- File size
- Up to 8 MB (auto-compressed if larger)
- Formats
- JPEG, PNG
Video
- Count
- Up to 10
- File size
- Up to 300 MB (auto-compressed if larger)
- Formats
- MP4, MOV
- Minimum
- 3 sec
- Maximum
- 1 hr
- Images and video can be mixed in one post.
- Media is required for this platform.
- Threads aren't supported — use a custom single post when the shared post is a thread.
- Feed carousels support 10 total media items. Stories and Reels require one item.
Threads
Settings
Optionally set a topic tag for discovery instead of relying on automatic hashtag extraction.
Options you can set
- Topic tag: Up to 50 characters; no periods or ampersands
Defaults
- Topic tag: Automatic
Limits
Text
- Limit
- Up to 500 characters
- Post
- Text, media, or both
Images
- Count
- Up to 10
- File size
- Up to 8 MB (auto-compressed if larger)
- Formats
- JPEG, PNG, WEBP, GIF
Video
- Count
- Up to 1
- File size
- Up to 1 GB
- Formats
- MP4, MOV
- Maximum
- 5 min
- Aspect ratio
- 9:16, 16:9, 1:1
- Native thread sequences are supported.
- Posts can use text, media, or both.
- Images and video can't be mixed in one post.
- Thread sequences are supported; each post is validated independently.
Settings
Choose the post format and whether feed posts or Reels publish as drafts with optional titles.
Options you can set
- Post type: Feed, Story, or Reel
- Create as draft: Feed posts and Reels only
- Reel title
Defaults
- Post type: Feed
- Create as draft: Off
- Reel title: None
Not yet exposed by Get Posting: firstComment, carouselCards, carouselLink, geoRestriction.
Limits
Text
- Limit
- Up to 63,206 characters
- Post
- Text, media, or both
Images
- Count
- Up to 10
- File size
- Up to 4 MB
- Formats
- JPEG, PNG, GIF, WEBP
Video
- Count
- Up to 1
- File size
- Up to 4 GB
- Formats
- MP4, MOV
- Minimum
- 1 sec
- Maximum
- 4 hr
- Posts can use text, media, or both.
- Images and video can't be mixed in one post.
- Threads aren't supported — use a custom single post when the shared post is a thread.
- Stories require one media item; Reels require one 3-60 second video.
Settings
Control whether links generate a preview card.
Options you can set
- Disable link preview
Defaults
- Disable link preview: Off
Not yet exposed by Get Posting: firstComment, documentTitle, organizationUrn, reshareUrl, geoRestriction.
Limits
Text
- Limit
- Up to 3,000 characters
- Post
- Text, media, or both
Images
- Count
- Up to 20
- File size
- Up to 8 MB
- Formats
- JPEG, PNG, GIF
- Width
- 552px to 8,192px
- Height
- 276px to 8,192px
Video
- Count
- Up to 1
- File size
- Up to 5 GB
- Formats
- MP4, MOV, AVI
- Minimum
- 3 sec
- Maximum
- 10 min
- Aspect ratio
- 1:2.4 to 2.4:1
- Width
- 256px to 4,096px
- Height
- 144px to 2,304px
- Posts can use text, media, or both.
- Images and video can't be mixed in one post.
- Threads aren't supported — use a custom single post when the shared post is a thread.
- The 10-minute video limit uses the personal-profile limit; company pages allow 30 minutes.
- Get Posting currently supports image and video media only; documents aren't supported yet.
TikTok
Settings
Choose whether new TikToks publish directly or go to TikTok drafts, plus their starting privacy and audience settings.
Options you can set
- Send to TikTok drafts: Uploads to the creator's TikTok inbox for final editing
- Privacy level: Public, Friends, Followers, or Only me
- Allow comments
- Allow duets
- Allow stitches
Defaults
- Send to TikTok drafts: Off
- Privacy level: Public
- Allow comments: Allowed
- Allow duets: Allowed
- Allow stitches: Allowed
Not yet exposed by Get Posting: video_cover_timestamp_ms, video_cover_image_url, photo_cover_index, description, auto_add_music, commercialContentType.
Limits
Text
- Limit
- Up to 2,200 characters
- Post
- Text plus required media
Images
- Count
- Up to 35
- File size
- Up to 20 MB
- Formats
- JPEG, PNG, WEBP
- Aspect ratio
- 9:16
Video
- Count
- Up to 1
- File size
- Up to 4 GB
- Formats
- MP4, MOV, WEBM
- Minimum
- 3 sec
- Maximum
- 10 min
- Aspect ratio
- 9:16
- Media is required for this platform.
- Images and video can't be mixed in one post.
- Threads aren't supported — use a custom single post when the shared post is a thread.
- Photo titles are limited to 90 characters; video captions allow 2,200.
- Allowed privacy levels and posting limits are creator-specific and are not yet synced into Get Posting.
YouTube
Settings
A lightweight subset of YouTube's upload options.
Options you can set
- Title & description
- Visibility: Public, Unlisted, or Private — set Private to test without publishing
- Made for kids (COPPA): Enabling it permanently disables comments, end screens, and personalized ads
- Synthetic media disclosure (AI): Flags AI-generated or altered realistic content for viewers
- Category: YouTube video category for the upload
- Custom thumbnail: JPEG, PNG, or GIF up to 2 MB; regular videos only
- Short vs. long-form: Channel assumed verified, so videos up to 12 hours are allowed
Defaults
- Title & description: Title required; description from the shared post
- Visibility: Public
- Made for kids (COPPA): Off
- Synthetic media disclosure (AI): Off
- Category: People & Blogs
- Custom thumbnail: None
- Short vs. long-form: Auto-detected from duration and aspect ratio
Not yet exposed by Get Posting: firstComment, playlistId.
Limits
Text
- Limit
- Up to 5,000 characters
- Post
- Text plus required media
Images
Not supported.
Video
- Count
- Up to 1
- File size
- Up to 256 GB
- Formats
- MP4, MOV, AVI, X-MS-WMV, X-FLV, 3GPP, WEBM
- Minimum
- 1 sec
- Maximum
- 12 hr
- Aspect ratio
- 9:16, 16:9
- Media is required for this platform.
- Images and video can't be mixed in one post.
- Threads aren't supported — use a custom single post when the shared post is a thread.
- Uploads assume a verified channel, so videos up to 12 hours are allowed. Unverified channels are capped at 15 minutes by YouTube.
Connect an AI assistant
Connect ChatGPT, Claude, Hermes, OpenClaw, OpenCode, or another compatible MCP client to one Get Posting workspace.
Add Get Posting
Add https://getposting.com/mcp as a connector in your assistant. There's no API key to generate or paste.
Choose a workspace
Sign in to Get Posting, pick the workspace to share, and approve posting access.
Ask before it acts
Tell the assistant what to draft or schedule, then check what it wants to post before you approve.
What it can do
Look at your accounts and posts, add an image or video to your library or reuse one already there, write and edit drafts, check them against each platform's rules, schedule them, and report on how the last month performed. It can also pull a scheduled post back to a draft to change it. Ask for something to go out now and it schedules a minute ahead.
Not connected to it yet
Replying to comments and DMs, automations, and account groups stay in the dashboard for now. It can't delete anything, by design. If one of those is what you want your assistant doing, tell us and it helps us pick what to build next.
Members can look but not act. Owners and admins can write, schedule, and reschedule. Either way, the assistant only ever reaches the one workspace you picked when you signed in.
You can review or disconnect your own connections under Settings → MCP Apps. Removing a member from the workspace also removes that member's MCP access.
ChatGPT apps are set up and used on the web. Claude connectors are added on web or desktop, then work on mobile too. Command-line clients need remote Streamable HTTP with OAuth, using MCP 2026-07-28. SSE, local stdio, and API-key authentication aren't supported.
Open the AI connector guideGet Posting API
Automate publishing with the same safe flow as the dashboard: create a draft, check its validation, then publish or schedule it.
Get started
Create a key
Open Settings → API and store the secret in your server's secret manager.
Authenticate
Send it as a Bearer token from server-side code only.
Draft, validate, publish
Create a composition, fix any validation errors, then publish or schedule it.
Authentication
Every request uses the same base URL and a workspace API key.
Base URL
https://getposting.com/api/v1Header
Authorization: Bearer gp_live_...curl https://getposting.com/api/v1/accounts \
--header "Authorization: Bearer $GET_POSTING_API_KEY"Keys are server-side secrets. Never put one in browser code, public repositories, logs, or URLs.
Accounts
Discover connected social accounts before building composition targets.
/accountsList visible accounts. Supports limit and cursor pagination.
curl "https://getposting.com/api/v1/accounts?limit=100" \
--header "Authorization: Bearer $GET_POSTING_API_KEY"Use the returned acct_... ID as a target's accountId, and check canPost before publishing.
Media
Media is reusable across compositions. Images and videos are both supported.
/mediaList or search media with limit, cursor, and an optional query.
/mediaUpload one file using multipart/form-data with file and an optional name.
curl https://getposting.com/api/v1/media \
--request POST \
--header "Authorization: Bearer $GET_POSTING_API_KEY" \
--form "file=@launch.mp4"Attach the returned media_... ID to content, not its URL. Retrying an upload can create a duplicate.
Compositions
A composition is one shared post with one or more account targets. Create and edit it as a draft before publishing.
/compositionsList compact summaries. Supports status, text search, schedule filters, limit, and cursor.
/compositionsCreate a draft and receive full composition detail with validation.
/compositions/{compositionId}Read resolved content, targets, validation, delivery state, and the dashboard URL.
/compositions/{compositionId}Update a draft's content or replace its complete target array.
/compositions/{compositionId}Delete a composition when its delivery state still allows removal.
curl https://getposting.com/api/v1/compositions \
--request POST \
--header "Authorization: Bearer $GET_POSTING_API_KEY" \
--header "Content-Type: application/json" \
--data '{"content":{"kind":"single","text":"Launch day","mediaIds":[]},"targets":[{"accountId":"acct_123"}]}'Creating a composition never publishes it. Store the returned comp_... ID and check its validation first.
Publish and schedule
Publishing is explicit. The same endpoint publishes immediately or schedules a future local time.
/compositions/{compositionId}/publishPublish now with at: now, or schedule with a local time and optional IANA time zone.
/compositions/{compositionId}/rescheduleMove a scheduled composition without changing its content or targets.
/compositions/{compositionId}/cancelUnschedule a composition and return it to an editable draft.
/compositions/{compositionId}/retryRetry all retryable failed targets on a partial or failed composition.
curl https://getposting.com/api/v1/compositions/comp_123/publish \
--request POST \
--header "Authorization: Bearer $GET_POSTING_API_KEY" \
--header "Content-Type: application/json" \
--data '{"at":"2026-08-20T09:30:00","timeZone":"Australia/Perth"}'Scheduled at values are local wall-clock times (no Z or offset). Poll composition detail for outcomes; there are no webhooks yet.
Validation and errors
Compositions include structured validation, and every HTTP failure uses one predictable error envelope.
{
"error": {
"code": "validation_failed",
"message": "Composition is not ready to publish.",
"requestId": "req_123"
}
}- Fix validation errors before publishing. Warnings do not block the request.
- Writes use strict JSON. Unknown fields, read-only fields, and null values are rejected.
- List endpoints are paginated. Follow nextCursor until it is null.
- The limit is 60 requests per workspace per minute. Honor Retry-After after a 429.
- Do not blindly retry uncertain draft or media creation. Inspect existing resources first.
- Keep the X-Request-Id header or requestId field when asking for support.

Hey, can't find what you're looking for?
Talk to me — Morgan
Founder of Get Posting
Send me a message through live chat, or write on the contact page. If I'm not around, a human from the team can help.