diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-03-10 23:56:29 -0700 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-03-10 23:56:29 -0700 |
commit | a29c883b5b41a2340207a939cd4b32a0c2fe03ca (patch) | |
tree | e2c66dcc1dd4aa1cca9a360217a92f8d1a66c950 /lib/api | |
parent | 269a9859488e184768ca7d99e562b93b414f87d6 (diff) | |
parent | 562de2a438268bbc71537f2102f4ae7848aaa98e (diff) | |
download | gitlab-ce-a29c883b5b41a2340207a939cd4b32a0c2fe03ca.tar.gz |
Merge pull request #3170 from Asquera/api/system_hooks_adjustments
API: system hook request functions and documentation updated
Diffstat (limited to 'lib/api')
-rw-r--r-- | lib/api/system_hooks.rb | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/lib/api/system_hooks.rb b/lib/api/system_hooks.rb index 665a1cdd0d2..da0b005d69d 100644 --- a/lib/api/system_hooks.rb +++ b/lib/api/system_hooks.rb @@ -1,7 +1,10 @@ module Gitlab
# Hooks API
class SystemHooks < Grape::API
- before { authenticated_as_admin! }
+ before {
+ authenticate!
+ authenticated_as_admin!
+ }
resource :hooks do
# Get the list of system hooks
@@ -21,6 +24,7 @@ module Gitlab # POST /hooks
post do
attrs = attributes_for_keys [:url]
+ required_attributes! [:url]
@hook = SystemHook.new attrs
if @hook.save
present @hook, with: Entities::Hook
@@ -47,13 +51,19 @@ module Gitlab data
end
- # Delete a hook
- #
+ # Delete a hook. This is an idempotent function.
+ #
+ # Parameters:
+ # id (required) - ID of the hook
# Example Request:
# DELETE /hooks/:id
delete ":id" do
- @hook = SystemHook.find(params[:id])
- @hook.destroy
+ begin
+ @hook = SystemHook.find(params[:id])
+ @hook.destroy
+ rescue
+ # SystemHook raises an Error if no hook with id found
+ end
end
end
end
|