O login pode ser realizado informando usuário e senha, ou o código de autorização obtido de um provedor externo (SAML, por exemplo). Se o usuário estiver configurado para usar autenticação multifator, será retornado, dentro do objeto 'mfaInfo', um token temporário que deverá ser utilizado no loginMFA para efetivamente realizar o login.
Payload de entrada
{
//Nome do usuário incluindo o domínio. Exemplo: ana.silva@senior.com.br. Este campo deve ser informado se o login for baseado em um usuário e senha.
"username": "string"
//Senha do usuário. Este campo deve ser informado se o login for baseado em um usuário e senha.
"password": "string"
//Código de autorização do provedor externo de autenticação. Provedores suportados: SAML. Este campo deve ser informado se o login for baseado em um código de autorização.
"code": "string"
//Escopo do token da autenticação. Opcional, se não for informado será usado o valor padrão 'desktop
"scope": "string"
}
Request
$ curl --location --request POST https://api.senior.com.br/platform/authentication/login --header "Content-Type: application/json" --header "client_id: {client_id}" --header "Accept: application/json" --data-raw "{ 'username': '{email}', 'password': '{senha}' }"
Response
200 Ok
{
//String contendo um json com os tokens de acesso, de refresh, o tempo de validade restante para o token de acesso e o nome do usuário. Se o usuário/tenant estiver configurado para
//usar autenticação multifator, esse token não será retornado. Ao invés disso, será retornado um token temporário, dentro do 'mfaInfo', que deverá ser enviado na primitiva loginMFA.
jsonToken: string,
//Informações para realizar o próximo passo da autenticação quando o usuário utiliza autenticação multifator.
mfaInfo: {
//Token temporário gerado quando o usuário possui autenticação multifator habilitada.
temporaryToken: string,
//Status da configuração da autenticação multifator por parte do usuário. Se for UNCONFIGURED ou RESETTED, deverá ser chamado a primitiva que envia um e-mail com as
//instruções para a configuração do MFA.
mfaStatus: string,
"Nome do tenant"
tenant: string
},
//Informações para realizar o próximo passo da autenticação quando o usuário está sinalizado para alterar a senha após se autenticar.
resetPasswordInfo: {
//Token temporário gerado quando o usuário precisa alterar a senha
temporaryToken: string,
//Nome do tenant
tenant: string
}
}
O jsonToken contém uma string JSON, e nela está o access_token a ser utilizado nas requisições que exijam autenticação.
Caso o campo resetPasswordInfo vier preenchido, é necessário que o usuário efetue a troca da senha pois ele está realizando seu primeiro login na plataforma.
400 Requisição Inválida
{
"message": "Request invalid format",
"errorCode": "loginResponse",
"reason": "BAD_REQUEST",
"domain": "platform",
"service": "authentication"
}
401 Não Autorizado
{
"message": "Usuário e/ou senha inválido.",
"errorCode": "loginResponse",
"reason": "UNAUTHORIZED",
"domain": "platform",
"service": "authentication"
}
- Login ou registre-se para postar comentários