When querying the following endpoint, an UNKNOWN
error response of "Exception was thrown by handler."
is returned.
https://apis.roblox.com/cloud/v2/universes/1359573625/data-stores/DATASTORE/scopes/SCOPE/entries/dXNlcl80NDE2NjM0QE0=
Other endpoints for the same DataStore with otherwise the exact same GET query work completely fine, such as
https://apis.roblox.com/cloud/v2/universes/1359573625/data-stores/DATASTORE/scopes/SCOPE/entries/dXNlcl8xNTEyMzk4NzJATw==
The keys in question are Base64 encoded, with =
being used for padding.
Escaping/encoding the =
with %3D
does not remedy this issue. \=
also does not work. This seems to be an internal exception from gRPC that has to do with the URI component being decoded before it is parsed as a key. I believe this is something that can be adjusted in the gRPC config for the endpoint.
This also seems to be an issue with other special characters like /
, as in the following thread: Unable to get Data/Memory Store entries when key contains "/"
I haven’t been able to find a way to otherwise escape this character, and the DataStore has already been using these keys without issue for years, so changing the key format on our end to something more URI-friendly isn’t ideal.
Expected behavior
Keys should either be escapable or have no limitations on the characters used.
A private message is associated with this bug report