Obviously a RESTful API could contain base routes such as:api/competitionsapi/competitions/{id}api/teamsapi/teams/{id}api/playersapi/players/{id}And nested routes such as:api/competitions/{id}/teamsapi/competitions/{id}/teams/{id}/playersapi/teams/{id}/players...But what about the following example (Route A):api/competitions/{id}/teams/playersSo all players, for all teams that are in a certain competition?Q1: Would this contravene REST design?Q2: Presumably it does, but is there any documentation that explicitly states this? I have done some research and cannot find anything that rules it out as the examples are all very simplistic.You could implement (Route B):api/competitions/{id}/playersinstead, and then underneath the logic would ensure that the players are not ALL players (as in api/players) but take into account team and therefore competition - so that players that are without a team are excluded. However, moving away from this simple example to a more abstract model, there might be scenarios where Route B might be more confusing to an API consumer than Route A.Q3: Would there ever be a justification for implementing a nested route (like Route A) without all identifiers at every level? 
REST API, nested routes without providing identifiers at every nested level
rest;api;api design