System hooks

All methods require admin authorization.

The URL endpoint of the system hooks can be configured in the admin area under hooks.

List system hooks

Get list of system hooks

GET /hooks

Parameters:

  • none
[
  {
    "id": 3,
    "url": "http://example.com/hook",
    "created_at": "2013-10-02T10:15:31Z"
  }
]

Add new system hook hook

POST /hooks

Parameters:

  • url (required) - The hook URL

Test system hook

GET /hooks/:id

Parameters:

  • id (required) - The ID of hook
{
  "event_name": "project_create",
  "name": "Ruby",
  "path": "ruby",
  "project_id": 1,
  "owner_name": "Someone",
  "owner_email": "example@gitlabhq.com"
}

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 it is also returned as JSON.

DELETE /hooks/:id

Parameters:

  • id (required) - The ID of hook