Expand Fin to email is now live on Fin Academy!
Get more out of Intercom using our API and webhooks
Recently active
For example, if I want to just get the name of the company, or the date it was created back when I look up the ID? I know that in general I could just ignore the rest, but I'm trying to do this within a Custom Action, and I don't necessarily want to write the whole company object back to the Person I'm looking it up for. For context on why I'm doing this rather than associating that Person directly to the Company, I don't want to pollute my Companies with non-employees of said Company. However, I'd still like to be able to look up what Company they are requesting support for so that we can customize their experience when they are interacting with a bot.
Background: We are building an integration with Intercom for our Application suite. We want the O-Auth flow in Intercom enabled for our users. As we understand it, this would require us to go through the App Review process from Intercom. Questions: 1. Can we change the oAuth URL before/after review?2. Can we change the webhook before/after review?3. We want the installation of our Intercom plugin only via our web app itself, how long can we have the app approved but unlisted on Intercom?4. Does Intercom need access to our webhook code to test, given that there is nothing else on our Intercom app?
Created a new company:curl https://api.intercom.io/companies\ -X POST \ -H 'Authorization:Bearer <AuthToken>' \ -H 'Accept: application/json' \ -H 'Content-Type:application/json' -d ' { "name": "Test Company", "company_id": "18ac530", }'It was created successfully. Then used the Intercom generated id for it to attach it to a contact:$ curl https://api.intercom.io/contacts/62fe23da8c9c889b4c86b884/companies\ -X POST \ -H 'Authorization:Bearer <AuthToken>' \ -H 'Accept:application/json' -d '{ "id": <intercom_id for the company> }'Got an error, company not found. The docs say that a company must have at least 1 user to be listed and accessible. But this is a Catch-22 how am I supposed to add users if I am unable to access the company. To confirm, that my initial call to create the company was indeed successful, I ran this:curl \ -s https://api.intercom.io/com
hi, i am trying to create an intercom canvas kit, i create a url for initialize and submit flow on google apps script but it don't work well this is my google apps script code INITIALIZEfunction doPost(e) { var Json = JSON.parse(e.postData.contents); sendDataSocket(Json) var CanvasBody = { "canvas": { "content": { "components": [ { "type": "button", "label": "Click ME!!!!", "style": "primary", "id": "url_button", "action": { "type": "submit" } }, ], }, }, }; return ContentService.createTextOutput(JSON.stringify(CanvasBody)).setMimeType(ContentService.MimeType.JSON); }SUBMITfunction doPost(e) { var Json = JSON.parse(e.postData.contents); var CanvasBody = { "canvas": { "cont
Sync limitations Intercom doesn’t consider outbound messages without replies as conversations.We found that if an end-user doesn’t reply to outbound messages (such as emails, posts, or chats), we can’t fetch the conversation IDs because the REST API does not return them. As a result, we can’t sync these conversations to your destination. I want to see who gets which outbound. When can we get ability to get this data programmatically? @Azure Radio 277
Hi I'm trying to update 'language_override' value during the user preference update event, but I couldn't see any changes even after calling the APIs. Is there any other way to update the field? Thanks
Has anyone else had this problem? It's been 3 days and Intercom support still hasn't read any tickets, so I figured I'd ask the community here. The injector script and boot code both call the right appId, but the scripts that get injected insert both the correct and the other company's appId.
Hello There,Consider me new to the intercome and don't have an idea about even the basics of integration. I'm presenting the use case and seeking a solution for it. Once the user opens up the messenger, he will be shown up with a form that is generated through my server (it is not the same every time. It is based on some conditions). The form content is different for different users based on the logic on the server.The user clicks on a button on this form and the response is sent back to the server for some business decisions. So I'm confused with following thingsHow should my server be intimated when the user opens up a messenger (with the user detail)How can I send the UI back in form of JSONHow can I record the response back if a button in that UI is pressed The information available is in bits and pieces and I'm not able to find the end to end example.Looking forward for an end to end example do acheive the use case. Regards,
I have an Intercom app, and I am pulling conversations in to my local storage for my customers to run additional analysis on. I want to be able to link them back to the original conversation in their Intercom dashboard. I can't find documentation on the logic to construct a link back to the conversation. Can anyone help me find the right logic?
I am trying to get a full list of the users through the /contacts endpoint of the current version of the API, but I am only getting the leads and not the users. Is there a param I have to pass to the endpoint? I tried role: user, type: user but no luck.
Is it possible to delete multiple contacts via the Intercom API? The article here does not say anything to that affect https://developers.intercom.com/intercom-api-reference/v1.3/reference/delete-users/p>
In our case, we have an attribute called "preferred_language" and a team inbox called "Repair Inbox".If a conversation would end up in the Repair Inbox and if the preferred_language of the customer would be "EN", then I would like to add a note or subject to the conversation saying "English Customer". Would be great if anyone could help me out or let me know if this is possible :) Thanks!
Hello, I would like to be able to query a team to see how many tickets are in them at a given time. For example, we have an overnight queue and I would like to be able to alert on if that queue gets past a certain number. Seems like I would want to add a tag using the rule and then query for tag count? Thanks!
As i said, i'm trying to POST a new intercom/message to my customer but i'm not able to do it. Maybe the body is not correct. I have no problems with 'intercom-client' node library but now I must send this information through a serverless function :P
I want to try out the https://api.intercom.io/conversationsendpoints with demo data
Hello, We'd like to query via REST APIs all the Conversation SLAs for an account. We'd also like to know how much time is left/overdue with reference to an SLA for a single conversation. As of now, we can see that the conversational model has sla status but not details - https://developers.intercom.com/intercom-api-reference/reference/conversation-model/p> But, I don't seem to find a way to get the SLA details. Does Intercom provide a way to do that programatically? Regards
I created a canvas kit app for my teammates that looks up some customer details in our database and displays them in the inbox details panel, but I don't see any incoming data (like an access token) that I can use on our side to make sure the request is coming from intercom.
We would like to set the "Priority" or "SLA" attributes of conversations in particular. The reason is that we want to externalize the decision making of important vs non important conversations as soon as they come in. In the update conversation API, you can only update custom attributes. Right now we are only interested in Priority and SLA, but in the future we also might want to set tags or other fields. What we already tried: 1.Create an inbox rule that e.g. sets Priority if a custom attribute has a certain value. We set up a webhook to be notified when a new conversation comes in and set that custom attribute on the conversation through the API. Problem with this is that the inbox rule is triggered before we set the custom attribute. We also tried to call the /conversations/{id}/run_assignment_rules API but that only seems to trigger inbox rules which assign conversations. Even if we have an inbox rule that both assigns and sets the priority flag, only the assig
Hey everyone. I try to understand how I can connect a bot made on a different platform to the Intercom. Has anyone come across a similar case?
Hello everyone, I would like to know if I can list custom bots and resolution bots of my app by requesting the API. Thank's in advance.
I am using the Java SDK to update Intercom from my Java application. However I note that the Java SDK only supports v 1.3 of the intercom API. Is anybody using this SDK? Should I just use the REST API instead?
Have any way to send a button like demo bot sent:
For the intercom/intercom-react-native package found here (sorry, link button not working): https://github.com/intercom/intercom-react-native It says to use gradle 4.0.1 in the docs here:https://developers.intercom.com/installing-intercom/docs/react-native-installation/p> Does that mean that is the minimum version needed, or it has to be that version specifically? If specific, are there any plans to expand this to work with gradle 7.2? We use React Native 0.67.4 and it requires gradle 7.2. Also, can I suggest an "Issues" area on github? I think developers would really appreciate that. Thank you!
Does the "updated_at" field of a conversation gets updated whenever there is a new conversation part added to that conversation. I'd like to write a script which would query all conversations, check their "updated_at" fields and compare them to their previous values and if the values differ, the conclusion would be that a new conversation part was written for that conversation. Is this assumption valid? Then I would retrieve the parts only for the "updated" conversations. Also a follow up to the question would be in relation to the hard limit set by retrieving conversation parts (500 max). How often is this limit reached? Is there a way to bypass this?
I wanted to get the date of a company first created and for some reason all of the companies' `created_at` date is set to unknown. According to docs its handled by Intercom: https://developers.intercom.com/intercom-api-reference/reference#company-model So I started passing down an UNIX timestamp to `remote_created_at` and instead of `remote_created_at` `created_at` started working. I tested 3 times with and without `remote_created_at` and I can confirm that `created_at` was only working when I passed a timestamp to `remote_created_at`. Can someone help me to understand what's going on here? Thanks! Update: I fetched company data using the API and noticed that `created_at` timestamp is in-fact present on the company data. Its just not properly appearing on the Intercom company dashboard? And if I set `remote_created_at` then only the `created_at` will show up but not `remote_created_at`. This is weird behavior :S
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.