Class: Pinnacle::Webhooks::Client
- Inherits:
-
Object
- Object
- Pinnacle::Webhooks::Client
- Defined in:
- lib/pinnacle/webhooks/client.rb
Instance Method Summary collapse
-
#get(request_options: {}, **params) ⇒ Pinnacle::Types::WebhookResult
Retrieve all webhook that are set up to receive events for specific URLs or phone numbers.
- #initialize(client:) ⇒ void constructor
Constructor Details
#initialize(client:) ⇒ void
9 10 11 |
# File 'lib/pinnacle/webhooks/client.rb', line 9 def initialize(client:) @client = client end |
Instance Method Details
#get(request_options: {}, **params) ⇒ Pinnacle::Types::WebhookResult
Retrieve all webhook that are set up to receive events for specific URLs or phone numbers.
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/pinnacle/webhooks/client.rb', line 24 def get(request_options: {}, **params) params = Pinnacle::Internal::Types::Utils.normalize_keys(params) body_prop_names = i[identifiers] body_bag = params.slice(*body_prop_names) request = Pinnacle::Internal::JSON::Request.new( base_url: [:base_url], method: "POST", path: "webhooks", body: Pinnacle::Webhooks::Types::GetWebhookParams.new(body_bag).to_h, request_options: ) begin response = @client.send(request) rescue Net::HTTPRequestTimeout raise Pinnacle::Errors::TimeoutError end code = response.code.to_i if code.between?(200, 299) Pinnacle::Types::WebhookResult.load(response.body) else error_class = Pinnacle::Errors::ResponseError.subclass_for_code(code) raise error_class.new(response.body, code: code) end end |