Pioneer: A summit where CX leaders redefine what's possible
-
Recently active
I’m fetching articles from Intercom using the API. In the case where multiple help centers are present, how do I fetch the articles from only a specific help center and not all articles? Alternatively, I am also open to fetching all articles but filtering them on the basis of help center. How can I do this using the API?
This was reported 4 years ago in another post here:and supposed to have been fixed in Intercom’s iOS SDK 17.0.4:but unfortunately we’re seeing it again. This started happening after we turned on push notification integration for our app, and seems related to calling Intercom.setDeviceToken when iOS gives us an APNS token.In case it’s relevant, we have IntercomAutoIntegratePushNotifications turned off because it caused problems with Firebase Cloud Messaging’s similiar swizzling.
I’m trying to create a Zapier integration that syncs Intercom conversations to ClickUp tasks. We have the Intercom ClickUp integration set up such that we can link conversations to tasks just fine. The problem is that the Intercom API does not expose the ClickUp task ID or any other identifiers that could allow Zapier to see that Interom → ClickUp link.Is there a workaround for this, and if not, is it possible for the API to be extended to provide access to the third-party integration’s conversation attributes?
I’m Prakash Hinduja, a financial strategist, born in Amritsar, India, and now reside in Geneva, Switzerland (Swiss), where I continue to pursue innovative financial solutions.I’m starting to explore apps and integrations within Intercom, and I’d love to hear how you’re using them in your setup. Which integrations have been the most helpful for you, and do you have any tips or recommendations to get the most out of them?RegardsPrakash Hinduja Geneva, Switzerland (Swiss)
Hi, We have been using Intercom without any issue. But recently we have started getting following error after the user has logged into our platform. Access to XMLHttpRequest at ‘https://api-iam.intercom.io/messenger/web/embedded/content’ from origin ‘https://portal.product.com’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource. When the page is refreshed, the error disappears and status code changes to 200 OK but the user data is not updated in Intercom.What’s the possible solution to this issue?
My Flutter application has reported a crash in the Google Play Console. The crash is a java.lang.RuntimeException with an underlying ClassNotFoundException, specifically because the Android runtime is unable to find the io.maido.intercom.PushInterceptReceiver class.Crash Stack Trace (Core):Fatal Exception: java.lang.RuntimeException: Unable to instantiate receiver io.maido.intercom.PushInterceptReceiver: java.lang.ClassNotFoundException: Didn't find class "io.maido.intercom.PushInterceptReceiver" on path: DexPathList[...]My Project Configuration: Intercom Plugin Version: intercom-android: 17.0.2 ProGuard/R8 Rules: I have already added a keep rule for the Intercom SDK in my proguard-rules.pro file: -keep class io.intercom.android.** { *; }-keep class com.intercom.** { *; } Troubleshooting Steps Taken: I've checked my AndroidManifest.xml and there is no manual declaration for PushInterceptReceiver, which I believe is automatically merged by the intercom_flutter plugin. Since the cr
Hi team,I'm using @intercom/intercom-react-native with Expo bare workflow and the plugin is generating hardcoded API keys in my AppDelegate.swift Is there a proper way to configure the plugin to use environment variables at runtime rather than hardcoding them during build? I want to avoid committing secrets to my repository.Thanks!
Hi everyone,As our team increasingly relies on mobile agents, I'm seeking advice on effectively managing a mobile workforce using Intercom. What strategies have you implemented to ensure seamless communication, task management, and performance tracking for mobile agents?Are there specific features or integrations within Intercom that have proven beneficial for mobile workforce management? Additionally, how do you handle challenges such as varying time zones and connectivity issues?Any insights or best practices would be greatly appreciated.
Despite the fact that mobile SDK does not support dark mode, the articles and some parts of the help center use dark mode features. SDK Android 16.3.0 (changelog) iOS 18.8.0 (changelog)
Hi there I am hoping to create some dashboards based off of our product’s intercom data that surfaces insights about # of tickets created and average conversation rating. High level mockup of the dashboard: Diving into the intercom API, it looks like the only way to get aggregate data is by calling the search APIs and checking the total_count property. This is un-ideal in the case of average satisfaction score where I would need to query 5 times for each satisfaction score value per data bucket. If I have a time series with 12 month buckets, that would mean I would have to query Intercom 70 times per dashboard render. Is there a better alternative to accomplish this? I saw reference of a reporting feature coming to the API at some point: Also, what is intercom’s data retention policy? Can I expect to be able to retrieve all of our intercom data or is there a cut-off?
Hi Intercom team,I’m working on a web app that’s embedded in a partner’s mobile app via WebView. Both our web app and the partner’s mobile app use Intercom, but each with a separate workspace.Are there any known issues or best practices when two Intercom instances (in different workspaces) are running in this setup? Specifically: Could this cause conflicts with sessions or the Messenger widget? Does Intercom handle isolation properly in WebViews? Is there anything we should do to avoid interference between the two instances?
Fatal Exception: java.lang.IllegalArgumentException: Missing keys: [timestamp] in '{teammate} moved ticket into {status} {timestamp}' at io.intercom.android.sdk.utilities.Phrase.format(Phrase.java:189) at io.intercom.android.sdk.m5.notification.InAppNotificationCardKt.TicketInAppNotificationContent(InAppNotificationCard.kt:180) at io.intercom.android.sdk.m5.notification.InAppNotificationCardKt.InAppNotificationCard(InAppNotificationCard.kt:124) at io.intercom.android.sdk.m5.notification.InAppNotificationCardKt$addInappNotificationCardToView$1$1$1.invoke(InAppNotificationCard.kt:75) at io.intercom.android.sdk.m5.notification.InAppNotificationCardKt$addInappNotificationCardToView$1$1$1.invoke(InAppNotificationCard.kt:74) at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109) at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35) at androidx.compose.runtime.Composit
I'm trying to install the iOS SDK and have been following the provided guide. However, when I click the "Check Installation" button at the end, it doesn't seem to register as installed. I'm currently using Xcode 16.4 with an iOS 18.5 simulator.I noticed that the SDK's README mentions Xcode 15 as a requirement. Is this version required only for installation, or is it also necessary for Intercom to function correctly? Additionally, will support for Xcode 16 be available soon?This could be a blocker for us, as Xcode 15 isn't compatible with macOS Sequoia 15.5.
Having the ability to trigger a reusable workflow via API would be really helpful for making workflow/bot conversations more dynamic. A specific use case I’m working on right now is serving CSAT in conversations where customers interact only with a bot (no team member assigned). Unresponsive triggers only happen with human to human conversations. If a customer goes unresponsive while talking to the bot, the conversation is considered abandoned, not closed. My thought was to use Zapier to trigger closed conversations and filter by convos NOT assigned to a team member, however I have no way of serving CSAT in that conversation via the API. I played around with starting workflows using this non-documented endpoint:curl --request POST \ --url https://app.intercom.io/ember/inbox/workflows/start \ --header 'Accept: application/json' \ --header 'Authorization: Bearer REDACTED \ --header 'Content-Type: application/json' \ --header 'X-Csrf-Token: REDACTED' \ --cookie _intercom_session=RE
Can’t seem to get any contact location data to stick in my requests. What am I doing wrong here? Note that the request does not fail with any sort of validation error but the values do not get updated.For example, here’s the body on an update: {"signed_up_at":1753192392,"external_id":5668,"location":{"type":"location","country":"United States","country_code":"US","city":"San Diego"}}And the response body I get:{"type"=>"contact", "id"=>"redacted", "workspace_id"=>"redacted", "external_id"=>"5668", "role"=>"user", "email"=>"redacted", "phone"=>nil, "name"=>"redacted", "avatar"=>nil, "owner_id"=>nil, "social_profiles"=>{"type"=>"list", "data"=>[]}, "has_hard_bounced"=>false, "marked_email_as_spam"=>false, "unsubscribed_from_emails"=>false, "created_at"=>1753796921, "updated_at"=>1753797193, "signed_up_at"=>1753192392, "last_seen_at"=>nil, "last_replied_at"=>nil, "last_contacted_at"=>nil, "last_email_opened_at"=>nil, "la
Intercom is showing the notifications behind the navigation bar in Android 15+ even using latest SDK version and latest compose BOM
Please help to check
Where do I talk to support about adding MCP server options to my data connections
Hey there!We’re about to run a script on our side this week to migrate our historical Zendesk Ticket data to Intercom.Has anyone in the community had experience doing this?Curious to know how you prevent email notifications from going out to customers, and if its possible to backdate the conversations when you are creating them.Cheers,Ian
I`m using the FIN Messenger in a test website. The frontend always call to call to Intercom('shutdown') and Intercom('boot’) on page load. Before that, we get the JWT form our backend an send that to the messenger throught the API. That works well.The problem is when the user logs out of our backend, reloading the page still shows the conversation of the user who logged out.As if Intercom('shutdown'); and Intercom('boot', config); weren't working. function bootIntercom(config) { if (window.Intercom) { window.Intercom('shutdown'); } window.Intercom('boot', config);}(async () => { const status = document.getElementById('statusContainer'); try { const res = await fetch('https://REDACTED/autenticar', { method: 'POST', headers: { 'Content-Type': 'application/json' }, credentials: 'include' }); const data = await res.json(); if (res.ok && data.success && data.token) { status.inne
Hi Intercom Team / Community,I am developing a multitenant app that integrates with Intercom using the OAuth 2.0 authorization code flow. When I exchange the authorization code for an access token, I receive a response like this: { "token": "dG9rOjJjMTdlOTQxX2JmNjZfNDdhNV85ZGFiXzFjMzdmYjZhOGI1ZDoxOjA=", "access_token": "dG9rOjJjMTdlOTQxX2JmNjZfNDdhNV85ZGFiXzFjMzdmYjZhOGI1ZDoxOjA=", "token_type": "Bearer" } There is no information about the token’s lifetime or a refresh token in the response.My questions are: Is it correct that Intercom does not provide refresh tokens at all? If yes, does it mean the access token is long-lived (officially valid up to 60 days)? After expiry, is the only way to obtain a new token by making the user go through the OAuth authorization flow again? Is there any recommended way to renew access tokens silently without repeatedly asking for user authorization? Does this behavior apply consistently for both public and private apps? For a multitenant sce
Using latest Android SDK with RN wrapper (tested 15.14.0 and 15.15.0), navigating to any article renders only an empty page (along with the emoji feedback footer). Video capture:https://www.dropbox.com/scl/fi/dqbc23sucijn5juajx9vd/intercom-android-article.mov?rlkey=ve8k12jphvlgizheo2qxr5bmv&dl=0
I wanted to check if it's possible to integrate Intercom into two different apps using the same workspace, while having separate FAQs for each. Is that supported, or would we need to create a separate workspace for each app?
We would like to understand how to suspend or delete an admin within our Intercom setup. Specifically: What are the steps for suspending or deleting an admin? What parameters or conditions can be used to identify these actions? Can we use has_inbox_seat for this purpose? If not, please explain why it cannot be used or if there's an alternative. Additionally, once an admin is suspended or deleted, we would like to: Fetch that updated status or Have that event trigger a webhook so we can sync the admin's status on our side in real time. Please confirm if this is possible and share the best approach to implement it.Looking forward to your guidance on this.
Hi,We are using the ruby bindings from the official repo here and there are a few examples on how to search for contacts, for instance:# Search for contacts by emailcontacts = intercom.contacts.search( "query": { "field": 'email', "operator": '=', "value": 'some_contact@example.com' })contacts.each {|c| p c.email}# For full detail on possible queries, please refer to the API documentation:# https://developers.intercom.com/intercom-api-reference/referenceWhen trying to access the resulting collection I always get a Resource Not Found (Intercom::ResourceNotFound) error. Doing this same search for the same contact with cURL or with the ruby net/http client works fine and returns the contact.Is the search in the ruby gem broken?
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.