diff --git a/app/controllers/v1/sessions_controller.rb b/app/controllers/v1/sessions_controller.rb
index ff474f08715b7056fd2a52bda37e79c159692f13..dd672999832e3d94000dee943fd9e8f4dd081a73 100644
--- a/app/controllers/v1/sessions_controller.rb
+++ b/app/controllers/v1/sessions_controller.rb
@@ -66,13 +66,10 @@ require 'open-uri'
       
         #in case of the user is not confirmed, find the user and send an email confirmation
         else
-          @user = User.find_by_email(params[:email])
-          UserMailer.email_confirmation(@user).deliver_now
           return render_create_error_not_confirmed
         end
 
       else  
-        puts("Usuário não encontrado")
         return render_create_error_bad_credentials
       end
 
@@ -82,7 +79,7 @@ require 'open-uri'
       render json: {
         success: false,
         errors: [ I18n.t("devise.failure.unconfirmed")],
-      }, status: 401
+      }, status: 417
        
     end
 
@@ -90,7 +87,7 @@ require 'open-uri'
       render json: {
         success: false,
         errors: [ I18n.t("devise.sessions.banished")]
-      }, status: 401
+      }, status: 406
     end
 
     def render_create_error_blocked
@@ -98,7 +95,7 @@ require 'open-uri'
         success: false,
         errors: [ I18n.t("devise.sessions.blocked")],
         avaliable_at: @resource.reactivated_at
-      }, status: 401
+      }, status: 406
     end
         
     def reactivate_user?
diff --git a/app/models/user.rb b/app/models/user.rb
index ecc3970b18930c9b22f795e1f3398ba5ab9a7ebc..dac3fd8761dbf0090160048d1a94d6737236d38a 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -139,6 +139,7 @@ class User < ApplicationRecord
   after_create :default_role
   before_save :verify_teacher_id
   after_save :verify_dspace_info
+  before_create :send_email_confirmation
   before_destroy :delete_index
   after_update :create_actions
 
@@ -167,6 +168,10 @@ class User < ApplicationRecord
   # don't versionate frequently changed fields
   has_paper_trail ignore: [:tokens, :sign_in_count, :current_sign_in_at, :last_sign_in_at]
 
+  def send_email_confirmation
+    UserMailer.email_confirmation(self).deliver_now
+  end
+
   def email_activate
     self.email_confirmed = true
     self.confirm_token = nil
diff --git a/lib/tasks/access.rake b/lib/tasks/access.rake
index 78f2b993ce553504fcc65f9b28183eb16bde93e4..be9ca3a72e2dd14116cfac5cee571ffb1ede7bfb 100644
--- a/lib/tasks/access.rake
+++ b/lib/tasks/access.rake
@@ -6,6 +6,7 @@ namespace :access do
         User.all.each do |user|
             if user.created_at < base_date
                 user.update_attribute(:email_confirmed, true)
+                user.update_attribute(:confirmed_at, Time.now)
             end
 
         end