Class: MetrifoxSDK::Subscriptions::API

Inherits:
BaseApi
  • Object
show all
Defined in:
lib/metrifox_sdk/subscriptions/api.rb

Instance Method Summary collapse

Instance Method Details

#billing_history_request(base_url, api_key, subscription_id) ⇒ Object



8
9
10
11
12
# File 'lib/metrifox_sdk/subscriptions/api.rb', line 8

def billing_history_request(base_url, api_key, subscription_id)
  uri = URI.join(base_url, "subscriptions/#{subscription_id}/billing-history")
  response = make_request(uri, "GET", api_key)
  parse_response(response, "Failed to Fetch Billing History")
end

#bulk_assign_plan_request(base_url, api_key, request_payload) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/metrifox_sdk/subscriptions/api.rb', line 26

def bulk_assign_plan_request(base_url, api_key, request_payload)
  uri = URI.join(base_url, "subscriptions/bulk-assign-plan")
  body = if request_payload.respond_to?(:to_h)
           request_payload.to_h.compact
         elsif request_payload.is_a?(Hash)
           request_payload.compact
         else
           raise ArgumentError, "Invalid request format"
         end
  response = make_request(uri, "POST", api_key, body)
  parse_response(response, "Failed to Bulk Assign Plan")
end

#entitlements_summary_request(base_url, api_key, subscription_id) ⇒ Object



14
15
16
17
18
# File 'lib/metrifox_sdk/subscriptions/api.rb', line 14

def entitlements_summary_request(base_url, api_key, subscription_id)
  uri = URI.join(base_url, "subscriptions/#{subscription_id}/v2/entitlements-summary")
  response = make_request(uri, "GET", api_key)
  parse_response(response, "Failed to Fetch Entitlements Summary")
end

#entitlements_usage_request(base_url, api_key, subscription_id) ⇒ Object



20
21
22
23
24
# File 'lib/metrifox_sdk/subscriptions/api.rb', line 20

def entitlements_usage_request(base_url, api_key, subscription_id)
  uri = URI.join(base_url, "subscriptions/#{subscription_id}/v2/entitlements-usage")
  response = make_request(uri, "GET", api_key)
  parse_response(response, "Failed to Fetch Entitlements Usage")
end