In sandbox-mode, Instagram only returns the data associated with the sandbox users.
It's written down in the docs, section API behaviour:
Data is restricted to sandbox users and the 20 most recent media from each sandbox user.
[...]
As another example, let's consider an endpoint that returns a list of media: /tags/{tag-name}/media/recent. The response returned by this endpoint will contain only media with the given tag, as expected. But instead of returning media from any public Instagram user, it will return only media that belongs to your sandbox users, restricted to the last 20 for each user.
If you create a "london" tag with your sandbox user, you should see it. Once your app has switched to live, you should see all public available "london" tags.
Your request is NOT malformed and the API behaves as described in the documentation.