diff --git a/app/controllers/v1/search_controller.rb b/app/controllers/v1/search_controller.rb
index 824fdef67fd2ee6dead8756e06e72f7cddf01d1b..4fb417204753b8cef74d9a4a5cc9683ff44c91f9 100644
--- a/app/controllers/v1/search_controller.rb
+++ b/app/controllers/v1/search_controller.rb
@@ -44,8 +44,13 @@ class V1::SearchController < ApplicationController
   # GET v1/search/tag
   # GET v1/search/tag.json
   def tag
-    results = TagSearchService.search(Tag.find(tag_search_params[:id]))
-    render json: paginate(results)
+    t = Tag.find_by_name(tag_search_params[:name])
+    if t.nil?
+      render json: {"error": "Tag not found."}, status: :unprocessable_entity
+    else    
+      results = TagSearchService.search(t)
+      render json: paginate(results), status: :ok
+    end
   end
 
   private
@@ -60,6 +65,6 @@ class V1::SearchController < ApplicationController
   end
 
   def tag_search_params
-    params.permit(:page, :results_per_page, :id)
+    params.permit(:page, :results_per_page, :name)
   end
 end