diff --git a/doc/api/system_hooks.md b/doc/api/system_hooks.md
index 1802fae14feb8c87782b4eaac7a2c5c6607c3d99..073e99b7147043cef150b8e921b1e6b7983d7d69 100644
--- a/doc/api/system_hooks.md
+++ b/doc/api/system_hooks.md
@@ -98,11 +98,8 @@ Example response:
 
 ## Delete system hook
 
-Deletes a system hook. This is an idempotent API function and returns `200 OK`
-even if the hook is not available.
-
-If the hook is deleted, a JSON object is returned. An error is raised if the
-hook is not found.
+Deletes a system hook. It returns `200 OK` if the hooks is deleted and
+`404 Not Found` if the hook is not found.
 
 ---
 
diff --git a/lib/api/system_hooks.rb b/lib/api/system_hooks.rb
index 2e76b91051ffa0f4450688c66ada4367348441e0..794e34874f4de435aa73a83d182140359c5bbd59 100644
--- a/lib/api/system_hooks.rb
+++ b/lib/api/system_hooks.rb
@@ -56,12 +56,10 @@ module API
         requires :id, type: Integer, desc: 'The ID of the system hook'
       end
       delete ":id" do
-        begin
-          hook = SystemHook.find(params[:id])
-          present hook.destroy, with: Entities::Hook
-        rescue
-          # SystemHook raises an Error if no hook with id found
-        end
+        hook = SystemHook.find_by(id: params[:id])
+        not_found!('System hook') unless hook
+
+        present hook.destroy, with: Entities::Hook
       end
     end
   end
diff --git a/spec/requests/api/system_hooks_spec.rb b/spec/requests/api/system_hooks_spec.rb
index 1ce2658569eabcf0a8b4746f747f63b531351a3f..f8a1aed54419c8bb9b42b8d602af6ef653a70ee3 100644
--- a/spec/requests/api/system_hooks_spec.rb
+++ b/spec/requests/api/system_hooks_spec.rb
@@ -73,9 +73,10 @@ describe API::API, api: true  do
       end.to change { SystemHook.count }.by(-1)
     end
 
-    it "returns success if hook id not found" do
-      delete api("/hooks/12345", admin)
-      expect(response).to have_http_status(200)
+    it 'returns 404 if the system hook does not exist' do
+      delete api('/hooks/12345', admin)
+
+      expect(response).to have_http_status(404)
     end
   end
 end