System hooks API
System hooks API
所有方法都需要管理员授权.
也可以使用Admin Area> System Hooks ( /admin/hooks )中的 UI 来配置系统挂钩的 URL 端点.
阅读有关系统挂钩的更多信息.
List system hooks
获取所有系统挂钩的列表.
GET /hooks 
请求示例:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/hooks" 
响应示例:
[  {  "id":1,  "url":"https://gitlab.example.com/hook",  "created_at":"2016-10-31T12:32:15.192Z",  "push_events":true,  "tag_push_events":false,  "merge_requests_events":  true,  "repository_update_events":  true,  "enable_ssl_verification":true  }  ] 
Add new system hook
添加一个新的系统挂钩.
POST /hooks 
| Attribute | Type | Required | Description | 
|---|---|---|---|
 url  | 
string | yes | 挂钩网址 | 
 token  | 
string | no | 用于验证收到的有效载荷的秘密令牌; 这将不会在响应中返回 | 
 push_events  | 
boolean | no | 设置为 true 时,挂钩将在推送事件时触发 | 
 tag_push_events  | 
boolean | no | 设置为 true 时,挂钩将在被推送的新标签上触发 | 
 merge_requests_events  | 
boolean | no | 触发合并请求事件的钩子 | 
 repository_update_events  | 
boolean | no | 触发挂钩存储库更新事件 | 
 enable_ssl_verification  | 
boolean | no | 触发挂钩时执行 SSL 验证 | 
请求示例:
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/hooks?url=https://gitlab.example.com/hook" 
响应示例:
[  {  "id":1,  "url":"https://gitlab.example.com/hook",  "created_at":"2016-10-31T12:32:15.192Z",  "push_events":true,  "tag_push_events":false,  "merge_requests_events":  true,  "repository_update_events":  true,  "enable_ssl_verification":true  }  ] 
Test system hook
GET /hooks/:id 
| Attribute | Type | Required | Description | 
|---|---|---|---|
 id  | 
integer | yes | 钩子的 ID | 
请求示例:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/hooks/2" 
响应示例:
{  "project_id"  :  1,  "owner_email"  :  "example@gitlabhq.com",  "owner_name"  :  "Someone",  "name"  :  "Ruby",  "path"  :  "ruby",  "event_name"  :  "project_create"  } 
Delete system hook
删除系统挂钩.
DELETE /hooks/:id 
| Attribute | Type | Required | Description | 
|---|---|---|---|
 id  | 
integer | yes | 钩子的 ID | 
请求示例:
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/hooks/2"