RESTfully cria / faz login ou / registra recursos?

Eu estava projetando um aplicativo Web e depois parei para pensar em como minha API deveria ser projetada como um serviço Web RESTful. Por enquanto, a maioria dos meus URIs são genéricos e podem se aplicar a vários aplicativos da web:

GET  /logout   // destroys session and redirects to /
GET  /login    // gets the webpage that has the login form
POST /login    // authenticates credentials against database and either redirects home with a new session or redirects back to /login
GET  /register // gets the webpage that has the registration form
POST /register // records the entered information into database as a new /user/xxx
GET  /user/xxx // gets and renders current user data in a profile view
POST /user/xxx // updates new information about user

Tenho a sensação de que estou fazendo muito errado aqui depois de bisbilhotar o SO e o googl

Começando com/logout, talvez porque eu realmente nãoGET qualquer coisa - pode ser mais apropriadoPOST uma solicitação para/logout, destrua a sessão e depoisGET o redirecionamento. E o/logout termo estadia?

A respeito/login e/register. Eu poderia mudar/register para/registration mas isso não altera a maneira como meu serviço funciona fundamentalmente - se houver problemas mais profundo

Percebo agora que nunca exponho um/user recurso. Talvez isso possa ser utilizado de alguma forma. Por exemplo, considere o usuáriomyUser:

foo.com/user/myUser

o

foo.com/user

O usuário final não exige essa verbosidade extra no URI. No entanto, qual é mais atraente visualmente?

Percebi aqui outras perguntas sobre o negócio de REST aqui, mas realmente gostaria de receber algumas orientações sobre o que formei aqui, se possíve

Obrigado

ATUALIZAR

Gostaria também de algumas opiniões sobre:

/user/1

vs

/user/myUserName

questionAnswers(7)

yourAnswerToTheQuestion