Configure deeplink with arguments

1
Hi, I am trying to create a deeplink with arguments, but it dsoesn't work as expected. I see that there are two options, either something like http://myapp.com/deeplinkName/Argument or http://myapp.com/deeplinkName?argument=Argument but I can't find how to fill in Deeplink Name for those options. For the first option I would expect Name='deeplinkName/'+$Argument For the second option I tried Name ='deeplinkName?argument='+$Argument. But in both cases I get an error that the deeplink name may contain only alphanumeric characters. If I remove the slash or question mark I get no error, but of course the URL is not correct (http://myapp.com/deeplinkNameArgument). How should I configure the deeplink name to get the correct URL? Thanks, Joost
asked
3 answers
3

The Name parameter of the deeplink is always the identifier that directly follows 'link/' in the URL; in your case "deeplinkName". Any GET parameters following that (like '?argument=Argument') are automatically translated to microflow parameters without any configuration being necessary. If the microflow you are calling with your deeplink has a String argument called 'argument', that parameter will receive the String "Argument".

*Edit: Note that the URL shown in the configuration screen is just an indicator of what a possible URL might look like, and might not be complete in all cases. If you configure a deeplink called 'Example', both the URLs "myapp.com/link/Example" and myapp.com/link/Example?param=foo&param2=bar" are valid ways to call the link. (Though the first will not pass any parameters to the microflow)

*Edit2: I understand you're actually talking about building a link for a user to click on. The deeplink configuration (which has the Deeplink/Name parameter) is just something that tells the runtime "when a user comes in with a URL that contains "/link/<deeplinkname>", call this microflow". Actually creating such a URL, for instance in a e-mail, is something you should do yourself.

When you create the e-mail text, you can create a link to e.g. "'http://myapp.com/link/FillForm?user=' + $UserName". You do not need to use the CreateDeeplink microflow for this, since the deeplink (configuration) already exists. Just create a String containing that URL and put it somewhere in your e-mail message. You can use a microflow to build the e-mail text as a String, or you can use the e-mail template module to do this more easily.

answered
1

Joost,

The link should be http://myapp.com/link/deeplinkname/argument.

answered
0
  1. Create a microflow 'MF' which takes in a param eg String or integer
  2. Make sure deeplink is started after start up using mendix config.
  3. Use Deeplink config interface to reload the mircroflows and select the created microflow 'MF'. This will enable you to select the parameter also give a name
  4. Access the link using http://myapp.com/deeplinkName/Argument as you indicated.
answered