We version each of our individual resources. so a /v1/user might have many /v3/post . Seems to work for us as a smaller engineering team.
A better approach would be to alias /v3/user to /v1/user until there is a breaking change needed in the v3 code tier.
POST /v4/whatever
POST /v3/whatever