Expand Fin to email is now live on Fin Academy!
Get more out of Intercom using our API and webhooks
Recently active
Good morning, currently we are using the Intercom API with WhatsApp (inbound) and replying via the API. However, we are unable to find in the documentation how to respond to a conversation via API with an image. We would like to send an image directly, not just a URL.
Hi,I am making requests against the “Search Conversations” endpoint https://developers.intercom.com/intercom-api-reference/reference/searchconversations and paginating (using incremented pages) until the “total_pages” number returned in the response.However, I noticed that each response always shows page “1” with the same next page number of “2” along with an identical starting_after token each time under the “pages” object. Why is this the case -- can a support member help me get this addressed?Thanks,Clouse
You would think the Articles API needs to accept TAGs as a param for it to work efficiently….other wise you cal call only by single IDs…...Any one else agree?
url = "https://api.intercom.io/conversations/search"headers = {'Accept': 'application/json','Authorization': 'Bearer auth-token',"Intercom-Version": "2.9","Content-Type": "application/json"}params = { "query": { "operator": "AND", "value": [ { "field": "team_assignee_id", "operator": "!=", "value": None}]}}response = requests.post(url, headers=headers, json=params) I want to get all assigned conversation and I have only one conversation and it’s team_assignee_id value is null. This query should return an empty list, but it is returning that conversation. What is the correct setup to get only assigned conversations? Also, for whatever reason, the equal(“=”) operator returns the same result. "query": {"field": "team_assignee_id","operator": "=","value": None}This query using equals and not equals return an empty list.
Through our monitoring systems we’ve identified that sometimes API calls to https://api.intercom.io/conversations/{id}/reply are failing with a 403 response. The documentation is not clear on why this would happen. We’re seeing this ~3% of the time.
Hi,I’m building a custom intercom app. I have two APIs created for both Initialize flow webhook URL and Submit flow webhook URL and they work as I expected.The question is, It looks like these two API can’t be protected using API key or other authentication mechanism. Is there a way to confirm the requests come to these APIs are actually from Intercom, not from some malicious actors. Any help on this appreciated.
Hi there, I am looking for advice on how to best manage API calls for our business application.It appears that using the API, multiple calls will be necessary to be able to perform given actions. For example, if a user has signed into our application and wishes to start a conversation, from what I understand they will have to:- Fetch their id with their email using the /contacts/search endpoint- Create a conversation with their id using the /conversations endpoint- If successful, we want to refresh our device to display the new message and created conversation, meaning we must hit the /conversations/id endpointFor this flow, this is 3 calls per action, which could add up quite substantially if multiple users are operating simultaneously.Is there a better way to do this? Perhaps I am not using the API as efficiently as I could be. Thanks!
I have an which gets customer conversations and displays them in a Whatsapp-esque UI.The problem is that in order to do this, I have to:- Hit an endpoint that will get the contact information using their email- Hit an endpoint using their contact id to create a conversation- If this conversation creation is successful, hit the endpoint to fetch the conversation to display the latest message to the user.This seems very inefficient at present. Is there a better way to use the API?Thanks
In the /me endpoint, what are the valid values for the app.region property? In my test account, I get back the string “US”, but what are the values for the EU and Australian regions? (Or any other that are supported.)
Hello, I try to modify my json configurator to extract all conversions. However pagination does not work. Can someone assist please? The json I have is as following: { "parameters": { "api": { "baseUrl": "https://api.intercom.io/" }, "pagination": { "method": "cursor", "perPageParam": "per_page", "perPage": 150, "startingAfterParam": "starting_after", "startingAfter": "" }, "config": { "outputBucket": "ge-tutorial", "debug": true, "jobs": [ { "endpoint": "conversations", "params": { "per_page": "{{perPage}}", "starting_after": "{{startingAfter}}" }, "headers": { "Intercom-Version": "2.9", "accept": "application/json", "authorization": "Bearer -----" } } ] }, "incrementalOutput": true }}
These are issues found on versions 4 and 5 of Intercom React Native https://github.com/intercom/intercom-react-native. On Android, when the Intercom.presentMessageComposer() method is called the text input does not show up. The user has no way to enter a message to interact with our support team.In addition, there is no longer a close button (‘x’) and the user cannot go back to our app the way they entered. Tapping the back button takes the user back to the intercom messages list and tapping it again logs them out of our app.Android: Text input does not show up and missing close button (‘x’)On iOS, when receiving Intercom notifications, and the app is backgrounded, tapping on an Intercom notification opens a new chat modal opens on top of the existing chat, causing a stack of modals to appear. The user needs to exit all the modals to access their previous screen.
Hi there,I would like to push full conversation body data via a custom action towards Zapier (webhook trigger).The reason why I would like to use custom actions is because I only want conversations that were initialized with a bot. The moment the conversation is assigned to the team, the custom action would send the full conversation to Zapier. In Zapier, I would then like to summarize the bot conversationd and post it as a note into the same message for the support agent to easily understand the conversation.The custom action I created seems to be successful, but the Webhook trigger in Zapier never receives the POST request from the custom action.Also, I don’t find a way how to get the whole conversation as data into JSON?I presume i need to use the “conversation_parts” object, but not sure how?Thanks in advance for the help!
I am trying to access contacts via the API using the ruby gem in a Ruby on Rails app. Have a test workspace and have created an app in the developer portal in this workspace. Also generated an access token.I am able to create a client object in the rails console.However I get an authentication error when I try and make any calls to the api:[1] pry(main)> intercom = Intercom::Client.new(token: ENV['INTERCOM_TOKEN'], api_version: '2.9')=> #<Intercom::Client:0x0000000130716a48 @api_version="2.9", @base_url="https://api.intercom.io", @handle_rate_limit=false, @rate_limit_details={}, @timeouts={:open_timeout=>30, :read_timeout=>90}, @token="'***************************************">[2] pry(main)> intercom.contacts.find(id: '56f0399fc1f09a1bf6000200')Intercom::AuthenticationError: Unauthorizedfrom /Users/dsingh/.rbenv/versions/2.7.6/lib/ruby/gems/2.7.0/gems/intercom-4.2.1/lib/intercom/request.rb:164:in `raise_errors_on_failure'Is there some other configuration needed fo
Hi, is there any way to wait until window.Intercom(‘trackEvent’) finishes? I’m tracking user’s logout event then use Intercom(‘shutdown’) to clean up the cookies and reset Intercom, but it always throws this error:Uncaught TypeError: Cannot read properties of undefined (reading 'then') at frame-modern.422879eb.js:1:381486
I’m using the 2.8.2 version of the app, I used the access token to connect to company account, but it seems like none of the api’s working, there was a thread on the scroll not working https://github.com/intercom/intercom-java/issues/185 but in my case the scroll api doesn’t seem to respond either as I get the same response “io.intercom.api.NotFoundException: The requested resource does not exist; check your path and try again”. did anyone run into similar issues? if yes how’d you solve it?
We're checking the option to create a Case in Salesforce with the help of Webhooks Ticket Topic (Whenever a ticket is created in Intetcom, we defined a custom logic to create Case in SF based on webhook payload).One item that hinders our test is that in the webook Payload We're getting the alphanumeric Id (the one which appears in the user url) of the Contact. Instead we're expecting the 'User Id' value from contact (the 10 digit numeric Id) which we already added in SF contact. Any option to get that user id value in webhook tickets payload?
Hey, I’m trying to use the Article API but I got some problems when I get lists of collections, sections and when I try to match this with articles parent_id I have a structure like this:When I request the `help_center/collections` endpoint I receive 2 collections “Untitled collection” (id: 3941383) and “Example collection” (id: 3941384) Ok, now I get the list of sections `help_center/sections`I should get "Subcategory" and "Subsubcategory", but when I do this request I receive an empty list And now when I request the list of articles `articles` I get all articlesFor the article “Just another article” (id: 7228002) I get parrent_id: 3941386 and for “Test” (id: 7227829) I get parent_id 3941389 and parent_type: collection My question is,Where are my sections? Am I doing something wrong or is it a bug in the Intercom API?
Hello,I have noticed that the API does not return the same created_at value for Conversations when using API 1.3 compared to API 1.4 and later versions. The endpoint I am using is:https://api.intercom.io/conversations/{id}I noticed this when retrieving Intercom data via Segment.com, which apparently uses API v1.3, and Stitchdata.com, which uses API v2.5.To investigate this further, I tested the API request for the affected Conversations (which make up 10% of my total volume), and the dates returned changed when I incremented the API version used. Can you please explain what could be causing this? Were there changes in the API which I’m not aware of that could be affecting the results?Thank you for your assistance.
Hi We are facing an issue with intercom update . after we fire this API a redirection happened sometimes we missed the API, after we add a delay (before redirection) it looks the problem solved but we can’t relay on delay. as i check the document i can’t see if this a async action. or if i can get a call back. So could someone please guid me how can we fix this problem? Thanks in advance
Hi! We are using API method to update companies.However, these become thousands of discrete requests, is it possible for me to craft a payload containing all company data and send this in a single request?
Are we able to request the data from the Resolution Bot Report via a reporting API of some kind?We want to be able to gather the table of data that compiles that report so that we can place it in a BI tool like Tableau for internal reporting purposes.Thank you!
I am trying to search for a user based on an email using the v2.8 intercom API. If I retrieve a specific contact using this URL https://api.intercom.io/contacts/63e271ce28fe8babf612b417/code>I get the contact object as expected. If I then use the email of the response to search for that contact like sohttps://api.intercom.io/contacts/search/code>with this body{ "query": { "field": "email", "operator": "=", "value": "my email" } }I get the following response{ "type": "error.list", "request_id": "0000i0aso7mmifvpqc1g", "errors": [ { "code": "not_found", "message": "User Not Found" } ] }Any hints on what the problem is?
Hello,I am wondering what these fields mean in the Webhook response: "delivery_status": "pending","delivery_attempts": 1,"delivered_at": 0,Almost all of the messages have "delivery_status": "pending" (some of them have “retry”), and all of them have delivered_at: 0. This includes messages such as survey.answers, contacts.deleted and others.What do these fields mean? I would expect a timestamp for delivered_at and status as delivered or something like that.Thank you,Nick
Hello,I’m trying to send the link with AWS credentials via EventTracker to Intercom to include this URL and other attributes in the email to users. When I include the link as an event attribute( {{event.data-request.metadata.URL }} ) in the email, it malformed the URL which results in an error after opening the link in the email: "Error parsing the X-Amz-Credential parameter" probably because of Intercom encryption of these attributes. Is there any way to solve this issue or to pass the URL to email? ThanksOleksandr
I am exporting conversations data from intercom to an external database. I want to filter out conversations based on either Location or Timezone, I have seen that on intercom UI, when I go to Reports → Customer Support → Export, I have the option to filter out conversation data by selecting Country. I have also explored two other ways to export data ie., by specifying S3 export bucket or by calling intercom APIs directly. In both ways, however I am not seeing any field related to Country or Location or Timezone.How do I filter out API data or s3 export data based on location, like I am able to do via the UI Reports option?
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.