Skip to content

Comment on A new and improved Twitter APIparent

Comments

Last time I checked (2 months ago, I think), the API couldn't fetch more than the 3600 latest liked / posted tweets. Has this changed?

Yes, the API can only get the most recent tweets but the script above can be used with the tweets.csv file provided within your downloadable Twitter Archive. You can delete tweets of any age via the API.

I had to use the archive initially to delete most of the old stuff but now I never have more than a few tweets to delete.

If you delete the first 3600 tweets, the next 3600 should now be the latest posted.

You're technically right, but the Twitter API won't return the next 3600, even after deleting the first ones. The response will be empty, even if you know for sure there's more.

Meaning the API is leaking the number of deleted tweets?

Could you make a tool to find out how many tweets someone has deleted?

No, my understanding is that Twitter has a "bucket" of the latest 3600 tweets you've posted / liked. This bucket is faster than their database to query, so once you empty the bucket, the API returns no result, and the bucket is never "refilled" from the database.

Those are not technical terms, sorry, but this is how I currently understand it so it might help you too?

Rather than “buckets”, I bet they just have a flag on each tweet in the database for whether it’s deleted. So if you delete the most recent 3600, next time they do a query to see recent tweets, it retrieves 3600, but they’re all deleted, so it filters them all out. Buckets are a little less likely implementation wise because you’d either sometimes see that the most recent bucket had very few tweets in it, or they’d have to be constantly shuffling tweets between buckets.

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.