Email History Thread in Rest API | Community
Skip to main content
Answered

Email History Thread in Rest API

  • November 10, 2025
  • 3 replies
  • 525 views

I’m working on an email reply automation tool using the Intercom REST API. I’m trying to retrieve the email history — the quoted text that appears collapsed behind the three dots (“…”) when a customer replies to an outbound email we’ve sent them. 

Three dots for expanding email history

From inspecting the network traffic, I can see that this data is retrieved via a private Ember API endpoint:

curl 'https://app.intercom.com/ember/inbox/email_history?metadata_id=XXXXXXXXX&app_id=yyyyyyy

 

Is there an equivalent method in the public REST API to access this email history or quoted content?

I’ve already tried GET /conversations/{conversation_id}, but the response only includes the conversation parts - it doesn’t contain the quoted email thread (the hidden “three dots” section) in either the parts or metadata.

To clarify, customers are replying directly to our outbound emails (sent via our own system, not through Intercom). When we fetch the resulting conversations through the API, we can see the customer’s reply but not the previous email content they were responding to.

I understand that if we sent the outbound messages directly from Intercom, these might appear as separate conversation parts, but that’s not the case in our current setup.

Thanks in advance,
William.

Best answer by Sean Meade Forum Support Lead

Hi ​@William Powell , Seán here from the Intercom engineering support team 👋 

The collapsed/quoted email behind the three dots isn’t exposed by Intercom’s public REST API. It’s only available from the web app’s private Ember endpoint.

It is an interesting feature though and I would be curious to see if others would have a use case for it. You could check if this feature has been recorded on our Product Wishlist in our Community and upvote it, if not check out the quick guide on how the Product Wishlist works here and how to add one for this exact feature.

3 replies

Forum|alt.badge.img+7

Hi ​@William Powell , Seán here from the Intercom engineering support team 👋 

The collapsed/quoted email behind the three dots isn’t exposed by Intercom’s public REST API. It’s only available from the web app’s private Ember endpoint.

It is an interesting feature though and I would be curious to see if others would have a use case for it. You could check if this feature has been recorded on our Product Wishlist in our Community and upvote it, if not check out the quick guide on how the Product Wishlist works here and how to add one for this exact feature.


Matej Bosnjak
  • New Participant
  • July 22, 2026

Hi, adding our use case here as we're running into the same limitation.

We use the Intercom API to power an AI billing support agent. When customers reply to our outbound emails and include forwarded email chains, our agent only sees the top-level reply and misses the quoted thread entirely. This is a real gap - the forwarded content often contains the core of the billing issue (original invoice, prior correspondence, finance team context).

Upvoting this and adding a product request. Would love to see this exposed via the public REST API.

Best regards
Matej


  • New Participant
  • August 26, 2026

Same here ​@Sean Meade Forum Support Lead - our AI agent really needs this context as well.


  • New Participant
  • August 28, 2026

Hey ​@Matej Bosnjak/any other weary devs travelling through these lands. I hope this is helpful to you, but ​@Sean Meade Forum Support Lead isn’t quite right. Intercom does actually expose this option in the REST API.

The secret is the `include_email_history` query param on the retrieve conversation endpoint. It appends a `history` attribute to `source.email_message_metadata` in the return.

Be aware that this is seemingly quite a recent addition, I had to add an `Intercom-Version: Preview` header manually to get my request to work. The results are in bare HTML.

Also be aware that the official SDK doesn’t document/provide this option natively. I had to supply it as additional options/config, which happily they expose as options in their Node SDK.

I’ve attached an example of the request that works for me!

  const results = await intercom.conversations.find(
{ conversation_id: 'cid' },
{
queryParams: { include_email_history: true },
headers: { 'Intercom-Version': 'Preview' },
}
)