Skip to main content

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!

So you might be able to do this; you probably can't make it update the subject of the conversation though, as it doesn't appear this is a functionality of the API.

 

First you could use the 'Search for a conversation' model to locate any conversations that are applicable, however I don't think it includes the option to search by custom attributes. But it depends how you're doing this as to whether you need it. If you can substitute your attribute for a 'tag' instead, then you could use this.

 

You can use the 'Reply to a conversation' model to add a note to a conversation, based on the IDs of the returned conversations and then submit a post request to apply the note.

 

In terms of actually automating all this though you'd either need to build an app or use something like Zapier, though I think you need the Premium plan in order to use webhooks on it.

 

Out of curiosity, is there a reason you want a note or subject changed if the qualification is set to EN? As if it's for the sake of clarity for your team and/or organizing different ones for different workers, you could always make a separate Team queue based on that attribute, or if it doesn't support that, have it as a tag instead.


Hi Zak,

 

Thanks for the answer!

 

The main reason is for distribution of the conversations. We're a multilingual team and certain Support Agents are taking French while others take Dutch for example.

It would be a lot easier to simply check the subject quickly in the unassigned inbox and pick out the conversations like that, rather than opening the conversations to look at the preferred language or language the customer is speaking in.

 

An alternative we thought of would be to create specific inboxes for each language and automate assigning based on the attribute, but this would create so many different inboxes which would make the overview very complex which is something we want to avoid.

 

Distributing to the agents directly isn't the best solution either as it depends who has most in their inbox or who is off, etc..

 

A note could work indeed through Zapier, and we have a premium account so using a webhook is not an issue, but it would be for all new conversations and not when it enters a specific inbox as far as I know.


Hey Levi,

 

No prob!

 

Gotcha, that all makes sense. I see the value of having it as the subject, and I see why notes might work too since if they are the most recent message then the contents (to a short extent) will be visible from a glance without needing to open it.

 

How many languages do you support? Is the reason for not wanting the separate inboxes just as it can look a bit messy or that it might mess with your reporting?

If the latter is the main concern, one thing you could do is create a View rather than a new team, as this will let you set up the view without affecting the team or location of the conversations at all.

These can be visible to your teammates as well so they can have it in the sidebar. More info here: https://www.intercom.com/help/en/articles/4323882-see-a-custom-list-of-conversations-in-real-time-with-inbox-viewsIt's essentially just a filter view of an inbox, rather than entirely new inbox itself. I think if you do decide to go down the route of multiple inboxes, this will be the least disruptive way.

 

With the Zapier/API way, I just tested it trying to update the subject and sadly it doesn't work. So your best bet for this method would be to use the note model.

 

With Zapier + Intercom you can do this:

image.pngFor the trigger, set this to be any new conversation in Intercom. Unfortunately, when setting up this trigger, Intercom forces Zapier to populate the sample data with a 'test' conversation, and doesn't let you find another one which is very annoying. It just means you will have to kind of run your zap for a few minutes and get it to do nothing after step 1 so you can populate the Zap with real data. I can confirm that a real conversation into Zapier will have all the information needed.

 

Then set up an if/then step and you'd want to specify to only continue if the custom attribute you have for language is populated (if all your conversations have this attribute then this step may not be necessary), but it depends how you want to do this. Will advise further below.

 

Then using the webhooks you can submit a reply to conversation command, and dynamically insert the conversation 'ID' from the first trigger into the API call. Then, specify it to be a note based on the documentation, and here's where you can do one of two things:

 

  1. You can simply make the note be the same as the value of the custom attribute. So if the attribute is 'EN' for english, then it'll just apply the note 'EN'. It'll mean that the value of the custom attributes and the contents of the notes will be the same.
  2. If you want the note to be a bit nicer like 'English' rather than 'EN', this is where the if/then step will be needed, and you can specify it to only continue if 'EN' is found in the custom attribute, and then type what you like. However this will require you to then make a new Zap for each language (although you might be able to do it in the one using Sub-zaps, I haven't messed around with them too much) which may or may not be too much of a bother, depends on how many languages you'd need to support.

 

I think the only caveat with the below method is:

  1. Depending on how large your company is you may use a lot of Zaps to achieve this which could eat into your usage. But it may also be fine!
  2. If a customer happens to reply again to the conversation after you add the note then it won't be visible in the sidebar. But that might be like a very unlikely thing to happen anyway, and may only account for 1% of cases.

 

Hope that helps! 😊 If you need any help with the exact API commands as well let me know, happy to help. Zapier can be a bit tricky sometimes with it's webhooks I've found.

 

 

 

 

 

 


Hey Zak,

 

Thank you for the exhaustive update!

 

I didn't think of Views to solve my problem and I think it's quite a great alternative. Perhaps even better than adapting the subject :)

 

Thanks again!

levi


Reply