Skip to content
GTSocial

Connect X (Twitter) to GTSocial Using Your Own API Keys

To schedule posts on X (Twitter) through GTSocial with your own X account's API access, you'll create and configure an app in X's Developer Console. This guide walks you through the current process.

Create an X Developer account and enroll in Pay Per Use

To schedule posts on X (Twitter) through GTSocial with your own X account's API access, you'll create and configure an app in X's Developer Console. This guide walks you through the current process.

  1. Go to the X Developer Portal at developer.x.com and sign in with the X account you want to post from (or your organization's X account).
  2. Follow the signup flow. If X asks you to describe your use case, you can use: We use a social media management platform (GTSocial) to schedule and publish posts to our own X account, and to view engagement metrics (likes, reposts, impressions) for our own published posts. The connected account belongs to us and is managed by our team. All posting is user-initiated through the platform. We do not perform bulk data collection, automated engagement, or access data of other users.
  3. When prompted, enroll in the Pay Per Use plan and add a payment method. (If you see a page describing Free or Basic plans marked "deprecated," look for the Pay Per Use link or button — that is the current plan.)
  4. If asked to Create Project, do so:
  • Project name: anything you like (e.g., "My Company X Project")
  • Use case: choose Build customized solutions in-house
  • Description: "Scheduling and publishing posts for our own account via a social media management platform."

Create (or open) your App

  1. In the Developer Console, go to Apps. If your project doesn't have an app yet, click Create App and give it a name (e.g., "My Company Social").
  2. If you have an older app from a previous X developer signup, it may appear under a project labeled Free (deprecated). Use the Move button on the app to move it into your Pay Per Use project. If the app list looks empty afterward, use the project switcher at the top of the Apps page to switch to your Pay Per Use project — the app moved there.

Configure user authentication settings

  1. Open your app. Find the authentication settings — depending on the console version this appears as a User authentication settings panel with a Set up button, or as Edit settings next to the OAuth 2.0 Keys section.
  2. Configure exactly as follows:
    • App permissions: Read and write
    • Type of App: Web App, Automated App or Bot (confidential client)
    • Callback URI / Redirect URL: https://app.gtsocial.com/p/callback/twitter
    • Website URL: https://app.gtsocial.com
  3. Click Save. (If the console shows you an OAuth 2.0 Client ID and Client Secret afterward, you can dismiss them — they are not the credentials GTSocial needs.)

Generate your API Key and Secret

⚠️ Important: your app has several different credential types (Bearer Token, Access Token, OAuth 2.0 Client ID/Secret). GTSocial needs only the Consumer Keys — the pair labeled API Key and Secret or Consumer Key in the OAuth 1.0 Keys section. Using any other pair will produce an "Unauthorized" error.
  1. In your app, open the Keys & Tokens tab.
  2. In the OAuth 1.0 Keys (or Consumer Keys) section, click Regenerate.
    • Always regenerate rather than reuse old values — X invalidates keys when app permissions change, and old keys are a common cause of authentication failures.
  3. Copy both the Key and the Secret immediately and store them somewhere safe. X shows them only once.

Enter the credentials in GTSocial

  1. Sign in to GTSocial and open your workspace.
  2. Go to Social Accounts → Add Account → X.
  3. Enter your API Key and API Secret in the fields provided.
  4. For Tier, select Pay as you go.
  5. Save, then complete the authorization step — you'll be sent to X to approve the connection. Sign in as the X account you want to post from and approve.

Test

Schedule or publish a test post from GTSocial. It should appear on your X account within moments.

Troubleshooting

ErrorLikely causeFix
UnauthorizedWrong credential type pasted (Access Token, Bearer, or OAuth 2.0 Client pair instead of Consumer Keys), or stale keys after a permission changeRegenerate the Consumer Keys and re-enter them (Step 4)
Payment Required: credits depletedYour X developer account has no API credits remainingIn the Developer Console, go to Billing → Credits and add credits / verify your payment method
Authorization page fails or loopsCallback URI missing or mistyped in your app's authentication settingsRe-check Step 3 — the Callback URI must match exactly
Posting works but analytics don't updateMetrics reads also consume API creditsCheck your credit balance under Billing → Credits