# Bye bye embedded tweet previews

**URL:** https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708
**Category:** General
**Tags:** embedding
**Created:** [April 14, 2023, 2:51pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708 "2023-04-14T14:51:18Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![cogdog](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cogdog/32/116536_2.png) [@cogdog](https://meta.discourse.org/u/cogdog)
#### Post date: [April 14, 2023, 2:51pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/1 "2023-04-14T14:51:18Z")

</div>

We got our expected Twitter API suspension for the keys used in our discourse community site.

 ![twitter api suspension email](https://global.discourse-cdn.com/meta/original/4X/b/2/b/b2bc72af7772ad0aea566d0a1b0c0df2450e1af4.jpeg)

The “free” tier is useless and I am struggling to know who is going to pay $100/ month to offer embedded tweets.

As expected, the onebox previews are gone and twitter URLs are rendered as mere hyperlinks. Mastodon posts embed beautifully.

Just noting one more crack in the birds pace.

---

<div class="post-metadata">

### Author: ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)
#### Post date: [April 14, 2023, 4:04pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/3 "2023-04-14T16:04:20Z")

</div>

What happens to older tweets that were oneboxed?

---

<div class="post-metadata">

### Author: ![cogdog](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cogdog/32/116536_2.png) [@cogdog](https://meta.discourse.org/u/cogdog)
#### Post date: [April 14, 2023, 4:46pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/4 "2023-04-14T16:46:34Z")

</div>

I am seeing them preserved in our site:

- [https://connect.oeglobal.org/t/all-things-oer-answered-in-twitter-spaces/3544](https://connect.oeglobal.org/t/all-things-oer-answered-in-twitter-spaces/3544)
- [https://connect.oeglobal.org/t/around-the-oeglobal-world/4133/16](https://connect.oeglobal.org/t/around-the-oeglobal-world/4133/16)
- [https://connect.oeglobal.org/t/oeg-voices-042-vera-kennedy-and-rowena-bermio-on-the-ethnic-studies-primer-open-textbook/4261/2](https://connect.oeglobal.org/t/oeg-voices-042-vera-kennedy-and-rowena-bermio-on-the-ethnic-studies-primer-open-textbook/4261/2)

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [April 14, 2023, 4:50pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/5 "2023-04-14T16:50:14Z")

</div>

> [@cogdog](#):
>
> I am seeing them preserved in our site:

I bet they go away if you rebuild html.

---

<div class="post-metadata">

### Author: ![cogdog](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cogdog/32/116536_2.png) [@cogdog](https://meta.discourse.org/u/cogdog)
#### Post date: [April 14, 2023, 5:06pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/6 "2023-04-14T17:06:58Z")

</div>

As the twitter death wind blows there go the tweets… shrug. No tears here.

---

<div class="post-metadata">

### Author: ![awesomerobot](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/awesomerobot/32/142900_2.png) [@awesomerobot](https://meta.discourse.org/u/awesomerobot)
#### Post date: [April 14, 2023, 5:08pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/7 "2023-04-14T17:08:51Z")

</div>

Yeah that’s the expected outcome, there’s not a way to preserve onebox content at the moment.

---

<div class="post-metadata">

### Author: ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)
#### Post date: [April 14, 2023, 5:42pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/8 "2023-04-14T17:42:33Z")

</div>

I got the same email.

On the dashboard, it says this:

> This App has violated Twitter Rules and policies. As a result, it can no longer be accessed. For assistance, submit a [support ticket](https://help.twitter.com/forms/platform).

With no more info.

As for their current plans, here’re the cheapest ones:

> **[X Developer Platform - X](https://docs.x.com/overview)**
>
> Build, analyze, and innovate with X's real-time global data. Access posts, users, trends, and more through modern APIs with flexible pay-per-usage pricing.

### **Free**

For write-only use cases and testing the Twitter API

- Low rate-limit access to v2 tweet posting and media upload endpoints
- 1,500 Tweets per month - posting limit at the app level
- 1 app ID
- Login with Twitter
- Cost: Free

### **Basic**

For hobbyists or prototypes

- Low-rate limit access to suite of v2 endpoints
- 3,000 Tweets per month - posting limit at the user level
- 50,000 Tweets per month - posting limit at the app level
- 10,000/month Tweets read-limit rate cap
- 2 app IDs
- Login with Twitter
- Cost: $100 per month

* * *

Indeed, it seems that if we can log in with the free plan, we can’t get tweets info (no more embedding).

---

<div class="post-metadata">

### Author: ![AquaL1te](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/aqual1te/32/201966_2.png) [@AquaL1te](https://meta.discourse.org/u/AquaL1te)
#### Post date: [April 14, 2023, 5:47pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/9 "2023-04-14T17:47:11Z")

</div>

Maybe a hard sell, but move to Mastodon, `feed2toot` works perfect.

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [April 14, 2023, 5:50pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/10 "2023-04-14T17:50:54Z")

</div>

> [@Canapin](#):
>
> For hobbyists …
> 
> - Cost: $100 per month

On what planet is a $100 a month plan “hobbyist”?!

That is stark raving marketing lunacy, no?

---

<div class="post-metadata">

### Author: ![MikeNolan](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mikenolan/32/297597_2.png) [@MikeNolan](https://meta.discourse.org/u/MikeNolan)
#### Post date: [April 14, 2023, 7:44pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/11 "2023-04-14T19:44:43Z")

</div>

What does Discourse charge for hobbyist accounts per month on their system?

Akismet is charging $100/year, and so are some other 3rd party tools, all those little charges add up to someone who’s running a site just for fun.

---

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [April 14, 2023, 8:47pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/12 "2023-04-14T20:47:53Z")

</div>

Where does this fit into the grand scheme of things?

> The oEmbed API returns simple embed HTML in an [oEmbed](http://oembed.com/)-compatible format. You can use the oEmbed API to programmatically return embedded content, such as [Tweets](https://developer-staging.twitter.com/en/docs/twitter-for-websites/embedded-tweets/overview) and [timelines](https://developer-staging.twitter.com/en/docs/twitter-for-websites/timelines/overview).
> 
> The response from the oEmbed API will return an HTML snippet that will be automatically recognized when [Twitter’s widget JavaScript is included on the page](https://developer.twitter.com/web/javascript/loading).
> 
> Please note that the API is recommended for performing tasks in bulk, and we advise using our robust [publish.twitter.com](https://publish.twitter.com/#) tool for embedding content.

Source: [X Developer Platform - X](https://developer.twitter.com/en/docs/twitter-for-websites/oembed-api)

See also: [X Developer Platform - X](https://developer.twitter.com/en/docs/twitter-for-websites/embedded-tweets/overview)

---

<div class="post-metadata">

### Author: ![Jonathan5](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jonathan5/32/197134_2.png) [@Jonathan5](https://meta.discourse.org/u/Jonathan5)
#### Post date: [April 14, 2023, 10:06pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/13 "2023-04-14T22:06:13Z")

</div>

Here are two interesting things. The oEmbed API is free, and Twitter has a Discourse forum:

> **[Search results for 'OEmbed order:latest' - X Developers](https://devcommunity.x.com/search?q=OEmbed%20order%3Alatest)**
>
> Discussion forums for developers using the X platform and APIs

---

<div class="post-metadata">

### Author: ![Lhc\_fl](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lhc_fl/32/268115_2.png) [@Lhc\_fl](https://meta.discourse.org/u/Lhc_fl)
#### Post date: [April 15, 2023, 11:54am UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/14 "2023-04-15T11:54:00Z")

</div>

Hi  
I had the same problem, but I found an alternative solution that I’m personally happy with - using Twitter’s native embed iframe with a bit of theme component code. What do you think? If you guys think this is good, I’d be happy to publish it as a theme component!

 ![image](https://global.discourse-cdn.com/meta/original/4X/e/0/9/e093bd60d58705b98cf6eccb3f4a1201929c527d.jpeg)

---

<div class="post-metadata">

### Author: ![Mevo](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mevo/32/187732_2.png) [@Mevo](https://meta.discourse.org/u/Mevo)
#### Post date: [April 15, 2023, 12:10pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/15 "2023-04-15T12:10:10Z")

</div>

> [@Lhc\_fl](#):
>
> What do you think? If you guys think this is good, I’d be happy to publish it as a theme component!

Is there really a need to ask the question? 🙂  
This looks great. Of course it would be nice if you could publish the theme component.  
I’m sure many want it. I do. Please 🙏

---

<div class="post-metadata">

### Author: ![Lhc\_fl](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/lhc_fl/32/268115_2.png) [@Lhc\_fl](https://meta.discourse.org/u/Lhc_fl)
#### Post date: [April 15, 2023, 12:37pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/16 "2023-04-15T12:37:09Z")

</div>

Thanks to the Discourse team, I think this is the fastest approval I’ve seen in a while 🥳

> [@Twitter Native Embed](https://meta.discourse.org/t/twitter-native-embed/261792):
>
> We don’t enable embedding in composer preview, which is the expected behavior. information_sourceSummary Enable Discourse to support native Twitter embedshammer_and_wrenchRepository [GitHub - Lhcfl/discourse-twitter-native-embed](https://github.com/Lhcfl/discourse-twitter-native-embed)questionInstall Guide [How to install a theme or theme component](https://meta.discourse.org/t/how-do-i-install-a-theme-or-theme-component/63682)open_bookNew to Discourse Themes? [Beginner’s guide to using Discourse Themes](https://meta.discourse.org/t/beginners-guide-to-using-discourse-themes/91966) Install this theme component A recent Twitter API limitation has prevented some d…

---

<div class="post-metadata">

### Author: ![Heliosurge](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/heliosurge/32/571810_2.png) [@Heliosurge](https://meta.discourse.org/u/Heliosurge)
#### Post date: [April 16, 2023, 12:27am UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/17 "2023-04-16T00:27:20Z")

</div>

> [@merefield](#):
>
> > [@Canapin](#):
> >
> > For hobbyists …
> > 
> > - Cost: $100 per month
> 
> On what planet is a $100 a month plan “hobbyist”?!
> 
> That is stark raving marketing lunacy, no?

Planet Elon it seems. The platform has been a mess since his acquisition. So much so Elon broke a world record.

---

<div class="post-metadata">

### Author: ![P2W](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/p2w/32/304345_2.png) [@P2W](https://meta.discourse.org/u/P2W)
#### Post date: [April 16, 2023, 1:58am UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/18 "2023-04-16T01:58:30Z")

</div>

> [@Lhc\_fl](#):
>
> Thanks to the Discourse team, I think this is the fastest approval I’ve seen in a while 🥳

that was fast! 😃

---

<div class="post-metadata">

### Author: ![BryanV](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bryanv/32/226479_2.png) [@BryanV](https://meta.discourse.org/u/BryanV)
#### Post date: [April 18, 2023, 4:16pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/19 "2023-04-18T16:16:09Z")

</div>

But logins are still working for others? We got this:

> This is a notice that your app - Bokeh Discourse Login - has been suspended from accessing the Twitter API. Please visit [developer.twitter.com](http://developer.twitter.com/) to sign up to our new Free, Basic or Enterprise access tiers.

TBH I don’t really care, Twitter is dead to me now, but find the inconsistency perplexing.

---

<div class="post-metadata">

### Author: ![cogdog](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cogdog/32/116536_2.png) [@cogdog](https://meta.discourse.org/u/cogdog)
#### Post date: [April 20, 2023, 6:03pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/20 "2023-04-20T18:03:41Z")

</div>

They are likely working because they have not deprecated the 1.1 API, it’s still working on most of my sites.

There are all kinds of dates swirling around, mostly I have heard Apr 29, 2023 as when the lights go out (30 days [from tweet on March 29](https://twitter.com/TwitterDev/status/1641222786894135296)), but who really knows?

---

<div class="post-metadata">

### Author: ![Canapin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/canapin/32/119591_2.png) [@Canapin](https://meta.discourse.org/u/Canapin)
#### Post date: [April 20, 2023, 6:56pm UTC](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708/21 "2023-04-20T18:56:30Z")

</div>

I’ll have another look soon at the Twitter process to create an app and enable it on Discourse so I can update the official guide accordingly. 🙂

[Next page](https://meta.discourse.org/t/bye-bye-embedded-tweet-previews/261708.md?page=2)
