snarfed / bridgy

📣 Connects your web site to social media. Likes, retweets, mentions, cross-posting, and more...
https://brid.gy
Creative Commons Zero v1.0 Universal
720 stars 52 forks source link

Handle Twitter API going paid #1410

Closed snarfed closed 1 year ago

snarfed commented 1 year ago

They're threatening to start charging for the API next Thurs: https://twitter.com/TwitterDev/status/1621026986784337922

No more details yet, but Elon suggests pricing will start at $100/mo plus id check, which is in line with the lowest tier of their current premium API: https://twitter.com/elonmusk/status/1621259936524300289

https://www.theverge.com/2023/2/2/23582615/twitter-removing-free-api-developer-apps-price-announcement

armingrewe commented 1 year ago

Yikes! This doesn't sound good. If that happens the last of the big social networks will be gone from feeding back to my blog. G+ obviously disappeared ages ago, followed by Facebook when they locked everything down. Seems Twitter will follow soon.

Frustrating.

snarfed commented 1 year ago

One day until this is supposedly happening, and they finally did something: they took down the entire developer forum. https://twittercommunity.com/

:clown_face: :popcorn: :sob:

mlncn commented 1 year ago

Anyone know if the posting part of brid.gy still work without going paid?

snarfed commented 1 year ago

No one knows much at this point. ☹️ I'd consider paying for the API, but I have no idea how, or how much it will cost. I'll post more as soon as I know something!

snarfed commented 1 year ago

A few more crumbs of information: https://twitter.com/TwitterDev/status/1623467615539859456

More background: https://github.com/snarfed/granary/issues/136

snarfed commented 1 year ago

My best guess would be...Bridgy currently fetches 10-30M tweets per month.

To be fair, most of those are searches to construct reply chains, and the v2 API supports fetching replies directly, so I could probably cut that number way down. Could I cut it down enough, and would I invest that much more time and effort into the Twitter API? I don't know.

armingrewe commented 1 year ago

Well, you're not alone. Quote from an email I received from Jetpack/Wordpress today:

As a result of these unexpected changes, it is possible that Jetpack Social may experience some temporary outages when automatically sharing your posts directly from WordPress to Twitter. We're working with Twitter to find the best solution for our mutual users, so your workflows are not disrupted. We will reach out again when we have more information on the path forward.

Obviously don't know their numbers, but I would guess Jetpack/Wordpress will have many multiples of API calls of Bridgy's number.

vandie commented 1 year ago

This is genuinely the dumbest change musk could make. The thing that made Twitter popular in the first place is devs hooking into it. I assume if bridgy does end up being charged then Twitter usage might cost a nominal fee for each user that wants to use it via bridgy? (depending on scale and cost, you could actually make a profit)

snarfed commented 1 year ago

Maybe! But I'm pretty allergic to fundraising or charging for Bridgy and related projects I run. Donors and paying customers come with strings and obligations that I'd rather avoid. Fortunately, if Bridgy fits in the $100/mo tier, I can afford that personally, so I may just fund it myself for a while. We'll see.

bekopharm commented 1 year ago

I'm no longer on Twitter so this doesn't affect me any more but I sure do love your attitude and your service to the IndieWeb 🫡

snarfed commented 1 year ago

Pricing finally dropped today. $100/mo for 10k tweets, which is .1% or less of Bridgy's monthly usage. 💩

https://twittercommunity.com/t/announcing-new-access-tiers-for-the-twitter-api/188728

Evidently they've removed the older tiers (standard/elevated/premium) and standardized on just free (write only), basic ($100, read 10k tweets/mo), and enterprise (sales driven, probably $42k/mo and up). Both https://developer.twitter.com/en/products/twitter-api (scroll down) and https://developer.twitter.com/en/docs/twitter-api/getting-started/about-twitter-api show just these three new tiers.

OK then.

snarfed commented 1 year ago

I've been looking at switching to scraping their internal GraphQL API with https://github.com/trevorhobenshield/twitter-api-client, and the data model is entirely different from the v1.1 and v2 official APIs. It'd take a lot of work to migrate Bridgy/granary to. With the current state of Twitter, I doubt I'd invest that time and effort.

snarfed commented 1 year ago

Worse, they're shutting down the v1.1 API(s) entirely within the next month. From https://twittercommunity.com/t/announcing-new-access-tiers-for-the-twitter-api/188728 :

Current access plans including Standard (v1.1), Essential (v2), Elevated (v2), and Premium will be deprecated over the next 30 days, so we recommend that you migrate to the new tiers as soon as possible for a smooth transition. Any non-migrated developer accounts will be impacted by April 29th, 2023 at the latest.

armingrewe commented 1 year ago

Just checking as I'm not entirely clear: Reading your blog post you mention it might still work until the end of April. However, it looks like none of my mentions today have been picked up. Looks like the API is already dead then? Unfortunately I don't have the skills and knowledge to check, so I have to ask.

snarfed commented 1 year ago

They claimed end of April, and then they went ahead and suspended Bridgy and many other apps yesterday. Fitting. Sorry for the bad news. Onward!

snarfed commented 1 year ago

For the record, conclusion here is that keeping Bridgy Twitter running would cost $42k+/mo, which is a non-starter, and even just keeping Publish working would take significant development work to migrate to the v2 API, since they're shutting off v1.1 (we think), and I don't plan to invest that effort into such s hostile platform.

Sad. End of an era!

armingrewe commented 1 year ago

Ah, I see. Well, it was great while it lasted, mainly thanks to your great work. Sad to see something great being killed off by greed.

Onwards and upwards.

mlncn commented 1 year ago

I don't know exactly what the difference is with how the https://moa.party/ API works with Twitter, but that is still working for some reason, and that's how we're getting Brid.gy output over to Twitter now— Brid.gy to Mastodon, Mastodon to Twitter!

[EDIT: This does not address backfeed or anything, of course.]

snarfed commented 1 year ago

Yeah, they haven't entirely shut off the old API access tiers, they just started suspending some apps like Bridgy ahead of time. They claim they're turning off everyone by April 29. 🤷‍♂️

vandie commented 1 year ago

Have we considered migration to the undocumented API?

There is at least one implementation here: https://github.com/trevorhobenshield/twitter-api-client

snarfed commented 1 year ago

Yes, https://github.com/snarfed/bridgy/issues/1410#issuecomment-1489628813 . It has a rate limit of 500 calls per endpoint per 15m, which isn't enough for Bridgy. (It would also take a lot of work, and we'd be signing up for a never-ending arms race against their bot detection.)