Answered

Is it possible to wild card dynamic URLs for product tours?


Our app has a lot of dynamically generated identifiers that fill portions of our URLs. These IDs change depending on the user, the project, the company, etc. So what I'm trying to figure out is how I can make this example URL:

 

domain.com/projects/38918-3891-38939/company/492389183

 

...work for everyone no matter which project or company they're in. I've seen the concept of wildcarding before in other apps where the above URL would be reflected as:

 

domain.com/projects/*/company/*

 

So that no matter what ID comes in the place of the *, the URL will trigger the action.

 

Any input on this would be fantastic. Thanks!

icon

Best answer by Kevin Bendixen 28 April 2021, 08:49

View original

14 replies

Userlevel 3
Badge +5

@justin j​ I've had some luck with using "0" in a similar case than yours, but only had to use this "variable" once per URL.

If send those ID's to Intercom as attributes you can use them in the URLs as well. Something like this: domain.com/projects/{project_id}/company/{company_id}

Thanks for that input Kevin. I'll try the 0 thing today, but you may be right that sending IDs as attributes would also make sense. Going to check with our engineers on that. Appreciate it-

Hi Kevin-

I'm in the process of detailing this custom attribute request for our engineering team. One thing I'm trying to better understand is how attributes like this are sent as attributes of a user.

 

The way our system works, 12 digit IDs are created for the URL structure. And multiple different users can view the same URL. However, these unique IDs are attributes of projects in the system, not users. And since (I believe) Intercom's notion of custom attributes are bound to users, I'm wondering how that works.

 

Hopefully I was able to explain that with some degree of clarity 🙂 Any thoughts are most welcome - thanks!

Userlevel 1
Badge

Hello @justin j​ ,

 

If I understood your use case, you want to display product tours based on dynamic URLs.

 

In the following case, a rule like this should work:

https://www.loom.com/share/0747be672ecd44e198c5aedecc4b86c2/p>

 

Without creating a custom attribute, let me know if this is what you are looking for.

 

Best,

Roy

Hi Roy- I appreciate your solution. That actually is a great option for the rules logic of presenting a tour. So thank you! The outstanding issue that still persists is more specific to the "share anywhere" link. In order to post a link to a product tour, I need to be able to replace our static unique IDs with something that wildcards those pieces. Does that make sense?

Userlevel 1
Badge

@justin j​ , I don't get the following part "Post a link to a product tour", you want to insert a dynamic link inside the product tour as a next step or just want to send a dynamic Product tour URL via Intercom messenger?

Thanks for clarifying Roy - I was trying to articulate the latter of those two.

Screen Shot 2021-10-04 at 3.43.40 PM

Hey all, I don't understand this answer. I have the same question.

 

My URL contains both a company ID and a user id: https://[unique-companyh].company.com/dashboard/[unique-customer-ID/thing

 

The logic is, anytime a user from any company, with any unique ID, visits for the first time, show them this product tour.

 

There is no engineering option to pass any additional information. So, do intercom product tours support this sort of wildcard functionality?

 

Thanks.

 

Bob

How about even a single variable element? Https://specific-company.company.com/[unique-ID]/dashboard

?

 

 

Has anyone been able to get a Product Tour to launch on-demand with the users current URL? I believe this is what most of us are trying to accomplish. We don't want to start it automatically, we want to send it to a user, or have our app launch it for the user and use the current URL as the starting point.

 

The "Use Tour Everywhere" setting can use Custom Attributes, but my testing has been inconsistent. I am using the Javascript library to update the Unique Page ID, right before launching the tour, but it isn't working every time. Even when I send updates through the browser console. I can start a chat, and refresh the chat to see my custom data attribute update on Intercom User profile, but when I start the tour it still fails frequently.

 

The tour just doesn't launch sometimes, which is quite confusing user experience.

 

When the tour DOES launch, the user experience is SO nice!

Hi Jeff - Sure sounds like you're in the same camp with a lot of the rest of us. I still haven't managed to sort out a solution to my initial issue of the "Use tour everywhere" feature. It appears the big break down within the functionality is use of any dynamic URL component. I'm keeping my fingers crossed that this has come up enough and has made it to their product roadmap 🙏

My users will be only need to initiate the tour when they are on the current page with the unique ID. They would receive the Tour link via Chat or from the application when applicable. They would never receive an email that contains the Tour of a unique ID they may have been working on. What use case is applicable to you?

 

Intercom has suggested I use the "referral url" parameter as my "Use Tour Everywhere" url that should be the current users URL. Therefore, we take the need to track the Unique ID's out of the equation. In theory, this should work for the use case in which the user only executes the tour when they are on the page in question.

 

edit:

Initially I had to refresh my page every time for the tours to load. This issue has been resolved by verifying that my CSS Selectors for the first Click Element on the product tour was available.

Hi Jeff- Just got a chance to watch that screen cap you did. While your use case is a little different than mine, it's good to see what you worked through for reference. Thanks for taking the time on it!

+1 to the need for wildcard parameters baked in!!!

Reply