We are currently designing a REST API to access classical customer data.One of the elements in the API are the assets of an user. The assets are added under a given service.  The backend API will only add an asset to an user under a given service. So, there's no User--Asset relation, but a  User--[Service]--Asset relationship.Our URI's will look like this:/users/{id}/assets/{id}/services/{id}Uses of the API will know the asset id and the service id to create a new entry.What we are struggling with is the creation of this relation.One straightforward way would be to post the whole relation to /users/{id}/assets/ POST /users/{id}/assets    {asset:${id}, service:{id}, attribute1:{var}, attribute2:{var}}but then we are not actually creating an asset as the URI might indicate, but an asset-service relation.As an alternative, we are considering POST'ing to the URI addressing the relation, like this:POST /users/{id}/assets/{id}/service/{id}{attribute1:{var}, attribute2:{var}}But in this case, the resource path /users/{id}/assets/{id} will not exist before the POST and will be created as a side-effect.Is POST'ing to a resource path that does not exist yet allowed at all?Thanks for your thoughts,Gerard.
Creating an entity relationship in REST: May I create the parent by posting to a child id?
design;design patterns;rest