Create Criação de conta em portalmec homologa authored by Richard Fernando Heise Ferreira's avatar Richard Fernando Heise Ferreira
# Criação de conta em portalmec homologa
* A criação de uma conta no banco local do portalmec homologa é feita através do Insomnia.
## Criando uma conta
Subir o back localmente usando:
> rails s
Para criar uma conta localmente é necessário usar o Insomnia.
### Utilizando o Insomnia
1. Criar um método **POST**.
2. No espaço da **URL** digitar o localhost com a respectiva porta local, considerando que a porta local é 3000 ficaria:
> localhost:3000
3. Para criar um usuário a rota utilizada é:
> localhost:3000/v1/auth
4. No campo **body** selecionar a opção **JSON** e passar o JSON com os dados para a criação do usuário.
E-mail e senha no seguinte formato já é suficiente:
> {
> "email": "teste@email.com.br",
> "password": "senhateste123"
> }
5. Clicar em *Send* do lado da URL. O retorno esperado é um JSON com o status *success*.
# Token
* Para acessar rotas ou realizar ações que precisa estar logado em uma conta é necessário passar um token de acesso junto com o request.
## Conseguindo o token
Subir o back localmente usando:
> rails s
Para conseguir o token é necessário entrar como admin na rota de log-in usando o Insomnia.
### Utilizando o Insomnia
1. Criar um método **POST**.
2. Para realizar um login a rota utilizada é:
> localhost:3000/v1/auth/sign_in
3. No campo **body** selecionar a opção **JSON** e passar o seguinte JSON:
> {
> "email": "admin@inf.ufpr.br",
> "password": "123mudar"
> }
4. Clicar em *Send*. O retorno esperado é o JSON desse login na aba **Preview** contendo todas as informações dele.
5. Clicar na aba **Header** do lado direito da aba *Preview* e procurar pelo campo **Authorization**.
O padrão é um token do tipo:
> Bearer xxxxx
Onde *Bearer* é o prefixo do token e *xxxxx* é uma sequência grande de letras e números, esse é o token procurado.
## Utilizando o token
Esse token é utilizado para acessar todas as rotas que precisam de login, nesse caso o token é de admin, então tem todos os privilégios de admin também.
Para exemplificar o uso do token os passos abaixo mostram a criação de uma *role*.
### Criando uma role
1. Criar um método **POST**.
2. Para criar uma role a rota utilizada é:
> localhost:3000/v1/roles
3. No campo **body** selecionar a opção **JSON** e passar o JSON com os dados para a criação da role.
Nesse exemplo é criada uma role de id 9, com nome teste e uma descrição genérica
> {
> "id": 9,
> "name": "teste",
> "description": "This role is a test"
> }
4. Para passar o token tem que clicar na aba **Auth** e selecionar o campo **Bearer Token**.
No campo *TOKEN* colocar apenas a parte *xxxxx* do token (sequência de letras e números), sem o *Bearer* na frente.
No campo *PREFIX* digitar *Bearer*.
5. Clicar em *Send* do lado da URL. O retorno esperado é o JSON passado no corpo da request.
\ No newline at end of file