It seems the ApiExplorer ignores valid actions when there are placeholders in the route template which cannot be mapped to an action parameter, e.g.
The ApiExplorer will not consider the route template "users/{username}/SomeAction" to be valid for action SomeAction([ModelBinder] MyUser user), that may use the value of UserName for the binding of the MyUser parameter (or not).
The action will be ignored by the ApiExplorer, although it can indeed be invoked by the framework.
Note that in the example, the action will be shown in the ApiExplorer if a default value is provided for placeholder {username}, as a possible workaround.
The ApiExplorer will not consider the route template "users/{username}/SomeAction" to be valid for action SomeAction([ModelBinder] MyUser user), that may use the value of UserName for the binding of the MyUser parameter (or not).
The action will be ignored by the ApiExplorer, although it can indeed be invoked by the framework.
Note that in the example, the action will be shown in the ApiExplorer if a default value is provided for placeholder {username}, as a possible workaround.