Class: Lago::Api::Client

Inherits:
Object
  • Object
show all
Defined in:
lib/lago/api/client.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(api_key: nil, api_url: nil, use_ingest_service: false, ingest_api_url: nil) ⇒ Client

Returns a new instance of Client.



42
43
44
45
46
47
# File 'lib/lago/api/client.rb', line 42

def initialize(api_key: nil, api_url: nil, use_ingest_service: false, ingest_api_url: nil)
  @api_key = api_key
  @api_url = api_url
  @use_ingest_service = use_ingest_service
  @ingest_api_url = ingest_api_url
end

Instance Attribute Details

#api_keyObject (readonly)

Returns the value of attribute api_key.



40
41
42
# File 'lib/lago/api/client.rb', line 40

def api_key
  @api_key
end

#api_urlObject (readonly)

Returns the value of attribute api_url.



40
41
42
# File 'lib/lago/api/client.rb', line 40

def api_url
  @api_url
end

#ingest_api_urlObject (readonly)

Returns the value of attribute ingest_api_url.



40
41
42
# File 'lib/lago/api/client.rb', line 40

def ingest_api_url
  @ingest_api_url
end

#use_ingest_serviceObject (readonly)

Returns the value of attribute use_ingest_service.



40
41
42
# File 'lib/lago/api/client.rb', line 40

def use_ingest_service
  @use_ingest_service
end

Instance Method Details

#activity_logsObject

Resources



63
64
65
# File 'lib/lago/api/client.rb', line 63

def activity_logs
  Resources::ActivityLog.new(self)
end

#add_onsObject



67
68
69
# File 'lib/lago/api/client.rb', line 67

def add_ons
  Resources::AddOn.new(self)
end

#api_logsObject



71
72
73
# File 'lib/lago/api/client.rb', line 71

def api_logs
  Resources::ApiLog.new(self)
end

#applied_couponsObject



75
76
77
# File 'lib/lago/api/client.rb', line 75

def applied_coupons
  Resources::AppliedCoupon.new(self)
end

#base_api_urlObject



49
50
51
52
53
# File 'lib/lago/api/client.rb', line 49

def base_api_url
  base_url = api_url.nil? ? Lago::Api::BASE_URL : api_url

  URI.join(base_url, Lago::Api::API_PATH)
end

#base_ingest_api_urlObject



55
56
57
58
59
60
# File 'lib/lago/api/client.rb', line 55

def base_ingest_api_url
  return base_api_url unless use_ingest_service

  ingest_url = ingest_api_url.nil? ? Lago::Api::BASE_INGEST_URL : ingest_api_url
  URI.join(ingest_url, Lago::Api::API_PATH)
end

#billable_metricsObject



79
80
81
# File 'lib/lago/api/client.rb', line 79

def billable_metrics
  Resources::BillableMetric.new(self)
end

#billing_entitiesObject



83
84
85
# File 'lib/lago/api/client.rb', line 83

def billing_entities
  Resources::BillingEntity.new(self)
end

#couponsObject



87
88
89
# File 'lib/lago/api/client.rb', line 87

def coupons
  Resources::Coupon.new(self)
end

#credit_notesObject



91
92
93
# File 'lib/lago/api/client.rb', line 91

def credit_notes
  Resources::CreditNote.new(self)
end

#customersObject



95
96
97
# File 'lib/lago/api/client.rb', line 95

def customers
  Resources::Customer.new(self)
end

#eventsObject



99
100
101
# File 'lib/lago/api/client.rb', line 99

def events
  Resources::Event.new(self)
end

#feesObject



103
104
105
# File 'lib/lago/api/client.rb', line 103

def fees
  Resources::Fee.new(self)
end

#gross_revenuesObject



107
108
109
# File 'lib/lago/api/client.rb', line 107

def gross_revenues
  Resources::GrossRevenue.new(self)
end

#invoice_collectionsObject



111
112
113
# File 'lib/lago/api/client.rb', line 111

def invoice_collections
  Resources::InvoiceCollection.new(self)
end

#invoiced_usagesObject



115
116
117
# File 'lib/lago/api/client.rb', line 115

def invoiced_usages
  Resources::InvoicedUsage.new(self)
end

#invoicesObject



119
120
121
# File 'lib/lago/api/client.rb', line 119

def invoices
  Resources::Invoice.new(self)
end

#mrrsObject



123
124
125
# File 'lib/lago/api/client.rb', line 123

def mrrs
  Resources::Mrr.new(self)
end

#organizationsObject



127
128
129
# File 'lib/lago/api/client.rb', line 127

def organizations
  Resources::Organization.new(self)
end

#overdue_balancesObject



131
132
133
# File 'lib/lago/api/client.rb', line 131

def overdue_balances
  Resources::OverdueBalance.new(self)
end

#payment_receiptsObject



135
136
137
# File 'lib/lago/api/client.rb', line 135

def payment_receipts
  Resources::PaymentReceipt.new(self)
end

#payment_requestsObject



139
140
141
# File 'lib/lago/api/client.rb', line 139

def payment_requests
  Resources::PaymentRequest.new(self)
end

#paymentsObject



143
144
145
# File 'lib/lago/api/client.rb', line 143

def payments
  Resources::Payment.new(self)
end

#plansObject



147
148
149
# File 'lib/lago/api/client.rb', line 147

def plans
  Resources::Plan.new(self)
end

#subscriptionsObject



151
152
153
# File 'lib/lago/api/client.rb', line 151

def subscriptions
  Resources::Subscription.new(self)
end

#taxesObject



155
156
157
# File 'lib/lago/api/client.rb', line 155

def taxes
  Resources::Tax.new(self)
end

#wallet_transactionsObject



159
160
161
# File 'lib/lago/api/client.rb', line 159

def wallet_transactions
  Resources::WalletTransaction.new(self)
end

#walletsObject



163
164
165
# File 'lib/lago/api/client.rb', line 163

def wallets
  Resources::Wallet.new(self)
end

#webhook_endpointsObject



167
168
169
# File 'lib/lago/api/client.rb', line 167

def webhook_endpoints
  Resources::WebhookEndpoint.new(self)
end

#webhooksObject



171
172
173
# File 'lib/lago/api/client.rb', line 171

def webhooks
  Resources::Webhook.new(self)
end