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" }