diff --git a/app/models/concerns/complainable.rb b/app/models/concerns/complainable.rb
index 72875e02eaaa82d859286be866950df189ee230c..52fe06422e0589135afcf375f349d5ae44badd81 100644
--- a/app/models/concerns/complainable.rb
+++ b/app/models/concerns/complainable.rb
@@ -4,4 +4,9 @@ module Complainable
   included do
     has_many :complaints, as: :complainable
   end
+
+  def complained?(user)
+    !complaints.where(user: user).blank?
+  end
+
 end
diff --git a/app/models/concerns/reviewable.rb b/app/models/concerns/reviewable.rb
index a125c93e8c0eb3f0b46cc346ecc9efd6d3f76133..27875b9253f266253af25b4bfcab88b8cd597bcc 100644
--- a/app/models/concerns/reviewable.rb
+++ b/app/models/concerns/reviewable.rb
@@ -5,6 +5,10 @@ module Reviewable
     has_many :reviews, as: :reviewable, dependent: :destroy
   end
 
+  def reviewed?(user)
+    !reviews.where(user: user).blank?
+  end
+
   def review_ratings_average
     array = reviews.map(&:rating_average)
     return 0.0 if array.size.zero?
diff --git a/app/serializers/collection_min_serializer.rb b/app/serializers/collection_min_serializer.rb
index 4dbb788e9d7f74626792a3cecf90abcfbce0b786..93fd70127987d425aebb76a7c994970a54221957 100644
--- a/app/serializers/collection_min_serializer.rb
+++ b/app/serializers/collection_min_serializer.rb
@@ -1,12 +1,19 @@
 class CollectionMinSerializer < ActiveModel::Serializer
-  cache key: 'collection', expires_in: 4.hours, except: [:likes_count, :liked]
+  cache key: 'collection', expires_in: 4.hours, except: [:likes_count, :liked, :reviewed, :complained]
 
   def liked
     object.liked? current_user
   end
 
+  def reviewed
+    object.reviewed? current_user
+  end
+
+  def complained
+    object.complained? current_user
+  end
 
-  attributes :id, :name, :owner, :created_at, :updated_at, :description, :privacy, :score, :likes_count, :liked, :review_average, :thumbnail
+  attributes :id, :name, :owner, :created_at, :updated_at, :description, :privacy, :score, :likes_count, :liked, :reviewed, :complained :review_average, :thumbnail
   has_many :tags
   has_many :subjects
   has_many :educational_stages
diff --git a/app/serializers/collection_serializer.rb b/app/serializers/collection_serializer.rb
index ef5a2dedccce4860bb56f5c4946bef1d7e2cc562..6df8b10ccd32c6d01dc33371e5284fe073100cea 100644
--- a/app/serializers/collection_serializer.rb
+++ b/app/serializers/collection_serializer.rb
@@ -1,11 +1,19 @@
 class CollectionSerializer < ActiveModel::Serializer
-  cache key: 'collection', expires_in: 4.hours, except: [:likes_count, :liked]
+  cache key: 'collection', expires_in: 4.hours, except: [:likes_count, :liked, :reviewed, :complained]
 
   def liked
     object.liked? current_user
   end
 
-  attributes :id, :name, :owner, :created_at, :updated_at, :description, :privacy, :score, :likes_count, :liked, :review_average, :thumbnail
+  def reviewed
+    object.reviewed? current_user
+  end
+
+  def complained
+    object.complained? current_user
+  end
+
+  attributes :id, :name, :owner, :created_at, :updated_at, :description, :privacy, :score, :likes_count, :liked, :reviewed, :complained, :review_average, :thumbnail
   has_many :tags
   has_many :subjects
   has_many :educational_stages
diff --git a/app/serializers/learning_object_serializer.rb b/app/serializers/learning_object_serializer.rb
index 226a77f8524c9f4f655f6c7ded8a0ea7d7fd3445..131f2278481ab30987cfcbac083e4c64c1e93a11 100644
--- a/app/serializers/learning_object_serializer.rb
+++ b/app/serializers/learning_object_serializer.rb
@@ -1,5 +1,5 @@
 class LearningObjectSerializer < ActiveModel::Serializer
-  cache key: 'learning_object', expires_in: 4.hours, except: [:likes_count, :liked]
+  cache key: 'learning_object', expires_in: 4.hours, except: [:likes_count, :liked, :reviewed, :complained]
 
   def default_location
     object_type == ("Vídeo" || "Áudio") ? object.default_attachment.try(:retrieve_cache_link) : object.default_attachment.try(:retrieve_url)
@@ -25,6 +25,14 @@ class LearningObjectSerializer < ActiveModel::Serializer
     object.liked? current_user
   end
 
+  def reviewed
+    object.reviewed? current_user
+  end
+
+  def complained
+    object.complained? current_user
+  end
+
   attributes :id,
              :name,
              :description,
@@ -44,6 +52,8 @@ class LearningObjectSerializer < ActiveModel::Serializer
              :license,
              :liked,
              :likes_count,
+             :reviewed,
+             :complained,
              :shares_count,
              :created_at,
              :updated_at
diff --git a/app/serializers/user_serializer.rb b/app/serializers/user_serializer.rb
index 151abb94338cdca865403115ce1bcdfa02be9f44..4fa94f9131c6935872331ea7a582c4f83bf7a4f4 100644
--- a/app/serializers/user_serializer.rb
+++ b/app/serializers/user_serializer.rb
@@ -1,4 +1,9 @@
 class UserSerializer < ActiveModel::Serializer
-  cache key: 'user', expires_in: 4.hours
-  attributes :id, :email, :provider, :name, :description, :role_ids, :institution_ids, :avatar, :likes_count, :follows_count, :learning_objects_count, :collections_count, :created_at, :updated_at
+  cache key: 'user', expires_in: 4.hours, except: [ :complained ]
+
+  def complained
+    object.complained? current_user
+  end
+
+  attributes :id, :email, :provider, :name, :description, :role_ids, :institution_ids, :avatar, :likes_count, :complained, :follows_count, :learning_objects_count, :collections_count, :created_at, :updated_at
 end