Usability and Performance Issues with Zendesk Integration

I was happy to utilize the Zendesk integration so that I could hook up auto relations to other types. I was hoping to be able to query the text of the body/comments attached to the ticket.

For example, I could have a type of “Components”, which would include components of our product. One of those could be “Images.” So, I could query the text of the body/comments for people referencing something like “Images not loading for me,” then I’d utilize some calculated fields to help in auto-relating that to the “Images” entity. This highlights the first issue I discovered:

Issue 1: Missing the most important information

  • The comments/body of the ticket in Zendesk don’t appear to be sync’d. Is this expected behavior?
  • It seems like without this information there is little use in setting this integration up and I’d be back at using Integromat to manually implement the integration

Issue 2: Poor performance with larger number of entities without easy workarounds

So, assuming what is sync’d is useful, I decided to sync all tickets submitted since Jan 1st of this year. This ended up syncing 4600 tickets into the app and added views for each new type. After syncing this number of items, which I wouldn’t expect to enter the realm of excessive, Fibery keeps becoming unresponsive in Chrome. This even happens when I’m trying to look at other views that aren’t showing the table with the large number of items. The challenge is compounded by the fact that I cannot filter the view to only show the most recent items or something like that because it becomes unresponsive before I can apply a filter.

  • Lazy Loading: It appears Fibery isn’t lazy loading items, which would be critically important in a table view. When setting up that view you select an entity type, which immediately starts loading all the items before you can set a filter. This is just basic functionality of this type of app to have an optimized lazy loading capability so you don’t kill the browser
  • Zendesk Filtering: Should there not be a way other than by date to filter the Zendesk tickets? This might be a similar issue for the Jira integration. Most Jira integrations in other tools support using JQL to filter Jira tickets. If the number of tickets sync’d can break fibery, then there needs to be more control over what is sync’d

I’m curious if anyone else is actually successfully leveraging the Zendesk integration. Maybe most people don’t have much stuff coming into Zendesk and this hasn’t been tested to this extent.

I’m curious how Fibery (@mdubakov) is linking Zendesk tickets to Features, Components, Issues etc without the body/comments of the ticket. Are you using auto-linking of any kind? If so, how exactly are you doing that? It seems like it would have to be done manually, or we’d be forced into doing more work on the Zendesk size to organize it there.

2 Likes

I have noticed a lack of “Paging” functionality, e.g. how collections are handled in Entity view, where the only two options seem to be 1) see the first 10 entities in the collection, or 2) see ALL entities in the collection.

This will be unworkable for many situations (as in: break the browser), not to mention inefficient (requesting all records in a –potentially huge– collection, when that is almost never what is needed).

Can we expect a more robust handling of collection paging at some point?

It would also help to be able to search and filter collections in entity views.

2 Likes

I wanted to follow up on this, since I’ve seen no one from Fibery respond. One of the big features pushed in the Fibery for Product Teams is the ability to link feedback to Insight, Features, etc.

Link customer quotes to Insights, Features, and Stories to spot recurring needs.

I don’t see how the Zendesk integration could possibly be useful without the actual content of what the user said. All I get is the subject of what they submitted to us, which is just about useless. I’m interested if this was the intention for how the integration is supposed to work before I have to implement the integration through integromat.

Zendesk Ticket (see how much blurred out text there is)

I have to say as much as I’m a fan of Fibery, I wish they would do a better job of responding to our requests in here…you are seeing this first hand now.

Zendesk has great potential as it also has a good CRM module, unlike Intercom. By the same token, Hubspot has a good chat messenger like both Zendesk and Intercom. So I think the best potential for tracking customer accounts and linking feedback is going to be with the Zendesk and Hubspot integrations, not Intercom, because it can’t be used as a CRM, so you have to have that functionality elsewhere.

I haven’t tried the integration, but what you’re saying seems very valid, you need to be able to see what the customer said to link to features, insights, etc.

And in closing, I think the best solution would be if we could handle the CRM entirely in Fibery and just manage it straight off, things like schedule calls, take notes from meetings, etc. One huge piece of this is logging Email:

There was mention in the recent April summary blog post of Email integration coming soon, would love to get some insight from Team Fibery as to whether this will be something that will work like what I’m talking about here. Email integration can have so many elements to it, would love to find out what they are planning on that one…also huge implications for Zendesk, the foundation of which is logging Emails to specific cases/users.

Thanks!

2 Likes

Hi, the content should be there for sure. However, our developer who worked on Zendesk integration went for 3 weeks vacation. He is back next week and we will check what is happening here. Zendesk sync should fetch all content from tickets and chats, this is the main use case as you correctly articulated. Sorry for the delay here.

One question so far. When you open zendesk ticket entity in a full mode, do you see the Description field?

1 Like

Tables in Fibery are virtualized, so they should work pretty fast. Other views may be slow for 5K+ entities. Can you record a video with your Table View behavior? We have 10K Intercom entities and everything is fine. So we have to dig deeper to get the problem.

1 Like

Sounds good, just wanted to make sure it was seen. I have a video and a chrome dev tools profile saved off from where it froze up on me. I’ll send it directly.

Description was not available, so I added it manually and tried syncing again, and am not yet seeing anything come through.

Hello, @rothnic :wave:t2:

Do all the tickets miss comments/body for your zendesk integration? Or just a few of them?

Yeah, I wasn’t able to find any with something looking like a “body” for the ones I looked through. I wasn’t sure if that should come through Comments or a Description field.

This morning looking through I am seeing a few with the Comments field populated, but also some without. For the ones without anything in the Comments field there is content on the ticket that is linked to within Zendesk.

It is kind of hard to review them currently because it seems even my very filtered view (tickets created in the last 7 days) of the ~5000 entities is bogging down fibery. If the number of entities really impacts fibery, I would definitely like to see some kind of filtering available beyond just time. We get all kinds of input into zendesk, where only some of it would be relevant to product development, but I only see a way to limit based on time. This in the long run would not be sustainable.

1 Like

One quick follow-up in case it is relevant is that I’m not seeing any organizations or groups come through. We don’t use organizations so that is expected, but I’m not sure what the Group type should have in it. Where does the Group type come from within Zendesk?

Edit: It also looks like the ones without Comments don’t have a Collaborator associated with the ticket. All of the ones with Comments I can manage to open have a Collaborator

We have Rich content in email disabled in zendesk, which from reading looks like it could impact how things come through.

Issue 1:
I’m on this right now. Unfortunately we had no very active zendesk instances during tests and looks like we are facing rate limits with yours. I’ll keep you updated.

Meanwhile, are there any specific filters you’d like to use while fetching data from zendesk? In the most cases it’s more preferable to setup integration once and derive views with different filters from it instead of setting up new integration for each view. That’s why we avoid a lot of filters on this step

Issue 2:

The performance issue you describe looks not connected to Zendesk specifically. Could you please create another request for it to avoid possible confusions? Thanks a lot :+1:

P.S.

About the groups: you can read more here Creating, managing, and using groups – Zendesk help . So I assume there will be no groups if you haven’t created some

1 Like

Ok, yeah I get the idea of not filtering up front to have a single integration point. I’m just not really sure how this could work without some kind of up-front filtering if you consider how many entities fibery can support and still have good performance.

If we get 1k tickets per year, the date filtering might be fine. However, what if we get 50k tickets per year? The updated after filter would help initially to limit what is synced, but eventually you are just pulling everything in as they are added/updated. I’m not really sure what other ways zendesk allows filtering, so it is hard to say. I’m not sure if they expose views or tags or whatever through the api you are using, but that is the most immediate thing I can think of. I’m not a zendesk expert though.

For groups, yeah looked through the admin but didn’t see it. It seems to be in the people area. Did you consider breaking tags out as a separate Type? Not sure if there was a reason to do it or not

Edit: For reference, I wanted to add that we see about 1100 tickets per month on average

Looks like I’ve found the root cause.

Could you please set up new integration and check whether comments are present for you?

1 Like

Ok, i deleted the types and clicked “Integrate Type” and set it up again with the existing credentials that were added. I excluded Groups and Organization because we don’t use those features in zendesk. We mostly use it for individual help requests from a large user base.

I think I see what might be causing the slow down in Fibery. The sync has been going on from some time now and I’m seeing it has downloaded around 80k zendesk users so far. I’m wondering now if I should delete everything again and start over and don’t sync Users, but then would the comments still show up?

1 Like

I renamed Users and Tickets to “Zendesk User” and “Zendesk Ticket” to be clear what they are compared to similarly named types. It appears that caused issues with the integration.

Type 'Input/Ticket' was not found.. jwt expired

I named them back to what they were and tried to sync again. I get:

Could not start sync data in a red box. I clicked “Okay” and things seem pretty broken. So, I deleted the types again and am restarting the sync that was at one time up to 130k zendesk users. This time I won’t rename the types until after the initial sync, but that might be something to account for.

Edit: Got another jwt expired error. Tried hitting sync again

1 Like

Yeah, renaming during the sync is a bit dangerous at the moment. Something we should definitely take care of one day)

Hm… jwt issue is strange as Zendesk tokens do not expire

Comments is just a rich text editor field in Ticket type so it’s not dependent on User. If you don’t need info about users and how they map to tickets(assignees, submitters, requesters) then you can definitely skip them

Ok. I might try that. I keep getting a jwt expired error because it seems to now be trying to pull in all users ever, not just the users associated with the tickets updated in the date range.

I am only syncing from the beginning of March of this year and am getting 130k+ users being synced.

And fix for this was deployed 5 mins ago. Now the date filter applies to users too

Have you logged out from zendesk?
Maybe try to re-auth. During integration set up just delete previous account and create a new one

No, this seemed to be a timeout driven from the number of users/tickets being synced. It seemed to take so long because of the 130k users that it never was able to complete the sync and no tickets or users showed up. I triggered a new sync this weekend of only the tickets type and that did complete, so I’m looking through those now to see if the Comments content is there consistently. It didn’t require any re-auth or anything. My initial scan through looks promising.

Was there any thought around using Types for anything else that is synced? Groups, Users, and Organizations aren’t really important for us in this context, since we are using this to help manage the kinds of input/issues that are being reported. If we want to respond to them then that would happen in Zendesk, where the specific User is important.

Since most of the views within Fibery require special types of fields for visualization, and I don’t need Groups, Users, or Organizations, this is what I see when trying to show these on a board:

So, there is only a single field, Created By that can be leveraged in visualizing these on a board. I’d suggest using a single select or relationship for anything that is a Drop-Down field within Zendesk (Type, Status, Priority). This would make the synced tickets immediately useful, rather than requiring a bunch of work. There is no way that I’m aware of for us to “auto-map” single select fields, so we’d be forced to create Zendesk Type, Zendesk Status, and Zendesk Priority Types within Fibery, then use the auto-mapping to associate them with tickets. Then, we’d be able to visualize them using those fields in a Board view.

I’m also noticing that only “System” fields are currently being synced. Severity doesn’t show up for me.