Connecting XPoster and X.com

Connecting your site to X is a hassle. I make no arguments about that; it’s legitimately a pain in the neck, and I’m not trying to claim otherwise. But here are some helpful instructions to make your life a bit easier. These instructions assume that you don’t already have an app in the X.com developer portal.

Step 1: Sign up as a Developer

Step 2: Agree to the Developer Agreement

At this stage, you need to describe your use cases for Twitter’s data and API. Now. XPoster is pretty simple in it’s usage of Twitter’s data – it’s exclusively a push mechanism, sending your information to Twitter. So it really doesn’t use any data from Twitter beyond your authentication. However, you need at least 250 characters to describe your usage, so try something like this:

Add support for posting updates and notifications from our custom WordPress website to our X.com account to provide our followers with timely information about our website activities without providing access to our Twitter account for all content creators.

Example usage description

Then, accept the terms and conditions. It is your responsibility to read and understand those terms.

Step 3: Update your Application Access

Screenshot of Project Dashboard settings default state.
X.com Project Dashboard with a new default project, showing the settings gear highlighted.

Twitter automatically creates a new app and associates it with a project for you. So all you need to do is tweak a few settings to get it ready to use.

  • Click on the gear icon labeled “App Settings” to visit the new application’s settings.
  • Choose the “Set up” button for the User authentication settings.
  • Choose “Read and write” to allow your application to read and post Tweets.

The default applications only have “Read” access, which will allow you to authenticate, but you will not be able to post to X.

  • Set your Type of App to “Web App, Automated App or Bot”.
  • Add your callback URI and website URL. The callback URI is the home page of your website; there’s no need for anything more.
  • You can set additional fields if you need them for another application, but XPoster will not use them.
  • Save, confirming the change of permissions.

Step 4: Generate and save your five API keys

XPoster requires all five of the X.com keys and tokens. Switch to the “Keys and tokens” tab of your app settings:

The “Keys and tokens” tab on the application settings screen.

For each of the five tokens: API key, API secret, Bearer token, Access token, and Access Secret, generate them and copy the new tokens into your XPoster plugin settings.

The Access token permissions showing “Read and Write” is enabled.

After generating your Access Token and Secret, verify that their permissions show that they have “Read and Write” permissions. If they don’t, you’ll need to go back to the user settings and verify that your app has sufficient permissions, then generate them again.

API Limits

The X.com API changes rules arbitrarily and with minimal warning, so if this doesn’t match your findings, let me know.

As of Oct. 23rd, 2024, the free tier API limits are 500 posts per month with a maximum of 17 posts per day. The basic monthly tier (which is the cheapest premium option available) costs $200/month.