Platforms

Schedulala supports 12 social media platforms. This page covers authentication methods, content limits, supported post types, and platform-specific quirks you should know before integrating.

Compatibility matrix

High-level overview of every platform's key constraints.

PlatformAuthText limitMax mediaMax videoEntity selection
Twitter / XOAuth 2.028042 min 20 sNone
InstagramOAuth 2.0 (Meta)2,2001090 sNone
FacebookOAuth 2.0 (Meta)63,206104 hoursFacebook Pages
ThreadsOAuth 2.0 (Meta)500105 minNone
LinkedInOAuth 2.03,000110 minLinkedIn Organizations
TikTokOAuth 2.02,2003510 minNone
BlueskyApp Password300460 sNone
YouTubeOAuth 2.0 (Google)100 (title) / 5,000 (desc)1UnlimitedYouTube Channels
PinterestOAuth 2.0100 (title) / 500 (desc)2015 minPinterest Boards
MastodonOAuth 2.0 (dashboard)5004N/ANone
TelegramBot Token4,096 (text) / 1,024 (caption)10N/ANone
Google Business ProfileOAuth 2.0 (Google)1,5001N/ABusiness Locations

Post type support

Which content types each platform supports.

PlatformText-onlyImagesVideoCarouselGIFReels / Shorts
Twitter / X
Instagram
Facebook
Threads
LinkedIn
TikTok
Bluesky
YouTube
Pinterest
Mastodon
Telegram
Google Business Profile

Authentication methods

Platforms are connected via three methods. See the Connecting Accounts guide for step-by-step instructions.

OAuth 2.0

Redirect-based flow. User authorizes access in the platform's UI.

TwitterInstagramFacebookThreadsLinkedInTikTokYouTubePinterest

App Password

Direct credential connection. User provides their app password.

Bluesky

Bot Token

Create a bot via BotFather, add it to your channel/group.

Telegram

Entity selection

Some platforms require a second step after OAuth — selecting which page, organization, channel, or board to post to. When this step is needed, the OAuth callback redirect includes selectionRequired=true and a selectionToken for the entities and select endpoints.

PlatformEntity typeEndpoint
FacebookFacebook PagesGET /api/v1/connect/facebook/entities
LinkedInLinkedIn OrganizationsGET /api/v1/connect/linkedin/entities
YouTubeYouTube ChannelsGET /api/v1/connect/youtube/entities
PinterestPinterest BoardsGET /api/v1/connect/pinterest/entities
Google Business ProfileBusiness LocationsGET /api/v1/connect/google-business/entities

Platform details

Key constraints and gotchas for each platform.

Twitter / X

twitter

Auth

OAuth 2.0

Text limit

280 chars

Max media

4 items

Max video

2 min 20 s

Quirks & constraints

  • 4 images OR 1 video per post (not both)
  • GIFs count as video — only 1 per post
  • Minimum image size: 4×4 px
  • Video max: 512 MB, images max: 5 MB

Instagram

instagram

Auth

OAuth 2.0 (Meta)

Text limit

2,200 chars

Max media

10 items

Max video

90 s

Quirks & constraints

  • Media is required on every post — no text-only posts
  • Max 30 hashtags per post
  • Image aspect ratio: 4:5 to 1.91:1
  • Minimum image size: 320×320 px
  • GIFs not supported — convert to MP4

Facebook

facebook

Auth

OAuth 2.0 (Meta)

Text limit

63,206 chars

Max media

10 items

Max video

4 hours

Entity selection required: After connecting, call GET /api/v1/connect/facebook/entities to list available facebook pages, then POST /api/v1/connect/facebook/select to choose one.

Quirks & constraints

  • Posts go to a Page, not personal profile — you must select a Page after connecting
  • Video max: 4 GB, images max: 4 MB
  • Minimum image size: 100×100 px

Threads

threads

Auth

OAuth 2.0 (Meta)

Text limit

500 chars

Max media

10 items

Max video

5 min

Quirks & constraints

  • Video max: 1 GB — most generous for video among short-text platforms
  • Image aspect ratio: 4:5 to 1.91:1
  • Minimum image size: 320×320 px
  • GIFs not supported

LinkedIn

linkedin

Auth

OAuth 2.0

Text limit

3,000 chars

Max media

1 items

Max video

10 min

Entity selection required: After connecting, call GET /api/v1/connect/linkedin/entities to list available linkedin organizations, then POST /api/v1/connect/linkedin/select to choose one.

Quirks & constraints

  • Only 1 media item per post (no carousel)
  • Video max: 5 GB — largest among all platforms
  • Image aspect ratio: 1:2.4 to 2.4:1
  • Minimum image size: 200×200 px

TikTok

tiktok

Auth

OAuth 2.0

Text limit

2,200 chars

Max media

35 items

Max video

10 min

Quirks & constraints

  • 35 photos OR 1 video per post
  • Image aspect ratio: 9:16 to 1:1 (portrait-first)
  • Minimum image size: 360×360 px
  • Only JPEG and WebP images — no PNG
  • GIFs not supported

Bluesky

bluesky

Auth

App Password

Text limit

300 chars

Max media

4 items

Max video

60 s

Quirks & constraints

  • Text is required on every post
  • 1 MB image size limit — much smaller than other platforms
  • Video max: 100 MB
  • Connected via app password, not OAuth

YouTube

youtube

Auth

OAuth 2.0 (Google)

Text limit

100 (title) / 5,000 (desc) chars

Max media

1 items

Max video

Unlimited

Entity selection required: After connecting, call GET /api/v1/connect/youtube/entities to list available youtube channels, then POST /api/v1/connect/youtube/select to choose one.

Quirks & constraints

  • Video only — no image posts
  • Uses title + description instead of a single text field
  • Video max: 2 GB via API
  • Minimum dimensions: 426×240 px
  • Supports MP4, MOV, AVI, WebM

Pinterest

pinterest

Auth

OAuth 2.0

Text limit

100 (title) / 500 (desc) chars

Max media

20 items

Max video

15 min

Entity selection required: After connecting, call GET /api/v1/connect/pinterest/entities to list available pinterest boards, then POST /api/v1/connect/pinterest/select to choose one.

Quirks & constraints

  • You must select a Board to pin to after connecting
  • Image aspect ratio: 1:2.1 to 2:3 — tall/portrait strongly preferred
  • Image max: 32 MB, video max: 2 GB
  • Minimum image size: 100×100 px
  • GIFs not supported

Mastodon

mastodon

Auth

OAuth 2.0 (dashboard)

Text limit

500 chars

Max media

4 items

Max video

N/A

Quirks & constraints

  • Connect on the Schedulala dashboard: Mastodon OAuth is per-instance, so the API connect endpoint does not support it yet. Posting via the API works like any other platform.
  • 4 images OR 1 video/GIF per post
  • Default 500-character limit (larger on some instances)
  • Image max: 16 MB, video max: ~99 MB (instance defaults)
  • Visibility, content warnings (spoilerText), sensitive flag, and language via platformSettings.mastodon

Telegram

telegram

Auth

Bot Token

Text limit

4,096 (text) / 1,024 (caption) chars

Max media

10 items

Max video

N/A

Quirks & constraints

  • Connected via Bot Token — add your bot to a channel/group
  • Register channels with POST /api/v1/connect/telegram/channels; a bot with no registered channel cannot post
  • Separate limits for text messages (4,096) and media captions (1,024)
  • Only JPEG and PNG images — no WebP
  • Only MP4 video
  • Image max: 10 MB, video max: 50 MB

Google Business Profile

google-business

Auth

OAuth 2.0 (Google)

Text limit

1,500 chars

Max media

1 items

Max video

N/A

Entity selection required: After connecting, call GET /api/v1/connect/google-business/entities to list available business locations, then POST /api/v1/connect/google-business/select to choose one.

Quirks & constraints

  • Accounts are business LOCATIONS — accountId is the locationId (e.g. 'locations/456'); only locations selected in the dashboard are postable
  • Exactly 1 image per post: JPEG or PNG, min 400×300 px, max 5 MB — video not supported
  • STANDARD, EVENT, and OFFER post types plus CTA buttons via platformSettings['google-business']
  • STANDARD posts expire after ~7 days; EVENT/OFFER posts expire after their end date
  • A REJECTED state means Google's content policy declined the post
  • No post-level analytics (Google discontinued them) — GBP is absent from the analytics endpoints

Related