View Source Tentacat.Hooks (Tentacat v2.5.0)

The Repository Webhooks API allows repository admins to manage the post-receive hooks for a repository.

Summary

Functions

Create webhook for a repository.

Get a webhook for a repository by id.

Get a list of webhooks for a repository.

This will trigger a ping event to be sent to the hook.

Delete a repo's webhook by it's Id.

This will trigger the hook with the latest push to the current repository if the hook is subscribed to push events.

Functions

Link to this function

create(client, owner, repo, body)

View Source
@spec create(Tentacat.Client.t(), binary(), binary(), map()) :: Tentacat.response()

Create webhook for a repository.

Example

Tentacat.Hooks.create(client, "elixir-lang", "elixir", hook_body)

More info at: http://developer.github.com/v3/repos/hooks/#create-a-hook

Link to this function

find(client, owner, repo, hook_id)

View Source

Get a webhook for a repository by id.

Example

Tentacat.Hooks.find(client, "elixir-lang", "elixir", "1234567")

More info at: http://developer.github.com/v3/repos/hooks/#get-single-hook

Link to this function

list(client, owner, repo)

View Source

Get a list of webhooks for a repository.

Example

Tentacat.Hooks.list(client, "elixir-lang", "elixir")

More info at: http://developer.github.com/v3/repos/hooks/#list-hooks

Link to this function

ping(client, owner, repo, hook_id)

View Source

This will trigger a ping event to be sent to the hook.

Example

Tentacat.Hooks.ping(client, "elixir-lang", "elixir", "1234567")

More info at: http://developer.github.com/v3/repos/hooks/#ping-a-hook

Link to this function

remove(client, owner, repo, hook_id)

View Source
@spec remove(Tentacat.Client.t(), binary(), binary(), binary() | integer()) ::
  Tentacat.response()

Delete a repo's webhook by it's Id.

Example

Tentacat.Hooks.remove(client, "elixir-lang", "elixir", "1234567")

More info at: http://developer.github.com/v3/repos/hooks/#delete-a-hook

Link to this function

test(client, owner, repo, hook_id)

View Source

This will trigger the hook with the latest push to the current repository if the hook is subscribed to push events.

If the hook is not subscribed to push events, the server will respond with 204 but no test POST will be generated.

Example

Tentacat.Hooks.test(client, "elixir-lang", "elixir", "1234567")

More info at: http://developer.github.com/v3/repos/hooks/#test-a-push-hook

Link to this function

update(client, owner, repo, hook_id, body)

View Source
@spec update(Tentacat.Client.t(), binary(), binary(), binary() | integer(), map()) ::
  Tentacat.response()

Update a hook.

Update body example:

hook_body = %{
  "name" => "web",
  "active" => true,
  "events" => [ "push", "pull_request" ],
  "config" => {
    "url" => "http://example.com/webhook",
    "content_type" => "json"
  }
}

Example

Tentacat.Hooks.update(client, "elixir-lang", "elixir", "1234567", hook_body)

More info at: http://developer.github.com/v3/repos/hooks/#edit-a-hook