diff --git a/app/controllers/api/v1/users_controller.rb b/app/controllers/api/v1/users_controller.rb
index 9a22225..af2f5ff 100644
--- a/app/controllers/api/v1/users_controller.rb
+++ b/app/controllers/api/v1/users_controller.rb
@@ -17,6 +17,11 @@ class Api::V1::UsersController < Api::V1::BaseController
       steam: {
         url: @steam.base_url, 
         nickname: @steam.nickname
+      },
+      bans: {
+        gather: @user.banned?(Ban::TYPE_GATHER).present?,
+        mute: @user.banned?(Ban::TYPE_MUTE).present?,
+        site: @user.banned?(Ban::TYPE_SITE).present?
       }
     }
   rescue ActiveRecord::RecordNotFound
diff --git a/spec/controllers/api/v1/users_controller_spec.rb b/spec/controllers/api/v1/users_controller_spec.rb
index 73f1740..4cc19e6 100644
--- a/spec/controllers/api/v1/users_controller_spec.rb
+++ b/spec/controllers/api/v1/users_controller_spec.rb
@@ -29,6 +29,25 @@ describe Api::V1::UsersController do
         get :show, id: -1
       }.to raise_error(ActionController::RoutingError)
     end
+
+    it 'returns correct ban if user muted' do
+      create :ban, :mute, user: @user
+      get :show, id: @user.id
+      expect(response).to be_success
+      expect(json['bans']['mute']).to eq(true)
+    end
+    it 'returns correct ban if user gather banned' do
+      create :ban, :gather, user: @user
+      get :show, id: @user.id
+      expect(response).to be_success
+      expect(json['bans']['gather']).to eq(true)
+    end
+    it 'returns correct ban if user site banned' do
+      create :ban, :site, user: @user
+      get :show, id: @user.id
+      expect(response).to be_success
+      expect(json['bans']['site']).to eq(true)
+    end
   end
 
   describe '#index' do
diff --git a/spec/factories/ban.rb b/spec/factories/ban.rb
index 81a5c7b..0f998be 100644
--- a/spec/factories/ban.rb
+++ b/spec/factories/ban.rb
@@ -1,23 +1,31 @@
 FactoryGirl.define do
-	factory :ban do
-		ban_type Ban::TYPE_SITE
-		expiry Date.today + 1
-		# Hack because of the awkward way bans are created (requires user_name)
-		before(:create) do |ban|
-			if ban.user.nil?
-				user = create :user
-				ban.user_name = user.username
-			else 
-				ban.user_name = ban.user.username
-			end
-		end
-	end
+  factory :ban do
+    ban_type Ban::TYPE_SITE
+    expiry Date.today + 1
+    # Hack because of the awkward way bans are created (requires user_name)
+    before(:create) do |ban|
+      if ban.user.nil?
+        user = create :user
+        ban.user_name = user.username
+      else 
+        ban.user_name = ban.user.username
+      end
+    end
+  end
 
-	trait :mute do
-		ban_type Ban::TYPE_MUTE
-	end
+  trait :mute do
+    ban_type Ban::TYPE_MUTE
+  end
 
-	trait :expired do
-		expiry Date.yesterday - 1
-	end
+  trait :site do
+    ban_type Ban::TYPE_SITE
+  end
+
+  trait :gather do
+    ban_type Ban::TYPE_GATHER
+  end
+
+  trait :expired do
+    expiry Date.yesterday - 1
+  end
 end
\ No newline at end of file