LaunchData (deep linking) is not receiving quotes causing JSON decoding to fail

My game uses launch data wrapped in a JSON. Recently, I have noticed that Roblox will completely remove the quotes from the launch data value causing JSON decoding to fail. This wasn’t the case before and must have changed in a recent update.

Here is how my game encodes and generates the link (FullURL) to show it is just normal JSON encoding through HttpService:

Here is what the launch data is after joining with the following link:

You can see that there are no quotes (") even though there should be.

Here’s an example of a link which this happens in:
https://www.roblox.com/games/start?placeId=10287353966&launchData={“Purpose”%3A"JoinKaminoTraining"%2C"ServerCode"%3A"dosSzxwh0gnpkUPl4urdlSFfEjyurNtLhmQkZNYYDm6NqEM6AwAAAA2"}

Update:
This only seems to be affecting certain platforms and users? The link worked fine through mobile for me but still seems to be broken on PC.

System information:
Browser: Microsoft Edge Version 114.0.1823.82 (Official build) (64-bit)
Operating System: Windows 11

Expected behavior

If it was working, the launch data would be a valid JSON with quotes.

12 Likes

We make use of deep linking in Phantom Forces and are experiencing the same issue since at least last thursday.

6 Likes

Thanks for the report! We’ll investigate.

5 Likes

Hi, are there any updates regarding this issue?

2 Likes

Hi, my game has a referral feature and lets you join a game link with a player’s userid inside with a key for referralId
https://www.roblox.com/games/start?placeId=7368621319&launchData={“referralId”%3A%20358575019}

Suddenly, this can’t be decoded and gives me this:
RobloxPlayerBeta_ocaoDYhND0
Notice how there’s no Id yet that is a valid encoding since I used httpservice URLEncode to originally encode it like this:

2 Likes

Thanks to reporting this issue. Deep links are processed via command line parameters, and Windows has special handling of quotes. While we are looking for a better solution, a workaround is to scape quotes with a backslash in JSON: { \”a\”: \”1\” }

For the example URL above is will be

roblox://experiences/start?placeId=10287353966&launchData=%7b%5C%22Purpose%5C%22%3a%5C%22JoinKaminoTraining%5C%22%2c%5C%22ServerCode%5C%22%3a%5C%22dosSzxwh0gnpkUPl4urdlSFfEjyurNtLhmQkZNYYDm6NqEM6AwAAAA2%5C%22%7d
5 Likes