Get<HttpWebResponse> in 4.0.40

Just migrated from 4.0.36 to 4.0.40 and we are now experiencing 404 errors when we make calls like this:

Client.Get(new ARequestDto
{
AProperty = “”
})

[Route("/foo/{AProperty}", “GET”)]
public class ARequestDto
{
public string AProperty { get; set; }
}

It used to be (since v4 began) that we got a 200, and SS redirected the API at GET /foo (if there was one), but now it just returns 400, which, actually makes more sense.

Was this change intentional?
If so we need to make a solution-wide change for that older assumption.
Just looking for confirmation, and explanation if there is one.

GET /foo doesn’t match the route "/foo/{AProperty}"

Anything in the path info is a required property, if you want it to be optional you should either use a wild card:

[Route("/foo/{AProperty*}", "GET")]
public class ARequestDto
{
    public string AProperty { get; set; }
}

Or two different routes:

[Route("/foo", "GET")]
[Route("/foo/{AProperty}", "GET")]
public class ARequestDto
{
    public string AProperty { get; set; }
}