Module: Legion::Extensions::Jira::Webhooks::Runners::Webhooks

Includes:
Helpers::Lex, Helpers::Client
Included in:
Client
Defined in:
lib/legion/extensions/jira/webhooks/runners/webhooks.rb

Instance Method Summary collapse

Methods included from Helpers::Client

#connection, #upload_connection

Instance Method Details

#delete_webhooks(webhook_ids:) ⇒ Object



24
25
26
27
28
29
# File 'lib/legion/extensions/jira/webhooks/runners/webhooks.rb', line 24

def delete_webhooks(webhook_ids:, **)
  resp = connection(**).delete('/rest/api/3/webhook') do |req|
    req.body = { webhookIds: webhook_ids }
  end
  { deleted: [200, 202, 204].include?(resp.status) }
end

#list_webhooks(start_at: 0, max_results: 100) ⇒ Object



13
14
15
16
17
# File 'lib/legion/extensions/jira/webhooks/runners/webhooks.rb', line 13

def list_webhooks(start_at: 0, max_results: 100, **)
  params = { startAt: start_at, maxResults: max_results }
  resp = connection(**).get('/rest/api/3/webhook', params)
  { webhooks: resp.body }
end

#refresh_webhooks(webhook_ids:) ⇒ Object



31
32
33
34
# File 'lib/legion/extensions/jira/webhooks/runners/webhooks.rb', line 31

def refresh_webhooks(webhook_ids:, **)
  resp = connection(**).put('/rest/api/3/webhook/refresh', { webhookIds: webhook_ids })
  { result: resp.body }
end

#register_webhooks(webhooks:, url:) ⇒ Object



19
20
21
22
# File 'lib/legion/extensions/jira/webhooks/runners/webhooks.rb', line 19

def register_webhooks(webhooks:, url:, **)
  resp = connection(**).post('/rest/api/3/webhook', { webhooks: webhooks, url: url })
  { result: resp.body }
end