🚀

Social Media Integration Guide

Step-by-step instructions to connect your social media accounts to PromoteSense

📋 What's in this guide

  1. Twitter / X ~15 min
  2. LinkedIn ~20 min
  3. Instagram / Facebook ~25 min
  4. WhatsApp Business ~10 min
  5. How to paste keys into PromoteSense ~2 min
  6. Common problems & fixes
⚠️ Before you start: You need a PromoteSense account and at least one Portal created. If you haven't done this yet, register at your PromoteSense URL and complete the Onboarding wizard first.
💡 What are API keys? Think of API keys like a "password" that lets PromoteSense post on your behalf. Just like you give your house key to a trusted friend so they can water your plants while you're away - API keys let our system access your social media accounts to publish posts automatically. Your login password is NEVER shared.

Twitter / X Connect Twitter

Twitter requires 4 keys: API Key, API Secret, Access Token, and Access Secret. Here's how to get them.

Part A: Create a Twitter Developer Account

1

Go to the Twitter Developer Portal

Open your browser and go to: https://developer.x.com

Click the "Sign Up" button in the top-right corner. Log in with the SAME Twitter account you want to post from.

📷 Screenshot: Twitter Developer Portal homepage with "Sign Up" button highlighted
2

Apply for a Developer Account

Twitter will ask you a few questions:

  1. Select "Making a bot" or "Building tools for Twitter users" as your use case
  2. In the description box, write something like: "I'm building an automated social media management tool to schedule and publish posts for my business."
  3. Check the agreement boxes and submit
💡 Tip: Twitter usually approves Free tier accounts instantly. If it asks you to verify your email or phone, do that first.
3

Create a "Project" and an "App"

After your account is approved, you'll be taken to the Developer Dashboard.

  1. Click "+ Create Project"
  2. Name it anything you like, e.g. "PromoteSense"
  3. Select use case: "Making a bot"
  4. Project description: "Automated social media posting"
  5. Click "Next" and then "Create App"
  6. Name your app, e.g. "MyBusiness Posts"
📷 Screenshot: Twitter Developer Dashboard showing "Create Project" flow
4

Get your API Key and API Secret

After creating the app, Twitter immediately shows you:

🛑 IMPORTANT: Copy both keys RIGHT NOW and save them in Notepad. Twitter will NOT show the Secret again. If you lose it, you'll need to regenerate new ones.
📷 Screenshot: Twitter showing API Key and Secret after app creation (Secret partially hidden)

Part B: Get your Access Token and Secret

5

Set App Permissions to "Read and Write"

Before generating tokens, you MUST change permissions:

  1. Go to your app in the Developer Portal
  2. Click on the "Settings" tab
  3. Scroll down to "App permissions"
  4. Click "Edit"
  5. Select "Read and Write" (NOT just "Read")
  6. Click "Save"
🛑 CRITICAL: If you skip this step, PromoteSense won't be able to post tweets. It will only be able to read them. ALWAYS set permissions BEFORE generating tokens.
📷 Screenshot: App Settings page with "Read and Write" permission selected
6

Generate Access Token and Access Secret

  1. Go to the "Keys and Tokens" tab of your app
  2. Under "Authentication Tokens", find "Access Token and Secret"
  3. Click "Generate"
  4. Two new values will appear:
    • Access Token - looks like: 1234567890-AbCdEfGhIjKlMnOpQrStUvWxYz
    • Access Secret - looks like: kAcSOqF21Fu85e7zjz7ZN2U4ZRhfV3WpwPAoE3Z7kBw
🛑 IMPORTANT: Copy BOTH values immediately and save them in Notepad. These are shown ONLY ONCE.
📷 Screenshot: Keys and Tokens tab showing generated Access Token and Secret
7

Summary - Your 4 Twitter Keys

You should now have all 4 values saved in Notepad:

What Twitter Calls ItWhat PromoteSense Calls ItExample Format
API Key (Consumer Key)API Keyxvz1evFS4wEEPTGE...
API Secret (Consumer Secret)API SecretL8qq9PZyRg6ieKGE...
Access TokenAccess Token1234567890-AbCdEf...
Access Token SecretAccess SecretkAcSOqF21Fu85e7z...

Jump to "How to paste keys into PromoteSense"

LinkedIn Connect LinkedIn

LinkedIn requires 1 key: an Access Token. Getting it takes a few more steps because LinkedIn uses a process called "OAuth" (don't worry, we'll walk through it).

Part A: Create a LinkedIn Developer App

1

Go to LinkedIn Developers

Open: https://www.linkedin.com/developers/

Click "Create App". You must be logged into the LinkedIn account you want to post from.

📷 Screenshot: LinkedIn Developers page with "Create App" button
2

Fill in App Details

FieldWhat to Enter
App nameYour business name, e.g. "SaveTaxNow Social"
LinkedIn PageSelect your LinkedIn Company Page (you MUST have one)
App logoUpload any logo image (required)
Privacy policy URLYour website URL, e.g. https://yourdomain.com/privacy

Click "Create App".

⚠️ Don't have a Company Page? Go to LinkedIn, click "For Business" (top-right), then "Create a Company Page". It takes 2 minutes. You need this before creating the developer app.
3

Request the right permissions (Products)

  1. In your app dashboard, click the "Products" tab
  2. Find "Share on LinkedIn" and click "Request Access"
  3. Also request "Sign In with LinkedIn using OpenID Connect"
  4. Wait for approval (usually instant, sometimes takes a few hours)
📷 Screenshot: LinkedIn App Products tab showing "Share on LinkedIn" with Request Access button
4

Set Redirect URL

  1. Click the "Auth" tab in your app settings
  2. Under "OAuth 2.0 settings", find "Authorized redirect URLs"
  3. Add: https://www.linkedin.com/developers/tools/oauth/redirect
  4. Click "Update" (or the + button)

Also on this same page, note down your Client ID and Client Secret - you'll need them in the next step.

📷 Screenshot: Auth tab showing Client ID, Client Secret, and Redirect URL field

Part B: Generate an Access Token

5

Use LinkedIn's Token Generator Tool

This is the easiest way to get a token without any coding:

  1. Go to: https://www.linkedin.com/developers/tools/oauth
  2. Select your app from the dropdown
  3. Under "OAuth Scopes", check these boxes:
    • w_member_social (to post on your personal profile)
    • r_liteprofile (to read your profile info)
  4. Click "Request access token"
  5. LinkedIn will redirect you to a login page - log in and click "Allow"
  6. You'll get an Access Token - it's a long string of letters and numbers
📷 Screenshot: LinkedIn OAuth Token Generator Tool with scopes selected
6

Copy Your Access Token

The token will look something like:

AQVhj3gFrL2kO9WxYz5nBp8rTmJkLsNq1A2B3C4D5E6F7G8H9...

Copy this entire value and save it in Notepad.

⚠️ Token Expiry: LinkedIn tokens expire after 60 days. When posts stop working, come back here and generate a new token. PromoteSense will alert you by email before your token expires.
7

Summary - Your LinkedIn Key

What LinkedIn Calls ItWhat PromoteSense Calls ItWhere You Paste It
Access TokenAccess TokenSettings → Platform Connections → LinkedIn

The other 3 fields (Access Secret, API Key, API Secret) can be left blank for LinkedIn.

Jump to "How to paste keys into PromoteSense"

Instagram / Facebook Connect Instagram

Instagram posting works through Facebook's system (called "Meta"). You need a Facebook Page linked to an Instagram Business Account. PromoteSense needs: Access Token + Page ID.

Part A: Prerequisites (One-Time Setup)

1

Make sure you have these 3 things

  1. A Facebook Page for your business (not your personal profile)
  2. An Instagram Business or Creator account (not a personal account)
  3. Your Facebook Page linked to your Instagram account
💡 How to switch to Instagram Business Account: Open Instagram app → Settings → Account → Switch to Professional Account → Select "Business". Then go to Settings → Linked Accounts → Facebook → link your Facebook Page.

Part B: Create a Meta (Facebook) Developer App

2

Go to Meta Developer Portal

Open: https://developers.facebook.com/

Click "My Apps" (top right) and then "Create App".

📷 Screenshot: Meta Developer Portal with "Create App" button
3

Set Up the App

  1. Select app type: "Business"
  2. App name: e.g. "MyBusiness Social"
  3. Contact email: your business email
  4. Business Portfolio: select your business (or "I don't have one")
  5. Click "Create App"
4

Add Instagram Graph API to your app

  1. In the App Dashboard, scroll down to "Add Products"
  2. Find "Instagram Graph API" and click "Set Up"
📷 Screenshot: App Dashboard showing "Instagram Graph API" product with Set Up button

Part C: Generate an Access Token

5

Use the Graph API Explorer

This is the easiest way to get your token:

  1. Go to: https://developers.facebook.com/tools/explorer/
  2. In the top-right dropdown, select your app
  3. Click "Generate Access Token"
  4. A popup will ask you to grant permissions. Check these boxes:
    • pages_show_list
    • pages_read_engagement
    • pages_manage_posts
    • instagram_basic
    • instagram_content_publish
  5. Click "Generate Access Token" and then "Allow" in the popup
📷 Screenshot: Graph API Explorer with permissions checkboxes and Generate button
6

Convert to a Long-Lived Token (IMPORTANT!)

The token from Step 5 expires in 1 hour. You need to convert it to a long-lived token (60 days):

  1. Go to: https://developers.facebook.com/tools/debug/accesstoken/
  2. Paste your token and click "Debug"
  3. At the bottom, click "Extend Access Token"
  4. A new, longer token will appear - copy this one
🛑 Use the EXTENDED token, not the short-lived one. The short one will stop working in 1 hour.
📷 Screenshot: Access Token Debugger showing "Extend Access Token" button

Part D: Get Your Instagram Page ID

7

Find Your Instagram Business Account ID

Go back to the Graph API Explorer and paste this into the query box at the top:

me/accounts?fields=id,name,instagram_business_account

Click "Submit". You'll see a result like:

{ "data": [ { "id": "123456789012345", "name": "Your Business Page", "instagram_business_account": { "id": "17841412345678901" } } ] }

The number inside instagram_business_account.id (e.g. 17841412345678901) is your Instagram Page ID. Copy it.

📷 Screenshot: Graph API Explorer showing the query result with Instagram Business Account ID highlighted
8

Summary - Your Instagram Keys

What Meta Calls ItWhat PromoteSense Calls ItWhere You Paste It
Long-Lived User Access TokenAccess TokenSettings → Platform Connections → Instagram
Instagram Business Account IDAPI KeySettings → Platform Connections → Instagram

Leave Access Secret and API Secret blank for Instagram.

⚠️ Token Expiry: Meta tokens expire after 60 days. Repeat Steps 5-6 to get a fresh token when PromoteSense alerts you. In future, we plan to add auto-refresh.

Jump to "How to paste keys into PromoteSense"

WhatsApp WhatsApp Business API (Broadcast)

PromoteSense uses the official WhatsApp Business Cloud API to send bulk messages to your contacts. You need: Access Token + Phone Number ID. Cost: approx Rs.0.50 per message.

Part A: Set Up Meta Business Account

1

Create or verify your Meta Business Account

  1. Go to: https://business.facebook.com/
  2. If you don't have an account, click "Create Account"
  3. Enter your business name, your name, and business email
  4. Complete verification if prompted
💡 If you already have a Facebook Page, you likely already have a Meta Business account.
2

Create a Meta Developer App

  1. Go to: https://developers.facebook.com/
  2. Click "My Apps" then "Create App"
  3. Select type: "Business"
  4. App name: e.g. "MyBusiness WhatsApp"
  5. Link to your Meta Business Account
  6. Click "Create App"
📷 Screenshot: Create App dialog with Business type selected
3

Add WhatsApp product to your app

  1. In your App Dashboard, scroll to "Add Products"
  2. Find "WhatsApp" and click "Set Up"
  3. Select your Meta Business Account when prompted
📷 Screenshot: App Dashboard with WhatsApp product "Set Up" button

Part B: Get your Phone Number ID

4

Configure WhatsApp in your app

  1. After adding WhatsApp, click "WhatsApp" > "API Setup" in the left sidebar
  2. You'll see a test phone number provided by Meta (you can use this for testing)
  3. Your Phone Number ID is shown on this page - it looks like: 123456789012345
  4. Copy this Phone Number ID and save it in Notepad
📷 Screenshot: WhatsApp API Setup page showing Phone Number ID
💡 Test phone number: Meta gives you a free test number. You can use it to test with up to 5 verified numbers. To send to anyone, you'll need to add your own business phone number later.

Part C: Get your Access Token

5

Get a Temporary Token (for testing)

On the same "API Setup" page, you'll see a "Temporary access token". This expires in 24 hours but is good for testing.

EAAGn4ZBZBaKcYBO3nFIu0xLKYz8lZCb5m9hP2qR7sT...

Copy this token for initial testing.

6

Get a Permanent Token (for production)

For long-term use, create a permanent (non-expiring) System User token:

  1. Go to Meta Business Settings > System Users
  2. Click "Add" to create a new System User
  3. Name: "PromoteSense Bot", Role: "Admin"
  4. Click "Generate New Token"
  5. Select your WhatsApp app
  6. Check these permissions:
    • whatsapp_business_management
    • whatsapp_business_messaging
  7. Click "Generate Token"
  8. Copy the token - this one does NOT expire
🛑 IMPORTANT: Save this token immediately. It is shown ONLY ONCE.
📷 Screenshot: System User token generation with WhatsApp permissions checked
7

Add your own phone number (optional)

To send from your actual business number instead of the test number:

  1. In "WhatsApp" > "API Setup", click "Add phone number"
  2. Enter your business phone number (must have WhatsApp Business app installed)
  3. Verify via SMS or voice call
  4. Your new Phone Number ID will appear - use this one instead
⚠️ Adding your own number means it can NO LONGER be used with the WhatsApp Business app. The API takes over. Use a dedicated number for API messaging.
8

Summary - Your WhatsApp Keys

What Meta Calls ItWhat PromoteSense Calls ItWhere You Paste It
System User Access Token (or temporary token)Access TokenSettings > Platform Connections > WhatsApp
Phone Number IDAPI KeySettings > Platform Connections > WhatsApp

Leave Access Secret and API Secret blank for WhatsApp.

Jump to "How to paste keys into PromoteSense"

Using WhatsApp Broadcast in PromoteSense

9

Upload contacts and send

  1. Go to WhatsApp page in the sidebar
  2. Upload a CSV file with columns: Name,Phone (phone format: 919876543210)
  3. Type your message or use "AI Suggest" to get message ideas
  4. Click "Send Broadcast"
  5. PromoteSense sends your message to each contact via the WhatsApp Cloud API
  6. Cost: Rs.0.50 per message, deducted from your wallet
💡 WhatsApp CTA in other modules: You can also add a WhatsApp CTA (call-to-action) to AI-generated posts, blogs, ad copy, and images. Just select "WhatsApp" in the CTA dropdown and enter your number.
💡 wa.me links: For click-to-chat links, use: https://wa.me/919876543210 (country code + number, no spaces/dashes/plus).

📋 How to Paste Keys into PromoteSense

1

Go to Settings

Log in to PromoteSense and click "Settings" in the left sidebar (the gear icon at the bottom).

📷 Screenshot: PromoteSense sidebar with Settings highlighted
2

Find "Platform Connections"

Scroll down to the "Platform Connections" card. You'll see a dropdown and 4 text fields.

3

Select the Platform and Paste Your Keys

For Twitter:

PromoteSense FieldPaste This
PlatformSelect: Twitter
Access TokenYour Twitter Access Token
Access SecretYour Twitter Access Token Secret
API KeyYour Twitter API Key (Consumer Key)
API SecretYour Twitter API Secret (Consumer Secret)

For LinkedIn:

PromoteSense FieldPaste This
PlatformSelect: LinkedIn
Access TokenYour LinkedIn Access Token
Access Secret(leave blank)
API Key(leave blank)
API Secret(leave blank)

For Instagram:

PromoteSense FieldPaste This
PlatformSelect: Instagram
Access TokenYour long-lived Meta Access Token
Access Secret(leave blank)
API KeyYour Instagram Business Account ID (e.g. 17841412345678901)
API Secret(leave blank)

For WhatsApp:

PromoteSense FieldPaste This
PlatformSelect: WhatsApp
Access TokenYour Meta System User token (or temporary token)
Access Secret(leave blank)
API KeyYour Phone Number ID (e.g. 123456789012345)
API Secret(leave blank)
4

Click "Save Connection"

Click the "Save Connection" button. You should see a green success message: "Platform connection saved."

The platform will now appear in the "Platform Connections" list above with a green "Connected" badge.

📷 Screenshot: Settings page showing saved platforms with Connected badges
💡 You can save multiple platforms. Save Twitter first, then change the dropdown to LinkedIn and save again, then Instagram. Each one gets saved separately.

🔧 Common Problems & Fixes

ProblemCauseFix
"Unauthorized" or "403 Forbidden" when posting to TwitterApp permissions set to "Read" onlyGo to Twitter Developer Portal → App Settings → change to "Read and Write" → regenerate Access Token and Secret → save new keys in PromoteSense
"Token expired" on LinkedInLinkedIn tokens expire every 60 daysGo to LinkedIn OAuth Tool → generate a new token → paste in PromoteSense Settings
"OAuthException" on InstagramMeta token expired (60 days) or permissions not grantedGo to Graph API Explorer → regenerate token → extend it → paste in PromoteSense
Instagram post says "Media container error"Instagram Business Account not linked to Facebook PageInstagram App → Settings → Linked Accounts → Facebook → link your Page
"No Instagram Business Account found"Using a personal Instagram accountSwitch to Business Account: Instagram → Settings → Account → Switch to Professional
Twitter shows "Rate limit exceeded"Free tier allows limited posts per monthWait 15 minutes and try again, or upgrade to Twitter Basic tier ($100/mo)
Posts scheduled but never publishedKeys are incorrect or the Windows Service job isn't runningCheck Settings → verify Connected badge is green. Contact admin if jobs aren't running.
Can't create LinkedIn Developer AppNo LinkedIn Company PageCreate one first: LinkedIn → For Business → Create a Company Page

📞 Need help? If you're stuck on any step, contact PromoteSense support or your admin. We're happy to help you get connected!

PromoteSense Social Media Integration Guide v1.0 — Last updated April 2026