Skip to main content
Connecting social accounts is the hardest part of any integration because OAuth flows are pain. We offer two ways to handle this.

1. The Easy Way (Hosted Flow)

We host the UI. You just send the user to a link, they click buttons, and get redirected back to you. Endpoint: POST /api/v1/social-account/create-portal-link Test it in Swagger or the API Reference Client.

Parameters

ParameterRequiredDescription
teamIdYesThe team ID to connect the social accounts to.
redirectUrlYesThe URL to redirect to after clicking the back button.
socialAccountTypesYesThe social account types to connect (e.g. ['INSTAGRAM', 'LINKEDIN']).
logoUrlNoThe URL of the logo to display on the top of the page.
userLogoUrlNoThe URL of the user logo/avatar to display.
userNameNoThe name of the user to display.
goBackButtonTextNoThe text of the back button.
languageNoThe language of the page.
hidePoweredByNoWhether to hide the “powered by” text.
hideGoBackButtonNoWhether to hide the back button.
hideUserLogoNoWhether to hide the user logo.
hideUserNameNoWhether to hide the user name.
hideLanguageSwitcherNoWhether to hide the language switcher.
showModalOnConnectSuccessNoShow a modal on connect success asking what to do next—go back to redirectUrl or close and connect more accounts.
maxSocialAccountsConnectedNoThe maximum number of social accounts that can be connected.

Supported Languages

CodeLanguage
enEnglish
plPolish
frFrench
hiHindi
svSwedish
deGerman
esSpanish
itItalian
nlDutch
ptPortuguese
ruRussian
trTurkish
zhChinese

Hosted Page Preview

Connect social account flow

2. The Hard Way (Custom UI)

You build the UI. You trigger the OAuth flows. You look like a hero.

Connect Social Account Flow

Connect social account flow For most platforms, the flow is straightforward. The exceptions are YouTube, Facebook, Instagram, LinkedIn, and Google Business where you need to select a channel after the initial connection.
Channel Selection Required:
  • YouTube: Select a YouTube channel.
  • Facebook: Select a Facebook Page.
  • Instagram: Select an Instagram account (connected to a Facebook Page).
  • LinkedIn: Select a LinkedIn Company Page.
  • Google Business: Select a business location.

Handling Callbacks

Whether you use Hosted or Custom, the user eventually comes back to your URL with query parameters.

Success Messages

We append success flags to your redirect URL:
ParameterMessage
twitter-callbackTwitter connected successfully
pinterest-callbackPinterest connected successfully
tiktok-callbackTikTok connected successfully
facebook-callbackFacebook connected successfully
instagram-callbackInstagram connected successfully
linkedin-callbackLinkedIn connected successfully
reddit-callbackReddit connected successfully
discord-callbackDiscord connected successfully
slack-callbackSlack connected successfully
youtube-callbackYouTube connected successfully
threads-callbackThreads connected successfully
mastodon-callbackMastodon connected successfully
bluesky-callbackBluesky connected successfully
google-business-callbackGoogle Business connected successfully

Error Messages

If things go wrong, we tell you why. Here’s the complete list:

Twitter/X

ParameterMessage
twitter-callbackError connecting Twitter
twitter-not-enough-permissionsYou didn’t grant all the necessary permissions

Pinterest

ParameterMessage
pinterest-callbackError connecting Pinterest
pinterest-not-enough-permissionsYou didn’t grant all the necessary permissions

TikTok

ParameterMessage
tiktok-callbackError connecting TikTok
tiktok-not-enough-permissionsYou didn’t grant all the necessary permissions

Facebook

ParameterMessage
facebook-callbackError connecting Facebook
facebook-not-enough-pagesYou don’t have enough permissions in any of your Facebook pages
facebook-not-enough-permissionsYou didn’t grant all the necessary permissions

Instagram

ParameterMessage
instagram-callbackError connecting Instagram
instagram-not-enough-accountsYou don’t have enough permissions in any of your Instagram accounts, or none of your Facebook pages has an Instagram account connected
instagram-not-enough-permissionsYou didn’t grant all the necessary permissions

LinkedIn

ParameterMessage
linkedin-callbackError connecting LinkedIn
linkedin-not-enough-channelsYou don’t have enough permissions in any of your LinkedIn organizations
linkedin-not-enough-permissionsYou didn’t grant all the necessary permissions

Reddit

ParameterMessage
reddit-callbackError connecting Reddit
reddit-not-enough-permissionsYou didn’t grant all the necessary permissions

Discord

ParameterMessage
discord-callbackError connecting Discord
discord-not-enough-serversYou don’t have enough permissions in any of your Discord servers
discord-not-enough-permissionsYou didn’t grant all the necessary permissions

Slack

ParameterMessage
slack-callbackError connecting Slack
slack-not-enough-workspacesYou don’t have enough permissions in any of your Slack workspaces
slack-not-enough-permissionsYou didn’t grant all the necessary permissions

YouTube

ParameterMessage
youtube-callbackError connecting YouTube
youtube-not-enough-channelsYou don’t have enough permissions in any of your YouTube channels
youtube-not-enough-permissionsYou didn’t grant all the necessary permissions

Threads

ParameterMessage
threads-callbackError connecting Threads
threads-not-enough-permissionsYou didn’t grant all the necessary permissions

Mastodon

ParameterMessage
mastodon-callbackError connecting Mastodon
mastodon-not-enough-permissionsYou didn’t grant all the necessary permissions

Bluesky

ParameterMessage
bluesky-callbackError connecting Bluesky
bluesky-not-enough-permissionsYou didn’t grant all the necessary permissions

Google Business

ParameterMessage
google-business-callbackError connecting Google Business

Pro Tip: Always handle the not-enough-permissions error gracefully. Tell the user: “Hey, we need those permissions to actually post. Please try again and don’t uncheck the boxes.”