← All posts

DIY Buffer-like tweet scheduling with Airtable

Every once in a while, I'll sit and think about things I can share and input them on Buffer.

I love Buffer, the product (and the company) is pretty cool. But they're can be a bit pricey. The free plan is limited to 10 items in the queue.

So I made a home-cooked alternative to be able to schedule as many tweets as I like.

For the 'database', storage of the tweets, Airtable ended up being the best choice.
Cloud based, easy API, multiple views: perfect use-case.

For the actual tweeting code, it would've been a bit too much to roll a dedicated web server so it's hosted on a free Webtask function. They allow to set a cron job to schedule functions to run every x minutes.

Create Airtable workplace

If you haven't already, sign up on Airtable and create a new workplace. Call it as you want.

The "Schedule" checkbox is for quickly disabling scheduling on a tweet.
The "Tweeted" property is a way for the script to know if a tweet as already been treated and not send it twice.

The table structure (column names) doesn't need to be the same, but you would have to update the code below with the names you've used. Same for the name of the table.

Next, head to their API section and click on your workplace. There, in the code examples you'll find your API key and your Base ID, which is all you'll need on this side.

Register as a developer on Twitter

If you're not already, apply as a developer on Twitter.

Then, create a new app.

Give them all the infos they need (I know, bit of a pain in the ass).
Once you're done, head to the "Keys and tokens" section and get your Consumer API keys.
You will also need an access token & the secret because we don't want to bother with OAuth for this one.

Create the Webtask function

Then, we need to make sure the function will run at interval. I set an interval of 30 min but you can set less if you need too.

In any case, the script will tweet any Tweet that should be tweeted (that's a lot of tweet) within an interval of 1 hour.

Now, the brain of the operation. The function code you can use to automatically post new tweets.

Be careful to replace the Twitter keys with the ones you got before and do the same with Airtable.

Fill your queue

That's it!

You can check if everything is good by running manually function on Webtask.

Now you can fill this database with your stroke of twee-magination and build some audience :)

Subscribe to get future posts. No spam ever.

twitter - github