.env file manually — credentials entered through the UI are stored securely and used automatically.Platforms
X (Twitter)
X (Twitter)
| Variable | Description |
|---|---|
X_API_KEY | API Key (Consumer Key) |
X_API_SECRET | API Secret (Consumer Secret) |
Create an X Developer app
- Rate limit: 300 posts per 3 hours
- Media: max 4 photos or 1 video per post
- X uses OAuth 1.0a (not 2.0)
- You can set
STRIP_LINKS_FROM_X_POSTS=truein your.envto automatically strip links from post text
LinkedIn (Personal Profile)
LinkedIn (Personal Profile)
| Variable | Description |
|---|---|
LINKEDIN_CLIENT_ID | Client ID |
LINKEDIN_CLIENT_SECRET | Client Secret |
Create a LinkedIn Developer app
Add required products
- Share on LinkedIn
- Sign In with LinkedIn using OpenID Connect
openid, profile, email, w_member_socialLimits and notes:- Max 1 video or a carousel (minimum 2 images) per post
- The same Client ID and Secret are used for LinkedIn Pages (see below)
LinkedIn (Company Page)
LinkedIn (Company Page)
LINKEDIN_CLIENT_ID / LINKEDIN_CLIENT_SECRET). You just need to add an additional redirect URL and enable one extra scope.Additional redirect URL to add:w_organization_social, r_organization_socialOptional product to add: Community Management API (required for posting to pages in some regions)Once your LinkedIn app is configured with the page scopes, connect your LinkedIn Page from Channels → Add Channel → LinkedIn Page.Facebook (Page)
Facebook (Page)
| Variable | Description |
|---|---|
FACEBOOK_APP_ID | App ID |
FACEBOOK_APP_SECRET | App Secret |
Create a Facebook Developer app
Request required permissions
pages_show_list, business_management, pages_manage_posts, pages_read_engagement, pages_manage_engagement- Posts can include text, photos, or video
- Stories require at least 1 media attachment
Instagram (Business)
Instagram (Business)
FACEBOOK_APP_ID / FACEBOOK_APP_SECRET).Additional redirect URL to add:instagram_basic, pages_show_list, pages_read_engagement, business_management, instagram_content_publish, instagram_manage_comments, instagram_manage_insightsRequirements:- Your Instagram account must be a Business account
- The Instagram account must be linked to a Facebook Page
- Carousel posts: max 10 media items
- Aspect ratio: 4:5 to 1.91:1
Instagram (Standalone)
Instagram (Standalone)
YouTube
YouTube
| Variable | Description |
|---|---|
YOUTUBE_CLIENT_ID | OAuth 2.0 Client ID |
YOUTUBE_CLIENT_SECRET | Client Secret |
Create a Google Cloud project
Create OAuth credentials
userinfo.profile, userinfo.email, youtube, youtube.force-ssl, youtube.readonly, youtube.upload, youtubepartner, yt-analytics.readonlyLimits and notes:- Each post must include a video — text-only posts are not supported
- YouTube enforces daily upload quota limits on the API
- Google also uses these credentials for Google My Business and Gmail — no separate app needed
TikTok
TikTok
| Variable | Description |
|---|---|
TIKTOK_CLIENT_ID | Client Key |
TIKTOK_CLIENT_SECRET | Client Secret |
Create a TikTok Developer app
Submit for audit
video.list, user.info.basic, video.publish, video.upload, user.info.profile, user.info.statsLimits and notes:- Each post must include at least 1 video or 1+ photos
- Videos must be at least 720p resolution
- Public posting requires TikTok app audit approval
Threads
Threads
| Variable | Description |
|---|---|
THREADS_APP_ID | App ID |
THREADS_APP_SECRET | App Secret |
Add the Threads API product
threads_basic, threads_content_publish, threads_manage_replies, threads_manage_insightsNotes:- Threads access tokens are automatically refreshed every 58 days
Bluesky
Bluesky
Create a Bluesky App Password
- Max 300 characters per post
- Max 4 photos or 1 video per post
- 2FA must be disabled on your Bluesky account when using an App Password
Mastodon
Mastodon
| Variable | Description |
|---|---|
MASTODON_URL | Your Mastodon instance URL (e.g. https://mastodon.social) |
MASTODON_CLIENT_ID | Client ID from your instance |
MASTODON_CLIENT_SECRET | Client Secret from your instance |
Create a Mastodon application
write:statuses, profile, write:media- Max 500 characters per post
- Access tokens never expire
Reddit
| Variable | Description |
|---|---|
REDDIT_CLIENT_ID | App ID |
REDDIT_CLIENT_SECRET | App Secret |
Create a Reddit app
read, identity, submit, flairNotes:- Reddit enforces a strict rate limit of 1 request per second
- Supports posts with text, media, and links
Pinterest
| Variable | Description |
|---|---|
PINTEREST_CLIENT_ID | App ID |
PINTEREST_CLIENT_SECRET | App Secret |
Create a Pinterest Developer app
boards:read, boards:write, pins:read, pins:write, user_accounts:readLimits and notes:- Every post must include at least 1 media item
- Max 5 photos or 1 video (video posts require a cover image as a second attachment)
VK (VKontakte)
VK (VKontakte)
| Variable | Description |
|---|---|
VK_ID | App ID |
Create a VK standalone app
vkid.personal_info, email, wall, status, docs, photos, videoLimits and notes:- Max 2,048 characters per post
- Supports photos and video
- Uses PKCE (S256) for the OAuth flow
Farcaster (via Neynar)
Farcaster (via Neynar)
| Variable | Description |
|---|---|
NEYNAR_SECRET_KEY | Neynar API Key |
NEYNAR_CLIENT_ID | Neynar Client ID |
Create a Neynar account
- Max 800 characters per post
- Supports photos only (no video)
